Ik ben begonnen met het programmeren van een microcontroller. Ik heb nog niet eerder in c geprogrammeerd, wel in andere (hogere) programmeertalen.
De chip die ik dus gebruik is een ATmega32
als programmer de AVR Dragon
Testen doe ik door te simuleren met AVR studio in combinatie met hapsim
Ik heb het volgende (heel simpele) programma geschreven
Met testen laat hapsim mooi zien dat poort 1 en 2 om de beurt hoog worden.
Maar als ik dit run op de ATmega32 gebeurt er niks.
Ik heb een ander programma (waarvan ik de code zelf nog niet echt begrijp) geprobeerd en dan komt er wel spanning op poort 1 en 2 te staan. Dus het compilen en runnen op de ATmega32 lukt wel.
Wat zie ik over het hoofd?
De chip die ik dus gebruik is een ATmega32
als programmer de AVR Dragon
Testen doe ik door te simuleren met AVR studio in combinatie met hapsim
Ik heb het volgende (heel simpele) programma geschreven
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| #include <avr/io.h> #include <util/delay.h> int main() { while (1) { PORTA |= (1 << PA0); PORTA &= ~(1 <<PA1); _delay_ms(50); PORTA &= ~(1 <<PA0); PORTA |= (1 << PA1); _delay_ms(50); } return 0; } |
Met testen laat hapsim mooi zien dat poort 1 en 2 om de beurt hoog worden.
Maar als ik dit run op de ATmega32 gebeurt er niks.
Ik heb een ander programma (waarvan ik de code zelf nog niet echt begrijp) geprobeerd en dan komt er wel spanning op poort 1 en 2 te staan. Dus het compilen en runnen op de ATmega32 lukt wel.
Wat zie ik over het hoofd?