PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Schon wieder USB>AVR



BlackDevil
26.06.2008, 13:34
Servus,

Ich find den alten Thread nicht mehr - sonst würde ich da weiter Posten. In der Aktuellen Elektor sind mir 2 dinge aufgefallen:

FT232R USB UART IC
Vinculum VNC1L (www.vinculum.com) USB Host Controller


Wäre mit einem der Chips ein USB Programmer möglich der das Henne Ei Problem endlich löst? Ersterer ist ja ein USB|TTL Wandler mit UART ..


Grüße

Jaecko
26.06.2008, 14:24
Mit dem FTDI könnte man nen AVR per UART programmieren; dazu braucht der AVR seinerseits aber erst nen Bootloader... und der muss natürlich erst mal auch so draufkommen...

Den einzigen Programmer, den ich kenn, der nicht programmiert werden muss, ist einer für den Parallelport mit nem 74HC244.
Ich meine mich zu erinnern, dass einer der FTDIs auch nen Parallel-Mode unterstützt... evtl kann man ja da was kombinieren; die FTDIs lassen sich zum Glück per MProg (Software vom Hersteller) leicht umprogrammieren.

BlackDevil
26.06.2008, 15:58
Verdammte Axt ... Abgesehen davon das ich kein Board finde das mir zusagt, finde ich darüber hinaus nicht mal eine brauchbare Günstige SelfMade Lösung für USB ...

Das ist echt Ärgerlich! ...

Besserwessi
26.06.2008, 16:38
Man kan den FT232R wohl dazu bringen als sehr langsamer ISP programmiere zu funktionieren. Das Wäre aber nur was um das Henne-Ei Problem zu lösen, mehr wohl nicht.
Der VNCL1 müßte wohl auch noch erst progrmmiert werden, und ist außerdem relativ teuer.
Ein Alternative wär der FT2232, da gibt es auf der FTDI Homepage Software für eine SPI Schanitstelle mit brauchbarer Geschwindigkeit. Das könnte also einen brauchbaren ISP Programmiere abgeben, wenn die Software am PC findet oder umschreibt.

BlackDevil
26.06.2008, 19:22
Ja das hatten wir ja schonmal. Nur mit Begrenztem Budget und Wissen über die Atmegas bin ich nicht bereit hier Experimente einzugehen. Muss ich also entweder jemanden finden der mir einen Mega Programmiert ODER ich kaufe einen fertigen Programmer. Oder ich find, oh wunder, ein Fertiges Board das leistbar ist :-D

Besserwessi
26.06.2008, 19:51
Als fertiges Board gint es z.B. den Atmel Butterfly. Der hat einen Bootloader drauf und geht daher mit einem USB-RS232 Konverter. Liegt bei ca. 30 EUR.

BlackDevil
26.06.2008, 20:10
Hat aber, leider, keinen Mega32 und ich möchte eigentlich schon gerne mit dem Großen Einsteigen ... bisserl Grundwissen ist ja vorhanden und wächst mit jedem Tag in der Uni :)

nowayback
26.06.2008, 20:56
https://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=381840&sid=cfd61cc9790685e8fde3581ca3a7922f#381840?

BlackDevil
26.06.2008, 21:17
Das ist mir bekannt, gibt einige Henne Ei Problem ISPs ... un da der nich viel Größer als der USB Port sein soll (siehe Link) geht nix über SMD. Nur wer flasht mir das? ;)

nowayback
26.06.2008, 23:22
Das ist doch bereits geflasht?!
Oder willst du ihn selber flashen um dein Henne-Ei-Spiel zu lösen?
Übrigens kannst du auch den SMD-Chip auf dem Programmer selbst via USB flashen, allerdings sind halt die Bootloader schon onboard.

BlackDevil
27.06.2008, 07:02
Aber auf dem Butterfly ist doch ein Mega8 - oder bin ich in Irrglauben?

Besserwessi
27.06.2008, 15:28
Der Butterfly hat einen Mega169. Ist also schon eher mehr als der Mega 8.

BlackDevil
27.06.2008, 15:47
OH ok, wieder was gelernt. Ist aber trotzdem nicht das was ich suche.

Naja, ich werd schon irgendwie fündig werden, wenn nicht Simulier ich weiter mit AVR Studio *g+

BlackDevil
28.06.2008, 09:13
So ich bin's wieder


Eben bei Robotikhardware Gesurft und bin, neben dem BASCOM USB ISP mit wenig Positiver Kritik zur universibilität, auf
http://www.shop.robotikhardware.de/shop/catalog/images/rs232usb.jpg

Gestoßen. Das klingt für mich nach einem normalen RS232 USB Adapter was angeblich nich funzt ... Ich glaub aber nich das die was Verkaufen was nich tut, oder?

drew
29.06.2008, 21:33
Hallo,
ich hab einen Schaltplan für einen Programmer mit dem FT245 und eine kleine Beschreibung dafür gemacht:
http://www.hic-net.de/projekte/usb_wackler/spezifikation.html
Leider hab ich's bis jetzt noch nicht aufgebaut. Das ist leider auch nicht ganz einfach, mit der SMD-Zeug.
Daß das zu langsam wird glaube ich gar nicht. Laut Datenblatt brauch ich nur ein par ns pro Bit. Kann mir jemand sagen, wieviel Bit ich übertragen muss um ein Byte zu programmieren?
Git es eine Dokumentation für die Programmieralgorrythmen über SPI? Bis jetzt hab ich noch nichts gefunden.

Der FT2232 hab ich mir auch mal angeschaut. Das schaut auch sehr interessant aus, ist aber wieder etwas teurer. Ansonsten ist das ein echtes Zauber-Ding!

Drew

Besserwessi
29.06.2008, 22:28
Um ein Byte zu übertragen braucht man 16 verschieden Ausgangszustände hintereinander (High und low Phase des taktes). Das Senden sollte dabei noch einigermaßen gehen, langsamer dürfte vor allem das Daten Empfangen sein.
Da wird man eventuell für jedes Bit ein ganzes Datenpaket über den USB lesen müssen. Das macht dann rund 2000 Bytes lesen für 1 byte Nutzdaten. Dazu kommen dann noch die Latenzzeiten bis daten wirklich geschickt werden. Wenn man Pech hat muß man dann auch noch ähnlich viel an Daten rüberschicken. Ein Beschreibung der Programmierung sollte man z.B. in der Documentaion oder im Code von AVRDude finden.

BlackDevil
30.06.2008, 07:46
Öhmpf also Empfangen seh ich jetz nich so Kritisch, und Programmieren... nuja mir isses egal ob ich ne Minute da sitz und warte bis alles dort ist. Im zweifelsfall kann man immer noch nen Mega8 mit der Langsamen Tüte Flashen und mit dem FTDI und dem Mega8 was Zaubern ;)

Der USB Wackler wäre mit den 232 von FTDI einfacher gestrickt, brauchst kein EEProm oder sonst irgendwas, die Grundbeschaltung auf TTL sollte reichen.

Was ich mich frage: Wenn ich USB nach RS232 Wandel und das mit dem Max232 wieder nach TTL - warum sollte das nicht funzen? Bzw die Max232 Variante mit einem USB>RS232 Wandler?

drew
30.06.2008, 13:17
Hallo,
das mit dem Pegelwandler direkt von RS232 geht leider nicht, weil: bei dem ISP-Zeig brauch ich mehrere Leitungen parallel: Clk, SDO, SDI. Außerdem gibt es bei RS232 noch Start- und Stopbits. die bei der ISP-Sache stören.

Um ein Byte zu übertragen brauch ich eventuell sogar noch mehr als 16 Ausgangszustände. Clk High; Daten-Bit anlegen; Clk Low (um die Daten zu übernehmen). Dann geht es weiter mit dem nächsten Bit...
(Ich bin mir nicht sicher, ob Daten mit steigender oder fallender Flanke übernommen werden.)
Ich meine, dass ich noch ein Kommando mit übertragen muss. Also: "Ich will schreiben" und dann die Daten. Da kommt ja nochmal einen zeitlicher Offset dazu.
Mit dem Timing auf meiner Seite brauch ich ca. 200ns bis ich ein Zustand im Ausgangsregister hab. Damit ich auf der sicheren Seite bin, rechne ich mit 1us das sind also 3us für ein Bit und damit 24us für ein Byte.
1 kByte Daten sollten also in 1024*24us=24,567ms. (Hört sich für mich nicht wirklich realistisch an. Aber so ganz falsch kann's nicht sein, oder?)

Ich schau mal, ob ich nicht noch eine genauere Beschreibung des Protokolls finde...

Drew

BlackDevil
30.06.2008, 16:25
HAt nicht jemand zufällig einen USB<>RS232 Adapter daheim + Rs232 Board und mag mit AVR Dude testen obs funzt?

uffi
11.07.2008, 08:51
Warum nimmst Du nicht einen AT90USB1287 oder AT90USB647?
Der hat eine USB Schnittstelle und der Bootloader ist schon fabseitig aufgespielt.
Mit Flip (von der Atmel Homepage) kann man den Controller dann direkt über USB programmieren.

BlackDevil
11.07.2008, 12:58
Wenn die mind. genauso Leistungsstark und schön Programmierbar sind wie die Mega32 hab ich da nichts dagegen ^^

Andererseits: warum nicht mal eben mit RS232<>Usb Konverter Testen?


Edit: Wie ich sehe ist das ein 8bit Chip ... hm .. un so wie ich das sehe mit RISC oder ARM Architektur, also komplett was anders als der mega32 (Ethernet ... brauch ich nich wirklich).
hm

uffi
11.07.2008, 13:28
Die AT90USB bieten noch einiges mehr als ein ATMega32:

AT90USB128x/64x:

4/8 kB RAM
64/128 kB Flash
2/4 kB EEPROM
8 PWM Leitungen

etc.

uffi
11.07.2008, 13:31
Das ist genauso ein AVR wie der ATMEGA32, oder meinst Du den AVR32 (32 bit Controller)???

BlackDevil
11.07.2008, 14:21
Ja aber das sin wie gesagt die großen ICs und nicht mehr wie die Mega 32... Was will ich mit nem Prozessor der auch noch Ethernett und Krempel kann ^^

Besserwessi
11.07.2008, 15:42
Der AT90USB128x/64x ist mehr sowas wie eine Mega64 mit FT232 in einem Chip.
Man hat als zusätzliche Schnittstelle halt noch USB (nur slave ?) zur Verfügung. Da die Daten nicht erst über die UART gehen müssen kann das auch etwas schneller gehen. Die Programme sind sonst wie beim Mega8 oder Mega32.

BlackDevil
11.07.2008, 17:12
Danke ... hast dazu auch eine PN.

Sollangsam steig ich nich mehr durch ob es nun per USB<>RS232 Wandler geht, oder nicht, oder ob man einen mit OnTheChip USB nehmen soll oder oder oder ...

Besserwessi
11.07.2008, 22:52
Um etwas Klarheit in die verschiedenen Programmiere zu bringen hilft vielleicht diese Übersicht:
http://www.mikrocontroller.net/articles/AVR_In_System_Programmer

BlackDevil
12.07.2008, 08:46
Danke. Das bringt in der tat klarheit, bzw setzt die Verwirrung zu 0. Naja, dann doch in den Sauren Apfel beisen und jemanden Suchen der einen Mega 8 SMD Flashen kann oder den http://shop.embedded-projects.net/ kaufen ^^



Edit: Ich muss einen kleinen Irrtum aufheben, ich dachte die ganze Zeit der Mega32 sei ein 32Bit µC (durch den Namen drauf gekommen und nie nirgends was gelesen). Jetzt erst wurde meine Idiotie mit 8bit bestraft :-D Damit wird der AT90USB doch relativ Interessant. RS232 und USB direkt Programmierbar ... warum nich, klingt Interessant und genauso Simpel wie der Mega32

Ich seh auch kein Problem den mit dem AVR Studio zu Programmieren oder?

Edit:
http://img353.imageshack.us/img353/8118/splanwc3.th.png (http://img353.imageshack.us/my.php?image=splanwc3.png)
sollte so passen oder?

Edit: es is verdammt hässlich dem ganzen ein Layout zu Verpassen ... Einfach der Tatsache wegen das es viele viele viele IO Pins sind

BlackDevil
13.07.2008, 10:33
So die Würfel sind gefallen - hoff ich:

http://www.er-tronik.de/shop2/popup_image.php?pID=59

Das macht es da einfacher :D Ich denke das hol ich mir - auf einen Preis ähnlich der 50€ komm ich so oder so ^^

Mich macht nur die Produktbeschreibung wuschig aber das pack ich jetz in den anderen Thread


Das habe ich in einem anderen Thread gepostet - und das ist die Produktbeschreibung:


The AT90USBKey is a low-cost demonstration board based on the AT90USB1287 microcontroller. It allows the quick evaluation of AVR microcontrollers and the AT90USB family. The key simply connects to the USB port of a personal computer to retrieve on-board documentation and run AVR programs. Designers can either run demonstration programs or their own application. It also allows hardware developments by giving access to the JTAG port and all the IOs of the microcontroller. An external power supply can be used for USB host or stand-alone operation.

The AT90USBKey provides the following features:
* AT90USB QFN64
* AVR Studio® software interface (1)
* USB software interface for Device Firmware Upgrade (DFU bootloader) (2)
* Power supply flagged by “VCC-ON” LED:
– regulated 3.3V
– from an external battery connector (for reduced host or OTG operation)
– from the USB interface (USB device bus powered application)
* JTAG interface (connector not mounted):
– for on-chip ISP
– for on-chip debugging using JTAG ICE
* Serial interfaces:
– 1 USB full/low speed device/host/OTG interface
* On-board resources:
– 4+1-ways joystick
– 2 Bi-Color LEDs
– temperature sensor
– serial dataflash memories
– all microcontroller I/O ports access on 2x8pin headers (not mounted)
* On-board RESET button
* On-board HWB button to force bootloader section execution at reset.
* System clock:
– 8 MHz crystal


Alles was mich stört ist Fett gedruckt. Kann ich denn da jetzt ohne Probleme die Portpins nutzen ohne das die LED oder der "Joystick" oder der andere Kram stört?

Und warum zur Hölle stehen da 8MHz Systemtakt wenn ich 16MHz im Datenblatt gelesen habe?!

Grüße

Edit: Andererseits bekomme ich dann auch schon das myAVR USB Set mit Display zum selbst Löten
Kein Weg führt an den 50€ vorbei => Ich hol das. So. Und damit kann ich dann Theoretisch alles programmieren dank dem USB Programmer ;)

Maaan ich bin so doof das mir das nie aufgefallen ist!

drew
13.07.2008, 19:18
Hallo,
wo habt Ihr denn den AT90USB her? Ich hab jetzt mal bei Reichelt und Conrad geschaut und nichts gefunden. (Vielleicht bin ich auch einfach blind?)

BlackDevil
14.07.2008, 08:36
http://www.er-tronik.de/shop2/index.php Da gibts auch das fertige board. Ich hab allerdings keinen - ich such immer noch den passenden Chip für mich wobei ich wahrscheinlich mit dem Mega32 myAVR USB + Anfangen werde.


Edit: Und es scheint doch zu gehn
http://cgi.ebay.de/FTDI-Konverter-USB-zu-UART-TTL-fur-ATMEL-AVR-PIC_W0QQitemZ120281712636QQihZ002QQcategoryZ65507Q QssPageNameZWDVWQQrdZ1QQcmdZViewItem#ebayphotohost ing

uffi
14.07.2008, 09:14
@black devil: Achtung, Du hast in Deinem Schematic oben mit dem AT90USB1287 mindestens zwei grobe Schnitzer drin:

- die Kondensator an XTAL dürfen niemals 100nF sein, sonst schwingt Dein Oszillator nicht. Empfohlen sind je 12-22 pF!!!
- der Elko an UCAP ist falsch gepolt

Außerdem solltest Du die Anbindung des USB-Steckers an den USB Port anhand des Datenbuches überprüfen, je nach Fall (USB Slave, USB Master, Board-Versorgung etc.) gibt es da unterschiedliche Anschlußschemata für UVCC und VBus. Ich hab außerdem irgendwo gelesen, dass es gar nicht unbedingt empfohlen wird, UGND mit GND zu verbinden.

Gruß, uffi.

BlackDevil
14.07.2008, 09:49
Der Elko ist falsch rum - stimmt. Beim Rest hab ich mich daran Orientiert:
http://www.ssalewski.de/AT90USB_board.html.de
Merk gerade, hab mich wohl beim Quarz verlesen ^^ Sind in der Tat 15pF. Was ich nich für Fehler gemacht hab, nenene.

Aber ich denk ich kauf mir doch das myAVR Board. Denn: Wenn ich mir ein Board selbst bau dann auf eine 85x55(mm) große Platine und ... das ist unmöglich mit dem 64Pinnigen IC - zumindest für mein Können am Layouten ...

Zu beachten ist auch mein Edit oben ... vll Bau ich doch ein Board mit dem Mega32 selbst? Ich hätte ja noch ein LCD da :) aaach ich weis es net :(

uffi
14.07.2008, 10:22
Ich hab hier eine nette Vorlage für Dich:
ein Board für einen ATMEGA16 oder 32 zum Nachbau.

Einfaches Layout, zweiseitiges Board auf 80x100mm. Eagle files zum downloaden etc.

Mit 2x L293D on Board zur Ansteuerung von bis zu 4 DC-Motoren.

siehe:

http://freenet-homepage.de/uffmann/Electronics.html#Chapter5

oder:

http://home.arcor.de/uffmann/ARTIST2.htm

Gruß, uffi.

BlackDevil
14.07.2008, 11:18
Wenn ich was Ätzen lassen sollte dann das AT90USB wobei ich da Skeptisch bin. Am ende kann ich auch das myAVR + Kaufen und kann mich ebenfalls freuen ;)

http://rapidshare.com/files/129590021/AT90USB.rar.html
Mag da mal jemand drüber Schauen? Nicht gerade eine Schönheit aber ich wollte es derart Kompakt, ich brauch nur noch Bohrungen in den Ecken um das 5V Board auf selber Größe unten drunter packen zu können

BlackDevil
15.07.2008, 08:55
http://rapidshare.com/files/129823723/Mega322.rar.html neue Version