Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi UART Terminal-Programm zur Kommunikation mit ATmega8 µC (https://www.delphipraxis.net/85435-uart-terminal-programm-zur-kommunikation-mit-atmega8-%B5c.html)

jo_gammler 13. Jun 2007 16:30

Re: UART Terminal-Programm zur Kommunikation mit ATmega8 µC
 
Ich hab mir gedacht es ist einfacher wenn ich die zahl in nem string sende könnte ich das evtl so lösen?

Delphi-Quellcode:
var i:integer
begin
i:=1;
comport1.write(inttostr(i));
end
????

Der_Unwissende 13. Jun 2007 16:36

Re: UART Terminal-Programm zur Kommunikation mit ATmega8 µC
 
Zitat:

Zitat von jo_gammler
Ich hab mir gedacht es ist einfacher wenn ich die zahl in nem string sende könnte ich das evtl so lösen?

Einfacher ist in diesem Fall relativ. Erstmal empfehle ich Dir, dass Du einfach mal die Hilfe zu TComPort runterlädst und Dir anschaust. Da findest Du dann den Eintrag TComPort.WriteStr, rate mal was der macht :wink:

Jedenfalls ist nur das verschicken des Strings einfacher. Auf der Seite des Empfängers hast Du ein Problem mehr, dein AT Mega muss nun einen String in eine Zahl umwandeln. Gerade bei solchen CPUs, die meistens nicht gerade überdimensionierte Rechenleistung besitzen und von denen gerne Teile zum Energiesparen abgeschaltet werden, sollte man nicht mit unnötigen Berechnungen belasten. Möglich ist es, die Frage ist aber ob es Sinnvoll ist (Du verschiebst die Arbeit dorthin, wo sie nur schwerer ist).
Überträgst Du einen 32 Bit Wert, so kannst Du den auf der anderen Seite ganz einfach durch Shiften und addieren (oder logisches Oder), zusammensetzen. Die Umwandlung eines Strings in eine Zahl ist da schon aufwendiger. Kommst Du mit den Zahlen 0..255 aus, so kannst Du natürlich auch auf Seiten von Delphi ein einzelnes Byte verschicken, entsprechend wählst Du aber auch als Datentyp nicht Integer, sondern Byte. In dem Fall musst Du dann auf der Empfängerseite auch nichts beachten.

jo_gammler 13. Jun 2007 16:45

Re: UART Terminal-Programm zur Kommunikation mit ATmega8 µC
 
eigentlich war dass sowieso alles doof.
Ich will in meinem µC eigl nichts anderes wie

if input=1
then folge linie

if input=2
then 180° drehung


...
...


und dass kann ich auch mit strings lösen
aber noch einfacher ist das mit bytes :wall: :wall: :wall:

Manado 13. Jun 2007 19:51

Re: UART Terminal-Programm zur Kommunikation mit ATmega8 µC
 
aha ein roboterbauer am start...schick mal ein Foto/Video...

-->nehm am besten transmitchar(chr(hier kommt eine zahl von 0 bis 255));
damit wird einfach die zahl gesendet. Im Miggo gibts ja den Uart befehl zum empfangen ich glaube UDR heisst das register, da steht der wert dann drin. ich empfehle interrupts. ist ganz easy.
gruss, moritz

jo_gammler 13. Jun 2007 20:24

Re: UART Terminal-Programm zur Kommunikation mit ATmega8 µC
 
Hier ist ein Link zu unserem Roboter
weiter unten in dem thread ist die aktuelle version

Ich mache nächste woche Fotos wenn wir RoboterAG haben

EDatabaseError 13. Jun 2007 20:55

Re: UART Terminal-Programm zur Kommunikation mit ATmega8 µC
 
Ich werfe mal den Link:

http://www.roboternetz.de/

ein

Manado 13. Jun 2007 20:58

Re: UART Terminal-Programm zur Kommunikation mit ATmega8 µC
 
@jo_gammler: ich seh keinen link...? Ich hab auch mal einiges mit Roboterchen gemacht, auch mit AVRs...

Dark Angel 15. Jul 2008 12:08

Re: UART Terminal-Programm zur Kommunikation mit ATmega8 µC
 
geht das denn auch unter Delphi 2007, ich versuch das nämlich schon die ganze Zeit aber TCPort erzeugt bei mir keine grafischen "Sachen" die ich einfach so einfügen kann in mein Projekt ,wie zB eine Combobox in der ich die einzelnen Comverbindungen angezeigt bekommen.

Weiß da jemnd was??

Manado 21. Jul 2008 15:49

Re: UART Terminal-Programm zur Kommunikation mit ATmega8 µC
 
Also ich weis nur, das die installation der Com-Komponente echt nervig ist, man muss sich mega-genau an die readme-anleitung halten, tausen sachen noch nachgoogeln, dann gehts aber geil, und man zieht einfach sonen kästchen aufs formular...


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:21 Uhr.
Seite 3 von 3     123   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz