Bootloader für ATMEGA32, BASCOM/LUNA, RS-485

  • Hallo,


    ich beschäftige mich derzeit mit dem Eigenbau eines fernsteuerbaren Antennkopplers, der mit einem Atmega32 ausgestattet sein wird. Aufgrund der niedrigen Geschwindigkeits-Anforderungen an die Kommunikation zwischen PC und µC habe ich mich für eine robuste RS-485-Schnittstelle entschieden, die mit 2 Adern im Halbduplexbetrieb arbeiten soll.


    In einem Testaufbau habe ich alle grundlegenden Programmfunktionen im Atmega32 erfolgreich getestet – und wollte als „Sahnehäubchen“ zum Schluß noch eine Bootloader-Funktion ergänzen, die eine Fernprogrammierung über die ohnehin vorhandene serielle Schnittstelle ermöglicht. Damit falle ich nun auf die Nase, weil alle mir bekannten Bootloader-Programme leider eine Vollduplex-Funktionalität der seriellen Schnittstelle voraussetzen.


    Für die Programmierung des µC habe ich BASCOM verwendet. In der Freeware-Version bekommt man die Bootloader-Software leider nicht geladen, so daß ich auf LUNA umgeschwenkt bin. Dort gibt es auch einen Programmvorschlag für einen Bootloader - die Halbduplex-Problematik ist damit natürlich auch nicht gelöst.


    Deshalb frage ich die Forumsleser, ob jemand diese Problematik schon mal bewältigt hat oder mir Hinweise geben kann, wie man das hinkriegt. Im Antennenkoppler soll ein RS-485-Transceiver vom Typ 75176 eingesetzt werden, der in der eigentlichen Applikation über einen Binärausgang des µC zwischen Empfangen und Senden hin- und hergeschaltet wird.


    73 de Gerd, DF9XS

  • Hallo Uwe,


    herzlichen Dank für Deine schnelle Antwort.


    Dennoch stehen mir die Haare zu Berge, denn ich komme mit den Informationen, auf die Du verweist, einfach nicht zurecht. Egal, ob nun in Assembler oder C programmiert, ich bin mit dieser Materie nicht vertraut und komme in einer vertretbaren Zeit voraussichtlich nicht zu einer funktionierenden Lösung.


    Meine Frage: Wenn ich mit meiner Applikation schon auf LUNA umschalte, in dieser Hochsprachen-Programmier-Umgebung einen fertigen Bootloader (für Duplex-Betrieb) finde – ist es dann nicht naheliegend, DEN zu modifizieren?


    Vielleicht denke ich ein wenig zu simpel: Im Normalfall (Duplex-Schnittstelle) kann das Bootloader-Programm im µC seine Informationen (Quittierungen) an den PC einfach losschicken. Bei mir klappt das nicht, weil der der RS-485-Transceiver im Antennenkoppler (per Programm) jedes Mal erst auf Sendung geschaltet werden müsste.


    Wenn man also im vorgenannten Bootloader


    - die Schreibkommandos (vom µC an den PC) ausfindig macht


    - VOR diesen Kommandos jeweils eine Zeile einfügt, die auf Sendung schaltet


    - NACH diesen Kommandos jeweils eine Zeile einfügt, die wieder auf Empfang schaltet


    müsste das nicht funktionieren???



    73 de Gerd, DF9XS

    Einmal editiert, zuletzt von DF9XS ()