TACH! also arbeite hier an boards die mal mit nem ATMEGA 128 bestückt waren (es geht erstmal um die inbetriebnahme // und nen OS zu progn. mit Treiber für Ethernet und RS232 Schnittstellen) Laut AVR sind die beiden uC pinkompatibel .. also zumindest prinzipell funktionieren müsste es die auszutauschen und dann mit kleinen veränderungen im code irgendwas zu laufen zu kriegen, bloß in den 2561 geht jetzt gar nix mehr. krieg nicht mal nen Pin zum toggeln . zur kompatibilität: http://www.atmel.com/dyn/resources/prod_documents/doc2581.pdf Takt ist da, Fuseeinstellungen müssten passen ... ein board ist noch mit nem 128 bestückt, da funktioniert alles ... mir fällt nix mehr ein was das problem sein könnte : hab die AVR checkliste hier von der Site auch mehrmals durchgespielt, mit oszi gemessen . (hab auch mehrere boards hier _ eher unwarscheinlich das alle 2561 uC defekt sind in irgend einer form.) kann das irgendwie mit dem bootloader zusammenhängen das der nicht an die richtige Appl.Startadresse springt und sich irgendwo verhängt. vll hat jmd erfahrung mit dem Controlleraustausch und den verbunden Problemen. danke schonmal im vorraus!!!!
Beim kopmpilieren des Quellcodes den Controllertyp eingestellt?
ja schon .. dises mcu. schreibe in C. hab keine ahnung von diesem ganzen make(file) zeug ... aber weiß nicht wie ich anders zu nem ganz einfachen programm komme , da benutz ich jetzt ein anderes projekt mit makefile. hab alles auskommentiert bis auf main() und dort so ein paar ein paar pinansteuerungen >> quelltext stimmt. könnte das ja manuell machen per komandozeile compilieren und linken .. aber hab da auch nich so richtig ahnung. nicht das dieses make nicht das macht was es soll... im simulator (AVR studio) läufts aber. der code steht eher so in der mitte des Flashspeicherbereichs davor alles 0xFFFF-anweisungen. beim simulieren macht der erstmal irgendwas (pointerreg. hochzählern oder so ) aber dann kommt er irgendwann in diese schleife wo die Ports invertiert werden. jmd ne bessere idee wie ich den uC testen kann ? DDRxn hab ich gesetzt. ich krieg ne kriese hier !
.inc"...def.inc" ?? was soll das bitte sein ?
sowas muss doch zum testen reichen:
1 | |
2 | #define __AVR_ATmega2561__ // oder im makefile definieren
|
3 | #include<avr/io.h> |
4 | |
5 | void main() |
6 | { int i; |
7 | |
8 | |
9 | DDRA = 0xFF; //DataDirektionReg. auf OutputPin |
10 | DDRB = 0xFF; |
11 | DDRC = 0xFF; |
12 | DDRD = 0xFF; |
13 | DDRE = 0xFF; |
14 | |
15 | PORTA=0x00; // feste konst. Belegung |
16 | PORTB=0xFF; |
17 | PORTC=0xFF; |
18 | |
19 | for (i = 0;; i++) |
20 | {
|
21 | PORTD^=0xFF; //toggle -Pins |
22 | PORTE^=0xFF; |
23 | }
|
24 | |
25 | }
|
die uC machen aber nix , wenn ich mit oszi messe .
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.