PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Variablen über HyperTerminal angucken



palermo
06.12.2006, 15:27
Hallo
Welchen C/C++ Befehl brauche ich um die Werte meiner Sharps oder allgemein Text so herzurichten das ich sie über das Programmierkabel
im HyperTerminal angucken kann? Ich glaube, dass das z.B. bei den ASUROs so gemacht wird und hoffe, dass mir jemand weiterhelfen kann.
mfg palermo

chientech
07.12.2006, 05:50
Hi,
schau dir mal die Uart-libs von Peter Fleury an.
Mit Google suchen...

coCo
07.12.2006, 14:03
Hi,
du brauchst dazu ein RS232 Kabel, mit dem Programmierkabel wird das nicht klappen.

MfG

palermo
07.12.2006, 14:53
Hallo
Puh, dass habe ich mir einfacher vorgestellt. Naja also muss ich an mein board ( http://qfix-shop.de/cgi/websale6.cgi?Ctx=%7bver%2f6%2fver%7d%7bst%2f3eb%2f st%7d%7bcmd%2f0%2fcmd%7d%7bm%2fwebsale%2fm%7d%7bs% 2fqfixshop%2fs%7d%7bl%2fDeutsch%2fl%7d%7bctx%2fff1 c682d%2fctx%7d%7bmi%2f9%2d2238%2fmi%7d%7bpi%2f6%2d 2055%2fpi%7d%7bpo%2f1%2fpo%7d%7bfc%2fx%2ffc%7d%7bm d5%2fcdae07468945518f17553ff906f50553%2fmd5%7d Schaltplan: http://zelos.zeit.de/wissen/robocup/hardware/pdf/schaltplaene/Schaltplan_Controllerboard.pdf) eine RS232 Schnittstelle basteln, mir diese Bibliotek
http://homepage.hispeed.ch/peterfleury/avr-software.html#libs runterladen und das Prinziep der Programmierung verstehen. Hm gibt es noch eine einfachere Möglichkeit Text auf dem PC abrufbar zu machen?
(zum programmieren benutze ich leider nicht einmal ein Serieles Kabel (nicht mehr) weil der Anschluß an meinem PC nicht mehr geht benutze ich jetzt das hier: http://qfix-shop.de/cgi/websale6.cgi?Ctx=%7bver%2f6%2fver%7d%7bst%2f3eb%2f st%7d%7bcmd%2f0%2fcmd%7d%7bm%2fwebsale%2fm%7d%7bs% 2fqfixshop%2fs%7d%7bl%2fDeutsch%2fl%7d%7bctx%2fff1 c682d%2fctx%7d%7bmi%2f1%2d2230%2fmi%7d%7bpi%2f1%2d 2265%2fpi%7d%7bpo%2f1%2fpo%7d%7bfc%2fx%2ffc%7d%7bm d5%2f48320a25c8a31097c9b11dc2b2806421%2fmd5%7d )
mfg palermo

zumgwadrad
07.12.2006, 15:02
Hi!
Wolltest du dir deine Sharp-Werte nicht übers Display ausgeben lassen?
Oder willst du die unbedingt aufm Rechner ham?

palermo
07.12.2006, 15:16
Hallo
Eigentlich wollte ich die Sharp Werte mir nur mal auf dem Display angucken um eine Formel in cm zu erstellen und habe dann gemerkt das man einen extra Befehl dafür braucht. Eigentlich möchte ich mini mini mini mapbuilding machen. Soll heißen er misst den Raum (viereckig) aus und berechnet die X und Y Achse seiner eigenen Position (dafür die Formel). Später soll es etwas komplexer werden aber erstmal soweit.
mfg palermo

m.a.r.v.i.n
07.12.2006, 16:00
Hi,

nach Studium des Schaltplans komme ich zu dem Schluß, dass das Controller Board keine UART oder RS232 hat. Die RX und TX Pins des Prozessors sind auf FETs geführt, für die Power Ausgänge. Pech gehabt würde ich sagen.
Die ISP Schnittstelle ist nur zum Programmieren gedacht. Bliebe vielleicht noch die I2C Schnittstelle, über einen PC I2C Adapter.
Sorry, so cool finde ich den Crash Bobby nicht.

Gruß m.a.r.v.i.n

zumgwadrad
07.12.2006, 16:31
Hi palermo


Eigentlich wollte ich die Sharp Werte mir nur mal auf dem Display angucken um eine Formel in cm zu erstellen und habe dann gemerkt das man einen extra Befehl dafür braucht.

Wofür brauch man einen extra Befehl?
zum angucken oder zum umrechnen in cm? Ich dachte das des mit dem Angucken mittlerweile geht! Weil um Wertetabelle zu erstellen find ichs ein bisschen krass da gleich ne Schnittstelle Chip=>PC zu basteln!

Viel Erfolg noch!!

palermo
07.12.2006, 17:19
Hallo zwumgwadrad
Mit extra Befehl meine ich itoa oder sprintf. Die Wertetabelle habe ich bereits mit dem Display erstellt. Eingentlich wollte ich die Karte auf dem PC mir angucken können. Aber ich habe keineswegs damit gerechnet das das so kompliziert werden würde. Meine Idee war halt nur das ich mir die Karte auf dem großen Monitor und nicht auf dem sehr kleinen Display angucke.

Hallo m.a.r.v.i.n
Wo bekommt man so ein I2C Adabter her hab nichts gefunden.
Hm kann ich auch verstehen nur habe ich ihn jetzt und bin auch recht zufrieden.

palermo
07.12.2006, 17:33
Hallo
bei robotikhardware haben sie sowas. Die beispiele sind nur in bascom wie würde ich denn in C/C++ text darüber senden? Und wie empfange ich das dann auf dem PC? Ich versuche noch mal aus den beispielen schlau zu werden.
http://www.shop.robotikhardware.de/shop/catalog/product_info.php?products_id=68
mfg palermo

m.a.r.v.i.n
07.12.2006, 21:01
Hi,

ja dieser PC I2C Adapter würde gehen. Auf Crash Bobby Seite müßtest du dafür dann einen I2C Slave programmieren. Das ist leider nicht so trivial.
Schon komisch, dass Qfix auf eine UART Schnittstelle verzichtet hat.

Eine andere Möglichkeit wäre es eine Soft UART zu programmieren, oder nur den Sendeteil der Hardware UART zu benutzen. Solange man nur was zum PC senden will, sollte das recht einfach gehen. Dazu ist dann allerdings ein Pegelkonverter (z.B. MAX232) notwendig.

Google mal danach oder guck mal im RN-Wissen.

Gruß m.a.r.v.i.n

zumgwadrad
07.12.2006, 21:16
Hi Palermo!
Jetzt verstehe ich was du meinst! OK das wird schwer auf dem Display!
Möglich wäre z.B. die Entfernungen vor,hinter,links,rechts vom Bot anzugeben zum Beispiel!
Na dann wünsch ich dir viel erfolg, klingt sehr spannend!

Weja
08.12.2006, 10:45
Hi, was m.a.r.v.i.n beschrieben hat, mit dem soft-UART ist warscheinlich die einfachste Lösung. Man muß sich nur eine Mini-Platine mit einem MAX232 und einer Klinkensteckerbuche bauen, die man auf 2 Buchsen (eine für Stromversorgung max232, eine für txd/rxd ) des Bobby-boards steckt, herstellen.
Gruß

palermo
08.12.2006, 13:45
Hallo
Mir ist gerade aufgefallen das mein Link zu dem Schaltplan nicht geht also hier noch einmal: http://zelos.zeit.de/wissen/robocup/hardware/pdf/schaltplaene/Schaltplan_Controllerboard.pdf
Also bei Conrad haben die mehrere max232 welcher wäree es denn dann?
http://www1.conrad.de/scripts/wgate/zcop_b2c/~flNlc3Npb249UDkwV0dBVEU6Q19BR0FURTA2OjAwMDEuMDExZ C45NjUxODYxMSZ+aHR0cF9jb250ZW50X2NoYXJzZXQ9aXNvLTg 4NTktMSZ+U3RhdGU9MzUyODExODU4Mg==?~template=PCAT_A REA_S_BROWSE&mfhelp=&p_selected_area=%24ROOT&p_selected_area_fh=&perform_special_action=&glb_user_js=Y&shop=B2C&vgl_artikel_in_index=&product_show_id=&p_page_to_display=DirektSearch&~cookies=&zhmmh_lfo=&zhmmh_area_kz=&s_haupt_kategorie=&p_searchstring=max232&p_searchstring_artnr=&p_search_category=alle&r3_matn=&insert_kz=&area_s_url=&brand=&amount=&new_item_quantity=&area_url=&direkt_aufriss_area=&p_countdown=&p_80=&p_80_category=&p_80_article=&p_next_template_after_login=&mindestbestellwert=&login=&password=&bpemail=&bpid=&url=&show_wk=&use_search=3&p_back_template=&template=&titel=&darsteller=&regisseur=&anbieter=&genre=&fsk=&jahr=&jahr2=&dvd_error=X&dvd_empty_error=X&dvd_year_error=&call_dvd=&kna_news=&p_status_scenario=&documentselector=&aktiv=&p_load_area=$ROOT&p_artikelbilder_mode=&p_sortopt=&page=&p_catalog_max_results=10 Ich habe ein I2C Programm um 2 Controller zu verbinden weiß aber nicht ob ich das hier einfach reinstellen darf (glaub eher nicht). Ähm dieses txd/rxd müsste ich mir von dem Board irgend wo ablöten? Wo genau und WIE? Hab ein bisschen Sorge um mein board bin nicht wirklich der Löt-Künstler. Diese mini Platine mit den zwei Klinkern und dem max232 hat jemand einen Schaltplan/kann ihn schnell erstellen?
mfg palermo

Weja
08.12.2006, 14:36
also auf dem Board brauchst du da garnichts zu löten.

Du benötigst :
1. ein wenig Lochrasterplatine
2. ein qfix Sensorkabel
3. max232 + einige kondensatoren
4. Klinkensteckerbuchse
5. serielles Kabel

6. Software:
https://www.roboternetz.de/wissen/index.php/Software-UART_mit_avr-gcc

Im wissensbereich findest du eine Schaltung, wie der max232 angeschlossen wird. Das Sensorkabel schneidest du dann in der Mitte durch, und benutzt das eine Ende zur Stomversorgung und das andere fur die Datenleitungen.
Die max232 Bauteile unterscheiden sich in der Bauform.
Bezugsquellen Hardware:
Kabel:
http://www.roboter-teile.de/Shop/themes/kategorie/detail.php?artikelid=64&source=2
kann man aber auch selber machen.
Bitte stell doch mal ein Schaltplan / Foto der Schaltung hier rein, ich möchte das dann auch gerne nachbauen.

Weja

palermo
08.12.2006, 15:11
Hallo
habe im Wissen bereich nichts gefunden. Aber hier: http://www.the-starbearer.de/Schaltungen/Max232.htm meintest du so etwas?
mfg palermo

Weja
08.12.2006, 15:57
Das ist genau richtig.
Mit dem Kabel kannst du auch was anderes nehmen, aber da man ja nur 2 Leitungen braucht, ist das mit der Stereo-Klinke ideal.
Weja

palermo
09.12.2006, 12:02
Hallo
Zusammenfassung: (Frangen stehen in Klammern.)
Zuerst baue ich mir eine Platine (Ich habe noch eine ganz kleine Lochrasterplatine von "mehr Spass mit Asuro" die hat aber nur ca. 190 Löcher, ist die wohl groß genug?) mit einem max232 einer Hand voll 1uf Kondensatoren an der auf der einen Seite ein Sensorkabel und an der anderen eine Klinkerbuchse ist. Die 5V + und - hole ich mir aus dem Sensorkabel und ich nehme eine Klinkerbuchse mit 2 Leitungen (Warum nur zwei? Ich denke PIN7 PIN8 und Masse b.z.w. - !?!?) und das Kabel für den PC kaufe ich mir z.B. bei deinem Link. Ich brauche zwei Programme eins für meinen Bot und das andere um die Daten zu empfangen auf meinem PC. (Kann ich für den PC einfach das nehmen https://www.roboternetz.de/phpBB2/dload.php?action=file&file_id=240 oder ist das was anderes?) Das Sensorkabel mit der Platine dran schließe ich an einen analogen Crash Bobby Port an. (Das Sensorkabel besteht ja aus drei Kabeln +, - und ein Pin vom Atmega. Mit was muss ich den Pin vom Atmega verbinden? TxD? RxD?)


mfg palermo ( :-b Hm, meine Zusammenfassung besteht fast zur Hälfte aus Fragen :-b )

chientech
09.12.2006, 14:01
Hi,

(Kann ich für den PC einfach das nehmen https://www.roboternetz.de/phpBB2/dl.....p?action=file&file_id=240 oder ist das was anderes?)

Für die serielle Schnittstelle am PC findest du unter Zubehör->Kommunikation das Hyperterminal.
Besser, weil mehr komfort finde ich (und benutze ich auch), ist Hterm, findest du bei Google suche nach "Hterm der Hammer"

palermo
10.12.2006, 11:53
Hallo
Bei Roboterteile.de wo ich eigentlich das serielle Kabel kaufen wollte gibt es weder kondensatoren noch max232 und da ich nicht 2mal Versand zahlen möchte lass ich das lieber [-( . Ich habe bei Conrad noch Gutscheine und kann Versandkostenfrei einkaufen \:D/ deswegen wäre es dort ganz praktisch. Conrad hat 3 max232 und ich frage mich welchen ich nehmen soll. Einmal einen MAX232N (TID), MAX232D (TID) und einen MAX232DW (TID). Ansonsten muss ich leider sagen das ich zu blöd für die Suchfunktion bin und nicht einmal passende Kondensatoren finde, HILFE!
Als Ersatz für das Serielle Kabel habe ich hier dran gedacht: http://www1.conrad.de/scripts/wgate/zcop_b2c/~flNlc3Npb249UDkwV0dBVEU6Q19BR0FURTEzOjAwMDEuMDBmZ C4zZGJiMDM2OSZ+aHR0cF9jb250ZW50X2NoYXJzZXQ9aXNvLTg 4NTktMSZ+U3RhdGU9Mzk5NDQzNzkzMg==?~template=PCAT_A REA_S_BROWSE&mfhelp=&p_selected_area=%24ROOT&p_selected_area_fh=&perform_special_action=&glb_user_js=Y&shop=B2C&vgl_artikel_in_index=&product_show_id=&p_page_to_display=DirektSearch&~cookies=&zhmmh_lfo=&zhmmh_area_kz=&s_haupt_kategorie=&p_searchstring=3UB+D+GEH%c4USE+9+POL+MIT+SCHIRMBLE CH+&p_searchstring_artnr=&p_search_category=alle&r3_matn=&insert_kz=&area_s_url=&brand=&amount=&new_item_quantity=&area_url=&direkt_aufriss_area=&p_countdown=&p_80=&p_80_category=&p_80_article=&p_next_template_after_login=&mindestbestellwert=&login=&password=&bpemail=&bpid=&url=&show_wk=&use_search=3&p_back_template=&template=&titel=&darsteller=&regisseur=&anbieter=&genre=&fsk=&jahr=&jahr2=&dvd_error=X&dvd_empty_error=X&dvd_year_error=&call_dvd=&kna_news=&p_status_scenario=&documentselector=&aktiv=&p_load_area=$ROOT&p_artikelbilder_mode=&p_sortopt=&page=&p_catalog_max_results=10 ist das OK? Als Lochraterplatine habe ich daran gedacht: http://www1.conrad.de/scripts/wgate/zcop_b2c/~flNlc3Npb249UDkwV0dBVEU6Q19BR0FURTEzOjAwMDEuMDBmZ C4zZGJiMDM2OSZ+aHR0cF9jb250ZW50X2NoYXJzZXQ9aXNvLTg 4NTktMSZ+U3RhdGU9Mzk5NDQzNzkzMg==?~template=PCAT_A REA_S_BROWSE&mfhelp=&p_selected_area=%24ROOT&p_selected_area_fh=&perform_special_action=&glb_user_js=Y&shop=B2C&vgl_artikel_in_index=&product_show_id=&p_page_to_display=DirektSearch&~cookies=&zhmmh_lfo=&zhmmh_area_kz=&s_haupt_kategorie=&p_searchstring=Lochrasterplatine&p_searchstring_artnr=&p_search_category=alle&r3_matn=&insert_kz=&area_s_url=&brand=&amount=&new_item_quantity=&area_url=&direkt_aufriss_area=&p_countdown=&p_80=&p_80_category=&p_80_article=&p_next_template_after_login=&mindestbestellwert=&login=&password=&bpemail=&bpid=&url=&show_wk=&use_search=3&p_back_template=&template=&titel=&darsteller=&regisseur=&anbieter=&genre=&fsk=&jahr=&jahr2=&dvd_error=X&dvd_empty_error=X&dvd_year_error=&call_dvd=&kna_news=&p_status_scenario=&documentselector=&aktiv=&p_load_area=$ROOT&p_artikelbilder_mode=&p_sortopt=&page=&p_catalog_max_results=10 . Und die Sensorkabel kann ich auch bei Conrad kaufen. Ich frage das alles um Denkfehler und damit verbundenen Frust zu vermeiden.
mfg palermo

Weja
10.12.2006, 16:23
Hi palermo,
irgenwie hatte ich gehofft, daß die Infos reichten, und ich nur nachbauen brauch, wenns bei dir geklappt hat. Habe auch erst jetzt Zeit, um antworten zu können.
Kann deinen Links leider nicht folgen, weil ich jetzt immer noch unterwegs bin. Antwort kommt aber.
Gruß
Weja

palermo
11.12.2006, 13:57
Hallo
Sorry, ich wollte eigentlich nur eine Rückmeldung bekommen ob meine Bestellung so OK wäre. Also wenn du die Links nicht öffnen kannst hier die Bestellnummern bei Conrad:
MAX232N (TID): Artikel-Nr.: 152281 - LN; MAX232D (TID): Artikel-Nr.:152295 - LN; MAX232DW (TID): Artikel-Nr.: 152308 - LN (welchen soll ich nehmen?)
Kabel: Artikel-Nr.: 742549 - LN
Platine: Artikel-Nr.: 528463 - LN
Kondensatoren: Da habe ich auf Hilfe gehofft
Ach ja und noch ein Sensorkabel.
Ich hab halt nicht so gute Erfahrungen damit gemacht - erst bestellen und dann nachfragen.
mfg palermo

palermo
21.12.2006, 14:17
Hallo
Hm, vielleicht kann mir ja auch noch jemand anderes antworten wenn Weja jetzt so lange weg ist (?).
mfg palermo

m.a.r.v.i.n
21.12.2006, 15:10
Hi palermo,

hier gibt es einen Schaltplan mit Conrad Bestellliste:
http://elektronik.kai-uwe-schmidt.de/index.php?page=pic_rs232

Als Verbindunskablel zum PC benötigst du noch:
KABEL RS-232 9ST/9BU 5M Art.-Nr.: 981281 - 62

Die 2 Stereoklinken / Buchsen kannst du auch weglassen und die Drähte des Sensorkabels auch direkt anlöten.

Gruß m.ar.v.i.n

palermo
21.12.2006, 18:44
Hallo
Wenn du dir ganz sicher bist, dass das das Richtige ist würde ich das jetzt bestellen. Danke für den Link.
mfg palermo

m.a.r.v.i.n
21.12.2006, 19:00
Hi

ich sehe gerade das in der Stückliste ein SUB-D Stiftleiste steht. Du brauchst aber ein Buchsenleiste.

SUB D-BUCHSENLEISTE 90 GRAD 9 POLIG 741450-13

Alle Angaben ohne Gewähr

Gruß Peter

palermo
21.12.2006, 19:35
Ja, ist ja klar.
Aber wenn du glaubst das es richtig ist, dann ist das schon viel wert.
Die Teile sind nun bestellt.
mfg palermo

palermo
22.12.2006, 10:55
Hallo
Ich habe noch eine Frage zum Schaltplan und zwar schließe ich vom Sensorkabel + an VCC, - an GND und das letzte? (das mit der Verbindung zu einem Pin vom Atmega) an Pin 11 (T1IN)?
mfg palermo

m.a.r.v.i.n
22.12.2006, 12:03
Hi,

ja richtig an Pin 11. Das ist dann die Senderichtung zum PC. Will man auch Zeichen vom PC empfangen benötigt man einen weiteren Port, an den man Pin 12 vom MAX232 anschließt.

Im Schaltbild von http://elektronik.kai-uwe-schmidt.de/index.php?page=pic_rs232
muß an der SUB-D Buchse Pin 2 und 3 vertauscht werden, da du ja ein 1:1 Kabel an SUD-B Buchse verwendest und kein Nullmodem Kabel.

Gruß m.a.rv.i.n

palermo
22.12.2006, 12:20
Hallo
Danke, dann kann ich mir ja noch einmal überlegen ob ich noch nen zweiten Pin anschließe. Joa dann müsste ich mich nur noch um die Programmierung kümmern. Muss ich eigentlich in HyperTerminal was umstellen? Ich würde halt eine neue Verbindung erstellen und wie weiter?
Wie ich dann meinen bot proggen muss habe ich ein bisschen probleme zu verstehen. Also was ich bis jetzt verstanden habe ist das man die bits in einem zeitlichen Schema senden muss. Die Leitung ist normal auf 1 bei einer Übertragung wird sie auf 0 gesetzt (Startbit) es folgen die 8 bits und wieder 1 (Stopbit). Wie sehen denn diese 8 bit aus? (immer nur 1 oder 0? wie sende ich denn dann einen Text?)
mfg palermo

m.a.r.v.i.n
22.12.2006, 12:52
Hi,

die 8 Bits zwischen Start und Stop Bit enthalten das gesendete Zeichen, als serieller Datenstrom. Der Buchstabe 'A' zum Beispiel (Hexcode 0x41) als '01100001'.
Um jetzt einen Text auszugeben benötigst du die Soft UART Funktionen aus dem RN-Wissen. Ein Beispiel wie man dann einen Text ausgibt sieht so aus. Du kannst also ganz einfach printf verwenden.



#include <stdio.h>
#include "uart.h"

int main(void)
{
/* initialisieren der UART */
uart_init();

/* stream öffnen */
fdevopen(uart_putc, NULL, 0);

/* printf... */
printf("Hello World!\n");

/* exit... */
return 0;
}


Gruß m.a.r.v.i.n

palermo
22.12.2006, 13:04
Hallo
Das ist ja praktisch! Wo kann ich mir diese Bibliothek runterladen, RN-Wissen? Also würde ich bei diesem Programm Hello World! in den HyperTerminal angezeigt bekommen?
mfg palermo

m.a.r.v.i.n
22.12.2006, 14:04
Hi,

ja richtig. Das beliebte 'Hello World' sollte ausgegeben werden.
Ein entsprechendes Projekt mit Makefile und Lib für WinAVR befindet sich im Anhang.

CPU Takt im Makefile muß evtl angepaßt werden (derzeit F_CPU=8000000 /* 8MHz */))
Im File uart.c muß der Sendeport und Pin angegeben werden, dito für die Empfangsseite. Ebenso kann die Baudrate eingestellt werden (derzeit 9600)


#define SUART_TXD_PORT PORTB
#define SUART_TXD_DDR DDRB
#define SUART_TXD_BIT PB1



Gruß m.a.r.v.i.n

palermo
23.12.2006, 13:46
Hallo
Sorry,aber wo muss ich die Lib hinpacken? Alle Programme sind bei mir in einem Ordner namens software ich schreibe meine Programme immer unter dem Namen myTest.cc weil er es nur dann kompiliert. In jenem Ordner befindet sich noch einer mit dem Namen include dort sind die ganzen H Dateien. Nur gibt es ja auch noch eine C Datei und ein Makefile.
Ich hoffe, dass sich diese Frage so von Ferne beantworten lässt.

Ansonsten sind die Teile nun da, nur leider kann ich noch nicht anfangen zu löten da die Lochrasterplatinen nicht lieverbar sind und die brauche ich unbedingt. ](*,)

mfg palermo

palermo
24.12.2006, 11:34
Hallo
in c:\WinAVR\ giebt es einen Ordner lib, darein?

Und noch eine ganz andere Frage: In dem Paket von Conrad war komischerweise ein Qfix Soccerboard drin *grins* (mein Weihnachtsgeschenk von mir für mich). Nur muss ich jetzt bei Programmers Notepad oben immer qfix C++ mega128 einstellen. Weiß jemand was ich einstellen muss damit er das automatisch macht?

Nochmals fröhliche Weihnachten palermo

palermo
30.12.2006, 11:19
Hallo
Sorry, dass ich immer wieder die selbe bescheurte Frage stelle aber wie integriere ich die lib? (Links, ein kleiner Tipp, irgend einen Anhaltspunkt in welche Ordner ich was stopfen muss) In so einem kleinen Laden in Altona habe ich die Platine bekommen und bin schon kräftig am löten. Ich werde demnächst mal Fotos auf meine Website stellen. Ich hoffe ihr wurdet reichlich beschenkt und hattet schöne Feiertage.
mfg palermo

m.a.r.v.i.n
30.12.2006, 11:55
Hi,
sorry für meine späte Antwort aber ich war über die Feiertage weg.
Die Lib ist auch nur eine C-Datei die man im Makefile einbinden muß, damit sie mitübersetzt wird. Am einfachsten kopiert man die files uart.c und uart.h in dasselbe Verzeichnis wie die anderen Quellen. Um die Funktionen der Lib benutzen zu könnene, muß du das File "uart.h" in deinen Quellen includen.


#include "uart.h"

Im Makefile muß man dann nur noch die Zeile folgende anhängen, damit die Lib mitübersetzt wird.


# List C source files here. (C dependencies are automatically generated.)
SRC = test.c
SRC += uart.c


PN ist nicht gerade eine komfortable Entwicklungsumgebung. Du kannst den Zielprozessor aber im Makefile festlegen, und immer dieses Makefile verwenden (kopieren). Komfortabler geht das ganze mit dem AVRStudio von Atmel.

So ändert man den Zielprozessor im Makefile

# MCU name
MCU = atmega128



Gruß m.ar.v.i.n

palermo
01.01.2007, 18:03
Hallo

Am einfachsten kopiert man die files uart.c und uart.h in dasselbe Verzeichnis wie die anderen Quellen.
In dem Ordner include sind soweit ich das sehe die ganzen H-Dateien drin. (z.B. stdlib, math, qfixSoccerBoard, .........) Nur wohin mit den C-Dateien?


Um die Funktionen der Lib benutzen zu könnene, muß du das File "uart.h" in deinen Quellen includen.
Zu den anderen include Anweisungen z.B: #include "qfixSoccerBoard.h"
oben in meine Programmierung rein, oder was meinst du?


Im Makefile muß man dann nur noch die Zeile folgende anhängen, damit die Lib mitübersetzt wird.
Wo drin? in makefile_template.old (OLD-Datei)? in mfile (TCL-Datei)? in mfile (XBM-Datei)? oder in makefile_template (Datei)? oder in ganz was Anderem?

Vielen Dank, dass du mir immer antwortest! \:D/
mfg palermo

m.a.r.v.i.n
01.01.2007, 22:57
Hi,

die Files kopiert man in das Projekt Verzeichnis zusammen mit den eigenen Quelldateien.


Im Makefile muß man dann nur noch die Zeile folgende anhängen, damit die Lib mitübersetzt wird.
Wo drin? in makefile_template.old (OLD-Datei)? in mfile (TCL-Datei)? in mfile (XBM-Datei)? oder in makefile_template (Datei)? oder in ganz was Anderem?
[/quote]


Zu den anderen include Anweisungen z.B:#include "qfixSoccerBoard.h"
oben in meine Programmierung rein, oder was meinst du?

genau das meine ich.

Sorry, aber mit den Dateien kann ich nichts mit anfangen. Ich dachte bisher, dass zum Programmieren des crashbobbys WinAVR verwendet wird. Als Projektdatei gibt es dort nur ein Makefile (ohne Extension). Da mußt du dich schon selbst durch die Doku quälen wie man Projekte erstellt usw.

palermo
02.01.2007, 16:20
Hallo
In meine Platine muss ich jetzt nur noch die Kondensatoren und die Buchse einlöten. Ein Bild: http://www.paul-vienken.de/Map_Building.html
Ähm, dass ist mir gerade aufgefallen: (habe ich irgendwie überlesen)

Im Schaltbild von http://elektronik.kai-uwe-schmidt.de/index.php?page=pic_rs232 muß an der SUB-D Buchse Pin 2 und 3 vertauscht werden, da du ja ein 1:1 Kabel an SUD-B Buchse verwendest und kein Nullmodem Kabel. Wie jetzt? Stimmt der Lochrasterplatinen-Plan denn? Nach dem löte ich die Platine ja zusammen. Zur Not verbiege ich die "Pins" von der Buchsenleiste.


Ich dachte bisher, dass zum Programmieren des crashbobbys WinAVR verwendet wird.Das ist auch so. Diese ganzen Makefiles habe ich unter Start/WinAVR/avr/include ausgebuddelt.


die Files kopiert man in das Projekt Verzeichnis zusammen mit den eigenen Quelldateien. Da ist aber nichts drin ausser die Qfix-Beispielprogramme und myTest.


Da musst du dich schon selbst durch die Doku quälen wie man Projekte erstellt usw. Würde ich ja machen,wenn ich eine finden würde........

m.a.r.v.i.n
02.01.2007, 17:28
Hi,
Der Lochrasterplan stimmt für ein Nullmodem Kabel. Dort sind RX und TX im Kabel verdreht. Da du ein 1:1 Kabel hast, mußt du RX und TX auf der Lochrasterplatine drehen, das heißt Pin2 und 3 werden getauscht.
Den WinAVR Ordner lassen wir mal ganz in Ruhe, dort wird nichts kopiert oder geändert.
Dann nimm halt ein Beispielprojekt und paß das Makefile entsprechen an. Oder nimm das Makefie aus dem Zip-File, das ich gepostet habe.

palermo
02.01.2007, 18:00
Hallo

Den WinAVR Ordner lassen wir mal ganz in Ruhe, dort wird nichts kopiert oder geändert. *lol* ( :oops: )


Dann nimm halt ein Beispielprojekt und paß das Makefile entsprechen an. Oder nimm das Makefie aus dem Zip-File, das ich gepostet habe. Ich habe auf meinem Desktop einen Ordner SoccerBoard (und da soll ich jetz einfach den von dir geposteten Kram reinpacken?) dort sind weitere Ordner mit den Qfix-Beispielprogrammen drin. Wenn ich jetzt zum Beispiel den Ordner buttonTest öffne kommt die
Bin und die CC Datei davon. Wo die Makefiles davon sind weiß ich nicht.
Also werde ich wohl das Makefil aus dem Zip-File, das du gepostet hast nehmen.

mfg palermo


PS: MEIN 100 Beitrag!!!!

palermo
03.01.2007, 12:01
Hallo
Mir ist vollgendes aufgefallen:
Laut Schaltplan soll an der SUB-D Buchse:

Pin1 mit Pin4 und Pin6 verbunden sein aber auf dem Lochrasterlötplan ist Pin2 mit Pin5 und Pin9 verbunden.

Pin9 ohne Verbindung sein aber auf dem Lochrasterlötplan ist Pin6 ohne Verbindung.

Pin5 mit GND verbunden sein aber auf dem Lochrasterlötplan ist Pin1 mit GND verbunden.

Kann es sein das ich die Buchse von unten einlöten muss? Dann würde es mit dem Schaltplan überein stimmen. Oder gibt es Unterschiede in der Pin Nummerrierung zwischen Stift- und Buchsenleisten?
mfg palermo

m.a.r.v.i.n
03.01.2007, 12:52
Hi,

auweia, ja das ist richtig, die Belegung ist spiegelbildlich. Von unten einlöten sollte helfen, falls du die Schaltung nicht mehr ändern kannst.

palermo
05.01.2007, 17:06
Hallo
Nö, Schaltung kann ich nicht mehr ändern (schon fertig) und von unten einlöten funkt auch nicht wirklich, weil ich da nicht richtig dran komme. Ich setze jetz mit so Abstandshaltern die man einlöted ne kleine weitere Lochraster drauf, da kann ich dann auch vernüftig die beiden Anschlüsse vertauschen.

Mein Problem ist eher nicht die Hardware (obwohl es ja mal ganz interessant wäre zu wissen ob das was ich da gelötet habe funktioniert) sondern die Software: Also in meinem Ordner mit den Projekten ist jetzt ein weiterer namens uart. Wenn ich über PN test.c aufrufe und compiliere kommt das:


> "c:\WinAVR\compile-can128.bat" test
compiling ...
avr-c++: test.cc: No such file or directory
avr-c++: no input files
avr-objcopy: 'test.elf': No such file
OK

> Process Exit Code: 0
> Time Taken: 00:02

Hm das klingt nach Problemen obwohl ja Process Exit Code: 0 ist. Ich hab es noch nicht versucht aufs Board zu übertragen.
mfg palermo

m.a.r.v.i.n
05.01.2007, 22:18
Hi,

dann mußt du wohl test.c in test.cc umbenennen. Oder mach eine Eingabeaufforderung auf, wechsel in das Verzeichnis 'uart' und rufe dort 'make' auf.

Was mich wundert ist der Aufruf 'compile-can128'. Du hast doch ein mega32 Board und kein mega128 Board. Das Beispielprojekt ist auf jeden Fall für einen Atmel mega32 und läuft nicht ohne Anpassungen auf einem mega128.

palermo
06.01.2007, 11:25
Hallo
Ich habe mir doch das Soccerboard gekauft und das hat nen 128ger.
Warte mal ich probier das mit dem Umbenenennen mal aus.......
mfg palermo

palermo
06.01.2007, 12:01
Hallo
Nagut jetzt bist du wieder offline, na egal. Also im Makefile das MCU = atmega32 in MCU = can128 ändern? Oder kann es ein das ich das einstellen muss: MCU = qfix C++ can128 ? Das muss ich in PN immer in die obere Reihe eintragen. An meinem PC geht der Druckerport nicht und deswegen brauche ich zum proggen so nen USB Adapter. Und ich weiß jetzt nicht ob der ne extra Wurst braucht. In c/WinAVR ist die Stapelverabeitungsdatei compile-can128 dementsprechend verändert. Ich weiß nicht ob das ne Rolle spielt - ich dachte ich schreibs mal lieber.


dann musst du wohl test.c in test.cc umbenennen. Oder mach eine Eingabeaufforderung auf, wechsel in das Verzeichnis 'uart' und rufe dort 'make' auf.

Das .c steht doch für die Art der Datei oder? Wie soll ich das denn verändern? Dass, was du mit dem zweiten meinst verstehe ich nicht.

Und mal ne ganz allgemeine Frage: Woher weiß man normaler Weise z.B. wie man eine lib einbindet? Wäre dass nicht eigentlich auch ne Sache die Qfix in die Anleitung mitreinehmen sollte? Oder gibt es eine am besten deutschsprachige WinAVR Anleitung/Buch?
mfg palermo

PS: Die Platine ist Fertig ist mit der zweiten oben drauf nicht so schön und nicht so stabil aber wenn sie funktioniert. Wenn sie Schrott ist mach ich ne schönere ..........

m.a.r.v.i.n
06.01.2007, 15:38
Hi,

Der richtige Eintrag für einen can128 in einem Makefile wäre
MCU = at90can128. Für deinen Fall ist es wohl besser den Eintrag
Qfix C++ can128 mit PN in die erste Zeile zu schreibn. Ich habe allerdings keine Ahnung was das bewirkt.


Das .c steht doch für die Art der Datei oder? Wie soll ich das denn verändern? Dass, was du mit dem zweiten meinst verstehe ich nicht.

Benenne einfach die Datei um. Zur Not speichere sie unter PN mit neuem Namen 'test.cc' ab.

Da ich glaube, dass die ganze Projektverwaltung mit Makefile zu schwierig für deinen Kenntnisstand ist, wird es dir auch nicht möglich sein die UART Bibliothek einzubinden. Da ich aus der Ferne nicht wissen kann, wie Qfix seine Projekte erstellt, wird es am einfachsten sein, folgenden dirty trick anzuwenden.

Schreibe einfach folgende Zeile in die umbenannte Datei test.cc, hinter die letzte Zeile die mit #include beginnt.


#include "uart.c"

Damit sollte sich zumindest das ganze erst mal übersetzen lassen.

Ein Tutorial über AVR-GCC (auch für WinAVR) befindet sich hier (http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial)

palermo
06.01.2007, 15:50
Hallo
Meist du so?

#include <avr/io.h>
#include <avr/interrupt.h>
#include <stdio.h>
#include "uart.h"
#include "uart.c"

static FILE mystdout = FDEV_SETUP_STREAM(uart_putc, NULL, _FDEV_SETUP_WRITE);

int main(void)
{
/* initialisieren der UART */
uart_init();

stdout = &mystdout;

/* printf... */
printf("Hello World!\n");
/* endless loop */
while(1)
{};
/* exit... (should never reached) */
return 0;
}

> "c:\WinAVR\compile-can128.bat" test
compiling ...
In file included from test.cc:5:
uart.c: In function `void uart_init()':
uart.c:51: error: `F_CPU' was not declared in this scope
uart.c:56: error: `TIMSK' was not declared in this scope
uart.c:56: error: `TICIE1' was not declared in this scope
uart.c:69: error: `TIFR' was not declared in this scope
uart.c:51: warning: unused variable 'F_CPU'
uart.c:56: warning: unused variable 'TIMSK'
uart.c:56: warning: unused variable 'TICIE1'
uart.c:69: warning: unused variable 'TIFR'
uart.c: In function `int uart_putc(char, __file*)':
uart.c:85: error: `TIMSK' was not declared in this scope
uart.c:86: error: `TIFR' was not declared in this scope
uart.c:85: warning: unused variable 'TIMSK'
uart.c:86: warning: unused variable 'TIFR'
uart.c: In function `void __vector_12()':
uart.c:103: error: `TIMSK' was not declared in this scope
uart.c:103: warning: unused variable 'TIMSK'
uart.c: In function `void __vector_11()':
uart.c:122: error: `TIFR' was not declared in this scope
uart.c:123: error: `TIMSK' was not declared in this scope
uart.c:123: error: `TICIE1' was not declared in this scope
uart.c:122: warning: unused variable 'TIFR'
uart.c:123: warning: unused variable 'TICIE1'
uart.c: In function `void __vector_13()':
uart.c:152: error: `TIMSK' was not declared in this scope
uart.c:152: error: `TICIE1' was not declared in this scope
uart.c:153: error: `TIFR' was not declared in this scope
uart.c:152: warning: unused variable 'TICIE1'
uart.c:153: warning: unused variable 'TIFR'
test.cc: At global scope:
test.cc:7: error: expected primary-expression before '.' token
test.cc:7: error: expected primary-expression before '.' token
test.cc:7: error: expected primary-expression before '.' token
test.cc:7: error: expected primary-expression before '.' token
avr-objcopy: 'test.elf': No such file
OK

> Process Exit Code: 0
> Time Taken: 00:00

mfg palermo

m.a.r.v.i.n
06.01.2007, 16:07
Hi,

genau so. Eventuell mußt du noch eine Initialisierungsroutine für dein qfix Board aufrufen. Das sollte dann vor der Zeile

uart_init();

stehen.

Zu den Fehlermeldungen:

F_CPU ist die Prozessor Taktfrequenz. Den notwendigen Wert kann ich dir leider nicht sagen, da mußt du in der Qfix Board Doku nachsehen oder in einem anderen Beispielprojekt evtl. Den Wert schreibst du am besten in die erste Zeile von test.cc.

#define F_CPU 8000000

Das ist nur ein Beipiel, falls die Taktfrequenz 8MHz beträgt.

Die Fehlermeldungen TIMSK, TIFR und TICIE1 kommen durch die Verwendung des can128 Prozessors. Diese AVR Register haben bei diesem Prozessor andere Namen. Die Namen weiß ich leider nicht auch nicht. Damit bin ich jetzt auch am Ende meines Wissens angelangt.

palermo
06.01.2007, 16:08
Hallo

Da ich glaube, dass die ganze Projektverwaltung mit Makefile zu schwierig für deinen Kenntnisstand ist, wird es dir auch nicht möglich sein die UART Bibliothek einzubinden.
Ich versuche das zu ändern. Danke für den Link! Wie gesagt habe ich mich mit Makefiles und so bisher noch überhaupt nicht beschäftigt. [-(
mfg palermo

palermo
06.01.2007, 16:23
Hallo

Die Fehlermeldungen TIMSK, TIFR und TICIE1 kommen durch die Verwendung des can128 Prozessors. Diese AVR Register haben bei diesem Prozessor andere Namen. Die Namen weiß ich leider nicht auch nicht.
Naja, ich habe das andere board ja noch dann nehme ich das erstmal und suche mir wenns klappt dann nochmal die Befehle für den can128 raus.

Eventuell musst du noch eine Initialisierungsroutine für dein qfix Board aufrufen. Weiß ich jetzt nicht wie sowas aussieht muss ich mal ein bisschen suchen....

Damit bin ich jetzt auch am Ende meines Wissens angelangt. OK, dann muss ich mal gucken, dass ichs alleine schaffe. Vielen Dank, dass du mir so stark geholfen hast. Das ist in jedem Fall eine sehr gute Grundlage ums alleine hin zu bekommen. \:D/
mfg palermo

palermo
06.01.2007, 16:35
Hallo
Weißt du was wohl diese Fehlermeldungen bedeuten?

test.cc:9: error: expected primary-expression before '.' token
test.cc:9: error: expected primary-expression before '.' token
test.cc:9: error: expected primary-expression before '.' token
test.cc:9: error: expected primary-expression before '.' token
Sie beziehen sich alle auf diese Zeile:

static FILE mystdout = FDEV_SETUP_STREAM(uart_putc, NULL, _FDEV_SETUP_WRITE);
mfg palermo

m.a.r.v.i.n
06.01.2007, 16:54
Hi,
sieht so aus das deine WinAVR mit der Code Zeile nicht klarkommt. Ist wahrscheinlich eine ältere Version der avr-libc.


Ersetze die Zeile


static FILE mystdout = FDEV_SETUP_STREAM(uart_putc, NULL, _FDEV_SETUP_WRITE);

durch folgende Funktion:



/* puts ist unabhaengig vom Controllertyp */
void uart_puts (char *s)
{
while (*s)
{ /* so lange *s != '\0' also ungleich dem "String-Endezeichen" */
uart_putc(*s, NULL);
s++;
}
}


und ersetze in der Main Funktion


printf("Hello World!\n");

durch:


uart_puts("Hello World!\n");

palermo
07.01.2007, 12:47
Hallo
Ja jetzt stimmts nur meckert er jetzt:

> "c:\WinAVR\compile-mega32.bat" test
compiling ...
test.cc: In function `int main()':
test.cc:24: error: `mystdout' was not declared in this scope
test.cc:24: warning: unused variable 'mystdout'
avr-objcopy: 'test.elf': No such file
OK

> Process Exit Code: 0
> Time Taken: 00:01 Zu dieser Zeile:

stdout = &mystdout;mfg palermo

m.a.r.v.i.n
07.01.2007, 13:13
Hi,
ja die Zeile muß noch weg. Einfach loeschen.

palermo
07.01.2007, 13:26
Hallo
Jepp, jetzt gehts!
mfg palermo

palermo
07.01.2007, 14:09
Hallo

#define SUART_TXD_PORT PORTB
#define SUART_TXD_DDR DDRB
#define SUART_TXD_BIT PB1
#define F_CPU 8000000

#include <avr/io.h>
#include <avr/interrupt.h>
#include <stdio.h>
#include "uart.h"
#include "uart.c"

/* puts ist unabhaengig vom Controllertyp */
void uart_puts (char *s)
{
while (*s)
{ /* so lange *s != '\0' also ungleich dem "String-Endezeichen" */
uart_putc(*s, NULL);
s++;
}
}

int main(void)
{
/* initialisieren der UART */
uart_init();

/* printf... */
uart_puts("Hello World!\n");
/* endless loop */
while(1)
{};
/* exit... (should never reached) */
return 0;
}


Was ich bei den 4 #define eintragen muss ist so ein bisschen die Frage.
#define F_CPU 8000000 ist irgendwie nicht rauszufinden wie viel der hat
#define SUART_TXD_PORT PORTB hier den Port vom PC eintragen also com irgendwas?
#define SUART_TXD_DDR DDRB ist das für die Baudrate?
#define SUART_TXD_BIT PB1 ist der Pin am Atmega? Mal angenommen ich schließe die Platine an analog3 an welcher Pin wäre das dann?
Schaltplan: http://zelos.zeit.de/wissen/robocup/hardware/pdf/schaltplaene/Schaltplan_Controllerboard.pdf Ich komme mit diesen dicken blauen Linien nicht klar.


HyperTerminal:

Wie viele bits pro Sekunde? 2400?
Wie viele Datenbits? 8?
Keine Parität?
Ein Stopbit?
Hardware Flussteuerung?



mfg palermo

m.a.r.v.i.n
07.01.2007, 14:26
Hi,

ja aus dem Schaltplan ist nicht genau zu erkennen welcher Port an welchen Prozessor Pin geht. Wenn du analog3 verwenden willst:

#define SUART_TXD_PORT PORTA
#define SUART_TXD_DDR DDRA
#define SUART_TXD_BIT PA3

Ohne die korrekte Prozessor Taktfrequenz stimmt die Baudrate nicht. Das heißt es wird nur Müll ausgegeben. Da es keinen externe Quarz gibt, läuft der Atmega32 mit internem Takt, d.h. mit 1,2,4, oder 8Mhz. Am bestens also ausprobieren.

Hyperterminal:
Baudrate ist 9600
Datenbit 8
keine Parity
Stopbits 1
keine Hardware Flusssteuerung

palermo
07.01.2007, 14:32
Hallo

> "c:\WinAVR\compile-mega32.bat" test
compiling ...
In file included from test.cc:10:
uart.c:14:1: warning: "SUART_TXD_PORT" redefined
test.cc:1:1: warning: this is the location of the previous definition
uart.c:15:1: warning: "SUART_TXD_DDR" redefined
test.cc:2:1: warning: this is the location of the previous definition
uart.c:16:1: warning: "SUART_TXD_BIT" redefined
test.cc:3:1: warning: this is the location of the previous definition
OK

> Process Exit Code: 0
> Time Taken: 00:01

mfg palermo

m.a.r.v.i.n
07.01.2007, 17:11
Hi,

Die Zeilen mit den defines sind doppelt definiert. Einmal in uart.c und einmal in test.cc. Lösche die Zeilen aus der test.cc und ändere nur die Zeilen in uart.c.

palermo
08.01.2007, 09:55
Hallo
Ja, jetzt gehts. Ist in uart.c kein #define F_CPU? Ich habe es jetzt in test.cc gelassen.
mfg palermo

m.a.r.v.i.n
08.01.2007, 10:07
Hi,

F_CPU stand im Makefile. Dann laß es mal besser in test.cc.

palermo
08.01.2007, 10:16
Das Programm ist jetzt auf dem BobbyBoard drauf und ich habe die Verbindung mit HyperTerminal aufgerufen was nun?

m.a.r.v.i.n
08.01.2007, 10:24
Hi,

das Wandler Board ist auch angeschlossen?
mit etwas Glück sollte beim Einschalten oder Reset des BobbyBoards der Text auf dem Hyperterminal angezeigt werden. Falls nur irgenwelche lustigen Zeichen dargestellt werden, stimmt die Baudrate nicht, d.h. F_CPU muß angepaßt werden. Wenn gar nichts geht, hilft wohl nur ein Multimeter weiter.

Edit:

Ich sehe gerade die Versorgungsspannung für den Analogport muß man auch inoch einschalten. Leider sieht man aus dem Schaltplan nicht, welcher Port das ist. Gibt es darüber eine Doku oder eine Funktion?

palermo
08.01.2007, 10:51
Hallo
Also erstmal passiert leider gar nichts beim einschalten. Den Befehl kann ich mal eben raus suchen. Ich probier jetzt noch mal einen anderen com.
mfg palermo

palermo
08.01.2007, 11:13
Hallo
Der Befehl um analog3 high zu setzen lautet: powerOn(3);
Wohin damit?
mfg palermo

m.a.r.v.i.n
08.01.2007, 12:07
na ja, in die test.cc. Am besten hinter uart_init().

palermo
08.01.2007, 12:17
Hallo
Hello World!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!
Es Funktioniert!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !
Vielen Dank für eure (vor allem m.a.r.v.i.ns) Hilfe!!!!!!!!!!!!!!!!!!!!
\:D/ \:D/ \:D/ \:D/ \:D/

m.a.r.v.i.n
08.01.2007, 12:32
Hi,

Klasse. War ja eine etwas schwierige Geburt. Aber wenn es funktioniert, hat sich die Mühe ja gelohnt. Andere Qfix User werden es dir danken.

palermo
08.01.2007, 17:29
Hallo
Kann der Crash Bobby eigentlich auch Pixel "senden" oder nur Zahlen und Buchstaben? Also ich meine ob man sich die Karte als solche direkt mit HyperTerminal angucken kann oder nur in Textform.
mfg palermo

palermo
08.01.2007, 18:29
Hallo

Zeilenunterschiede
..........................werden
....................................ja
......................................irgendwie
.................................................. ..so
seltsam dargestellt wenn du verstehst was ich meine. Kann man das unterdrücken? Wie macht man Absätze (also eine Zeile frei)? Ich bin bei Google nicht fündig geworden aber vielleicht kennst du ja eine Übersicht der Befehle von der uart lib.
mfg palermo

m.a.r.v.i.n
08.01.2007, 22:33
Hi,

Über Hyperterminal kann man nur Zahlen oder Buchstaben darstellen. Es gibt aber auch Terminalprogramme, wie z.B. AvrTerm (http://www.rowalt.de/mc/avr/toolsd.htm), die Zahlen als Kurve darstellen können.

Den Zeilenumbruch kann man durch das Steuerzeichen \r erzwingen.
Probier mal:

uart_puts("Hello World\r\n");

palermo
11.01.2007, 14:22
Hallo
Sorry, ich habe ganz vergessen zu antworten. Jetzt schreibt er in HyperTerminal untereinander, Danke. Ich werde mir vielleicht mal AvrTerm runterladen das klingt ein bisschen umfangreicher als nur HyperTerminal.
mfg palermo

palermo
11.01.2007, 18:10
Hallo
Sind sterio Klinkenstecker 3 Polig?
mfg palermo

m.a.r.v.i.n
11.01.2007, 19:31
Hi,
ja, links, rechts und Masse

palermo
17.01.2007, 16:03
Hallo
Ich würde es sehr praktisch finden wenn auf der Platine ne LED drauf wär die ein bischen leuchtet (oder flackert) wenn bits an den PC geschickt werden. Also im Prinziep bei T1IN/T1OUT ne LED hin. Was müsste ich genau machen? Hier nochmal der Schaltplan: http://elektronik.kai-uwe-schmidt.de/index.php?page=pic_rs232
mfg palermo

palermo
26.01.2007, 16:37
Hallo
Ich habe es jetzt geschafft das der bobby eine Karte in Asci Zeichen(irgendwie so heißen die Dinger doch, oder?) ausgibt in der die Sharp Werte in cm vor, links und rechts vom bot eingezeichnet sind. Als weiteren Schritt habe ich geplant die Sharps auf Servos zu schrauben und somit den kompletten Raum um den Crash Bobby in die Karte einzeichnen zu können. Leider gibt es dabei noch ein paar probleme.
Siehe auch: https://www.roboternetz.de/phpBB2/viewtopic.php?t=27145&sid=72bbd90a591b150cb445dedd3ad8c785
mfg palermo