Hallo, ich möchte gerne einestring über portB.6 eine string senden die etwa so aussieht... 3B 78 12 00 00 47 C4 02 05 FF FF 6F 04 Programiert habe ich es so... $baud = 9600 $crystal = 3532900 $regfile = "8515def.dat" Dim A As Byte , S As String * 38 A = "3B 78 12 00 00 47 C4 02 05 FF FF 6F 04" Serout A , 38 , B , 6 , 9600 , 1 , 8 , 2 end Mein problem fängt hier an. Mit PRINT A bekommen ich den string, jedoch wenn ich den portB.6 auslese bekomme ich einen langen string die so aus sieht... 33 42 20 37 38 20 31 32 20 30 30 20 30 30 20 34 37 20 43 34 20 30 32 20 30 35 20 46 46 20 46 46 20 36 46 20 30 34 Die jeweiligen buchstaben und zahlen wird in ASCII umgewandelt. Was muss ich machen damit ich auch die richtigen daten am port auslesen kann? In Thema DELPHI bin ich ziehmlich weit aber mit AVR habe ich erst angefangen. mfG Eray
Hi, gibt es da etwa eine andere methode als... "Serout A , 38 , B , 6 , 9600 , 1 , 8 , 2" Könnte ich vielleicht die daten auch mit der "Config Serialout = Buffered , Size = 38" methode senden. Ich habe paar versuche gemacht, jedoch war nichts am port zu empfangen. Ich benutze zur Zeit einen sg. FUN-Card. http://www.maxking.co.uk/images/funcardchip.jpg Wie kann ich die daten an die portB.6 so zuweisen, dass ich auch die gewünschte format bekomme? Ich hoffe das jemand mir helfen kann. Dank im vorraus, Eray
Hallo probier mal folgendes: $baud = 9600 dim t as byte dim b as byte restore DTA for t = 1 to 4 ' anpasssen an Anzahl Bytes read b ' Zeichen aus Tabelle lesen print chr(b); ' und ausgeben next t end dta: data &H3b , &H78 , &H12 , &H00 ' und so weiter Gruss Bernd
Hallo, danke für´s Antwort. Leider gibt es keine reaktion auf dem port. Ich habe die code genauso eingegeben wie du es gepostet hast. Sollte ich da etwa die port eingeben?
So wie beschrieben wird der eingebaute Uart mit den entsprechenden Pins benutzt. statt Print chr(b) müsste der Befehl für Software-Uart lauten: Serout b , 0 , B , 6 , 9600 , 1 , 8 , 2 habe ich aber nicht auspobieren können. Bernd
Abend, somit habe ich wieder rum einen sehr langen und undefinierbaren string bekommen. 77 5E 07 70 00 00... usw. Irgend etwas scheint nicht zu stimmen, aber was? Wenn ich die daten in dem Eeprom eingebe, und das von Eeprom aus sende, wie müsste ich denn dann vorgehen? Oder geht es wieder rum nicht?
Noch eine andere Methode die ich vergessen hatte: open "comb.6:9600,8,N,2" for output as #1 dim t as byte dim b as byte restore DTA for t = 1 to 4 ' anpasssen an Anzahl Bytes read b ' Zeichen aus Tabelle lesen print #1 chr(b); ' und ausgeben next t end dta: data &H3b , &H78 , &H12 , &H00 ' und so weiter Daten können nicht direkt aus dem EEProm mit Restore geladen werden. $EEprom dta: data &H3b , &H78 , &H12 , &H00 ' und so weiter speichert die Daten ins EEprom. Auslesen kann man die Daten z.B. READEEPROM. Bernd
Hi, diesen zeile will der Bascom nicht komplimieren. Wenn ich "#1" rausnehme, tut es complimieren aber bei portB.6 ist kein reaktion. Muss da etwa wieder anstatt print, serout ausdruck geben? Zu Thema "eeprom"... Die versuche mache ich mit einem FUN-Card (smartcard), und in dem Karte ist eine integrierte eeprom (AT24C64). http://www.maxking.co.uk/images/funcardchip.jpg Wenn ich die daten in dem externen eeprom einspeise, und bei bedarf die adresse abrufe. Aber laut schaltbild gehen die daten über die portb.0 oder portB.1 in dem prozessor, und dann wieder raus. Also ohne den problem mit dem HEXADEZIMAL zu lösen, würde ich wieder "33 42" statt "3B" bekommen. Danke für dein Hilfsbereitschaft! Eray
Hallo print #1, chr(b); ' und ausgeben fehlte ein Komma nach dem #1. Ohne Komma werden die daten auf den Hardware-Uart ausgegeben. In der Hilfe sind die Befehle mit Beispiel erklärt. Das EEprom kann über die SPI- oder I2C Befehle ausgelesen (und programmiert) werden. Leider kenne ich diese seriellen EEprom nicht. Bernd
Danke Bernd. Leider hat das mir auch nicht geholfen. In der Hilfe datei habe ich auch über diesen thema durchsucht, aber leider gabs da auch keine formel, die hexadezimal daten umwandelt, oder anders rum. Ich werde nochmal Google´n. Vielleicht werde ich da einen formel finden! ;) Oder vielleicht kennt sich ein anderer mit diesem problematik aus.
Was für Hexadezimalzahlen sollen denn umgewandelt werden? Stehen die Daten schon fest (davon gehe ich mal aus) kann der Compiler diese umwandlen. Die Eingabe erfolgt dann mit : Data &H1a, &Hcd &Hef usw. direkt in Hexadezimal. Bernd
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.