Atmel µC per USB programmieren

Gast #282217
Lesenswert?
• ▲
▼
Ich programmier gerade den AT89C5131 von Atmel.

An und für sich ein guter Chip und er lässt sich wunderbar mit der
kostenlosen Software FLIP über USB programmieren.

Aber die USB Funktion auf den Chip selbst in Assembler zu
programmieren, daran beiß ich mir momentan die Zähne aus...

Glücklicherweise lässt der Chip sich endlos oft reprogrammieren....
Gast #282218
Lesenswert?
• ▲
▼
Nochmal ich....

Ich hab oben die E-Mailadresse falsch angegeben.


Falls es Leidensgenossen mit dem AT89C5131 da draußen gibt:

Meldet euch! Vielleicht kann ich euch helfen...

Falls mir jemand mit der USB Sache bei den Atmel Chips helfen kann:

Um Gottes Willen, Melde dich!!!!
Gast #282219
Lesenswert?
• ▲
▼
Ich beschreibe mal wie ich das vor einiger Zeit via IAP und USB Chip
gemacht habe:

Ich habe zwei Firmware Module geschrieben.
Ein Bootloader von 0...07FFh der sich natürlich nicht per USB
updaten lies und ein App Modul ab 0800h.
Der Loader beherschte 2 VendorRequests IAPGet und IAPSet.
Etwas trickreich ist in diesem Fall die Interuptvektor Tabelle.
Eine einfache Weiterleitung in den App Bereich geht nicht da die
App ja u.U. noch nicht da ist. Ich habe das dann mit einem prog.
Vektor über den Stack gemacht allerdings nur für Interrupts die
sowohl im Bootloader als auch im App Modul gebraucht wurden.
Der Bootloader habe via Flip geflashed (AT89C51RB2)

Das Teil ist mehrere tausend mal im Einsatz. Ich hatte nur
ein paar verflashte Controller weil der Bestücker einmal
den RD2 verwendet hat, der nicht 100% kompatibel im IAP war.
Ich hatte das nie getestet und auch nicht freigegeben...

Generell sollte dieses Verfahren mit jedem IAP fähigen
Controller funktionieren. Bei anderen Herstellern muss
man halt ev. auf die Flash Segmentierung achten.

Einen Nachteil hat meine Lösung:
jeder dyn. Vektor braucht ein par Zyklen länger bis der
Interrupt angenommen wird und ich brauche jeweils 2 Bytes
im DMEM.

Thomas
Gast #282220
Lesenswert?
• ▲
▼
@Rufus
der Cypress Chip kann zwar seine FW via Treiber über den
USB Bus bekommen ich halte dieses Verfahren allerdings nicht
für sehr gelungen. (2 PnP Events, Treiberupdates bei FW
Änderungen, Sicherheitsaspekte)
Besser man bootet den Chip aus dem EEprom und macht das
FW Update selbst.

Thomas
Gast #282221
Lesenswert?
• ▲
▼
Auf die Gefahr hin das die meisten es bereits wissen,
aber Atmel hat vor knapp einer Woche AVR und 8051 kompatible Controller
mit integriertem USB angekündigt.
Diese sollen sich auch problemlos über USB programmieren lassen.
Verfügbar sind die Controller angeblich bereits, bei den Distributoren
geht man aber davon aus dass es noch 3-4 Wochen dauern wird bis sie
hier lieferbar sind.

Es soll zwei verschiedene Typen geben einen mit Funktion als normales
USB-Device und einen mit USB-Host Controller.

http://www.atmel.com/dyn/products/product_card.asp?part_id=3874
http://www.atmel.com/dyn/products/product_card.asp?part_id=3875

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.