Atmega16-16AU

OP #3073930
Lesenswert?

So, hallo wieder einmal. Ich habe eine Platine gefertigt, und wollte 
diese gerade testen.
In Verwendung ist der im Betreff genannte Atmega16-16AU -TQFP44

http://at.farnell.com/jsp/search/productdetail.jsp?sku=1528422&CMP=KNC-GAT-FAT-GEN-SKU-SEP-ATMEL-ICC&mckv=sLG204RjM|pcrid|21723763587|kword|atmega16-16au|match|p|plid|

Ich versuche gerade zu Testzwecken den gesamten PORTC zu invertieren.
Programm schaut folgerndermaßen aus:
1
#include <stdbool.h> 
2
#include <avr/io.h>
3
#include <avr/interrupt.h>
4
#include <D:\Projekt\_AVR\_Bibliotheken\delay.h>
5

6

7
int main(void)
8
{  DDRC |= 0xff;
9
  while(1)
10
  {
11
    PORTC = 0x00;
12
    _delay_ms(10);
13
    PORTC = 0xff;
14
    _delay_ms(10);
15
  }
16
}


ich weiß dass das absolut nicht schön programmiert ist, aber es sollte 
eigentlich alle 10ms den gesamten PORTC invertieren.

Passieren tut aber nur, dass laut Datenblatt PC0,PC1,PC6 und PC7 das tun 
was sie tun sollen. Die restlichen Pins sind auf 5V.
Kann das sein dass ich den falschen yC ausgewählt habe beim Flashen?
Ausgewählt wäre der ATmega16

Würde mich sehr über eure Hilfe freuen,
lg
Groebar
OP #3074005
Lesenswert?

Jaaaaaa, genau :D
Vielen Vielen Dank!

Wär ich von selber nie drauf gekommen!

Vielleicht noch für Re-Leser:

PORT geht nicht, PC2 PC3 PC4 PC5 geht nicht, JTAG ausschalten.

JTAG siehe Atmega Datenblatt 231
1
  MCUCSR |= (1<<JTD);
2
  MCUCSR |= (1<<JTD);
3
//MUSS!! zweimal geschrieben werden, siehe Datenblatt

Oder sonst geht es über die Fuses auch!


Lg, und Vielen Dank noch einmal!

Groebar

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren