Hi, ich bastel mal wieder an einer Kleinigkeit rum. Es ist ein Atmega168 mit ein bissl Display und Tasterzeugs drum rum in einem Gehäuse. Ich habe auch eine Programmierbuchse mit eingebaut in die ich meinen Programmer stöpseln kann. Wenn ich nun alles soweit programmiert habe, habe ich mir gedacht, könnte ich diese Buchse ja für InfozweckeAusgaben als RS232 nutzen. Jetzt kam mir in den Kopf die Leitungen doppelt zu nutzen und dazu habe ich 2 Fragen: 1) kann das so gehen, also dass ich diese Verbindungen so am Atmega dauerhaft anbringe? Ich hoffe das es während der Programmierung nicht stört, da ich davon ausgehe dass alle anderen Pins eh hochohmig sind, und während der normalen Nutzung schalte ich die entsprechenden SPI Pins dann hochohmig. 2) Ich habe das mal für einen Atmega128 gemacht, nur das man dort gleich sowieso zur Programmierung mit dem ISP die RS232 Pins (RXD und TXD) nutzen muss, und nicht die SPI Pins, warum auch immer... Ich würde das ganze gern funktionskompatibel haben, deswegen meine Frage, ist MISO am Atmega168 ein Dateneingang oder Datenausgang während der Programmierphase (Master In Slave Out) ich gehe mal davon aus dass der Chip während der Programierung der Slave ist, dann müsste es also der Datenausgang des Chips sein...So wie ich das sehe ist TXD beim Atmega128 ja auch der Datenausgang des Atmegas128 während der Programmierphase...Demnach sollte das auf meiner Zeichnung richtungsrichtig verbunden sein, sodass ich den Adapter (RS232 Wandler) auch für ein späteres Atmega128 Projekt nutzen könnte, oder? Gruß, Thorsten
Hi, schau mal beim Atmega128 auf seite 80, da steht: PE1 PDO/TXD0 (Programming Data Output or UART0 Transmit Pin) PE0 PDI/RXD0 (Programming Data Input or UART0 Receive Pin) Gruß, H.
Thorsten S. schrieb: > 1) kann das so gehen, also dass ich diese Verbindungen so am Atmega > dauerhaft anbringe? Ich hoffe das es während der Programmierung nicht > stört, da ich davon ausgehe dass alle anderen Pins eh hochohmig sind, > und während der normalen Nutzung schalte ich die entsprechenden SPI Pins > dann hochohmig. Du könntest auch Multiplexer oder HC125/HC126 nehmen und zwischen ISP und UART hin- und herschalten. Die Umschaltung machst Du mit /RESET. Nur wenn /RESET low ist, ist auch ISP aktiv, bei /RESET high läuft der Prozessor, und die UART-Pins sind aktiv. So kannst Du das SPI auch für andere Dinge noch verwenden. Ich mache das ganz gerne mit HC125/HC126. Das sind Puffer mit Enable, wobei bei einem das enable aktiv high ist und beim anderen aktiv low. fchk
Warum programmierst du deinen µC nicht direkt per Bootloader über die RS232. Das spart irgendwelche Umschaltereien und den Programmer. MfG
Michel schrieb: > Warum programmierst du deinen µC nicht direkt per Bootloader über die > RS232. Das spart irgendwelche Umschaltereien und den Programmer. Und wo bekommst Du die mit Deinem Bootloader programmierten Controller her? Was machst Du bei einem zerschossenen Bootloader? Ach ja, ich weiß: ein dummes Gesicht. Mann, ein HC125/HC126-Pärchen liegt im Centbereich. Das lohnt nicht, sich da irgendeinen großen Kopf drum zu machen. fchk
Hey, danke für die Antworten. Ich habe in dem Gerät eine Buchse mit 6 Pins, das ist alles festgelegt, da kann ich leider keine 2 mehr hinzufügen. Danke für den Tip mit den Gattern, für den Fall das es nicht geht, habe ich schon etwas im Gepäck, ich denke ich werde das morgen einfach mal mit gebrückten Pins versuchen... :-) Bootloader passt nicht mehr rein... Danke für die Infos zum Atmega128, dort steht klar was im Programmierfall RX und was TX ist, aber wie ist das beim SPI Programmieren, was ist die Datenleitung aus dem Programmer raus, und welche führt rein? Wer ist Master, wer ist Slave? MISO MOSI... ?Wenn der Programmer im Programmierfall Master ist, was mir logisch scheint, dann wäre MISO am uc doch datenausgang, oder? Gruß, T.
Hannes schrieb: > Beitrag "Programmierung von ATmega128" > > Datenblatt Atmega128 Seite 300. > > H. Das weiß ner selbst, es geht nicht um den Mega128 sondern um den Mega168! Der Programmer ist Master, der AVR ist Slave. MOSI am AVR ist Eingang, MISO am AVR ist Ausgang. Ist auch im Datenblatt (doc2545.pdf) im Kapitel Serial Downloading in Figure 27-7 auf Seite 297 nachzulesen. ...
Hi zusammen, habe das jetzt ausgetestet. Die "Parallelschaltung" von Mosi B3 & RX D0 sowie Miso B4 mit TX D1 ist kein Problem beim Programmieren. Man kann sogar einen Max232 dauerhaft mit dran hängen, es stört nicht bei der Programmierung mit MKII. So bekommt man also über einen Stecker 2 Schnittstellen (SPI zum Programmieren) und (232 zum Kommunizieren) über die gleichen Pins aus dem Gerät. Man kann also zum Programmieren den Programmer dran hängen und später Rs232 Kommunikation machen. Gruß, T.S.
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.