LaserFreak Forum
besoin d'aide programmation C atmega16
Moderatoren: dj_richu, Moderator (French Zone)
- dj_richu
- Beiträge: 2288
- Registriert: So 30 Apr, 2006 11:01 am
- Do you already have Laser-Equipment?: 1,2W RGB dpss/diodes + terascan
Pangolin PRO - LD2000 - Showtime
Live!Pro
QuickShow - Wohnort: Paris
besoin d'aide programmation C atmega16
Hello,
a tous ceux ayant des notions de C et surtout qui connaissent l'uc atmega16 de chez atmel, j ai besoin de votre aide a tout prix!!
je dois réaliser la chose suivante:
1 capteur de temperature (schematisé par une tension variable), qui sera branché sur le port ADC0 du microcontroleur.
Port B: 8 led qui s allumeront progressivement en fonction de la température (en fonction de la tension en ADC0).
J ai absolument besoin d aide au plus vite... c est pour un projet noté...
Merci à tous ceux qui pourront m aider!
a tous ceux ayant des notions de C et surtout qui connaissent l'uc atmega16 de chez atmel, j ai besoin de votre aide a tout prix!!
je dois réaliser la chose suivante:
1 capteur de temperature (schematisé par une tension variable), qui sera branché sur le port ADC0 du microcontroleur.
Port B: 8 led qui s allumeront progressivement en fonction de la température (en fonction de la tension en ADC0).
J ai absolument besoin d aide au plus vite... c est pour un projet noté...
Merci à tous ceux qui pourront m aider!
Gentil modérateur à mes heures perdues
- shrad
- Beiträge: 4009
- Registriert: Mi 28 Feb, 2007 12:59 pm
- Do you already have Laser-Equipment?: http://www.rp-photonics.com/topics.html
- Wohnort: Tournai, Belgium
pas eu l'occasion de te le dire sur msn ^^
http://microcontrollershop.com/product_ ... cts_id=185
pour le compilateur C (surement livre avec les librairies)
et
http://microcontrollershop.com/product_ ... cts_id=352
pour le compilateur basic, surement avec les librairies aussi
et il doit y avoir plein de tutos
ces compilateurs sont limites a 4Ko de code apres expiration de la demo ce qui reste largement suffisant
basiquement, il suffit de regler les parametres du convertisseur A/D (reference de tension interne, etc..) en debut de programme (ainsi que parametrer l'horloge ou autres si necessaire), puis de faire une boucle infinie qui lache la valeur mesuree sur le portB
avec peut etre besoin d'une fonction genre "waitforADC()" avant de sortir la valeur
ca va sans dire que c'est le principe et que je ne connais pas les arcanes des atmel, mais ca devrait etre valable
http://microcontrollershop.com/product_ ... cts_id=185
pour le compilateur C (surement livre avec les librairies)
et
http://microcontrollershop.com/product_ ... cts_id=352
pour le compilateur basic, surement avec les librairies aussi
et il doit y avoir plein de tutos
ces compilateurs sont limites a 4Ko de code apres expiration de la demo ce qui reste largement suffisant
basiquement, il suffit de regler les parametres du convertisseur A/D (reference de tension interne, etc..) en debut de programme (ainsi que parametrer l'horloge ou autres si necessaire), puis de faire une boucle infinie qui lache la valeur mesuree sur le portB
Code: Alles auswählen
while(1)
{
PortB = ADC0value;
}
ca va sans dire que c'est le principe et que je ne connais pas les arcanes des atmel, mais ca devrait etre valable
- biduleohm
- Beiträge: 703
- Registriert: Sa 31 Mär, 2007 10:28 pm
- Do you already have Laser-Equipment?: DPSS 532nm
- Wohnort: Fontenay-Trésigny 77
- Kontaktdaten:
je pense à une boucle qui prend la valeur de la T° avec 8 conditions qui allument chacune une led de plus
Par ex:
edit: grilled
Par ex:
Code: Alles auswählen
while(1)
{
prend la valeur sur le port a;
if(10 < T && T < 15)
{
envoi telle valeur sur le port b
}
if(.....)
{
.....
}
......
}
edit: grilled
- shrad
- Beiträge: 4009
- Registriert: Mi 28 Feb, 2007 12:59 pm
- Do you already have Laser-Equipment?: http://www.rp-photonics.com/topics.html
- Wohnort: Tournai, Belgium
si on a un LM35 par exemple qui donne 10mV par °C et que dans sa datasheet il a disons 0mV pour 0°C, il suffit de soustraire ton minimum a la valeur mesuree, pour que la valeur binaire minimum du portB soit de 00000000
apres, choisir un coefficient multiplicateur pour que ta valeur max soit a 255, c-a-d 11111111 sur le portB
apres, choisir un coefficient multiplicateur pour que ta valeur max soit a 255, c-a-d 11111111 sur le portB
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste