Erledigt(921600b) geht: Maximale Baudrate bei openserialport

Für allgemeine Fragen zur Programmierung mit PureBasic.
Joshua314
Beiträge: 115
Registriert: 06.04.2005 22:44

Erledigt(921600b) geht: Maximale Baudrate bei openserialport

Beitrag von Joshua314 »

Hallo Leute,

ich versuche gerade eine Kamera bei 921600 Baud an die Serielle Schnittstelle zu klemmen.
Meine Frage an die Experten. Geht diese Baudrate überhaupt oder wird die auf 115K2 gemappt.

Code: Alles auswählen

EnableExplicit

Global open.l
Global a.l
Global b.l

Global Sync.s = Space(100)
Global *Sync = @Sync

open = OpenSerialPort(0,"COM23",921600,#PB_SerialPort_NoParity,8,1,#PB_SerialPort_NoHandshake,100000,1024)
If Not open 
  MessageRequester("RSopen","Cant open")
  End
EndIf

;FFh FFh FFh AAh 0Dh 00h 00h 00h

sync =  Chr(255)+Chr(255)+Chr(255)+Chr(170)+Chr(13)+Chr(0)+Chr(0)+Chr(0)



While AvailableSerialPortInput(0) = 0 
  
  a +1 
  Debug a
  
  b = WriteSerialPortData(0, *Sync,8)
  If b = 0 
    MessageRequester("WriteSerial","Cant write")
    End
  EndIf   
 Delay (100)  
  
  
  
Wend
erzeugt keinen Fehler... geht aber nicht.

Gruß Thomas
Zuletzt geändert von Joshua314 am 03.12.2012 23:00, insgesamt 1-mal geändert.
Benutzeravatar
Kiffi
Beiträge: 10725
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Maximale Baudrate bei openserialport

Beitrag von Kiffi »

Cursor auf OpenSerialPort() setzen, <F1> drücken, lesen ;-)

Grüße ... Kiffi
a²+b²=mc²
Joshua314
Beiträge: 115
Registriert: 06.04.2005 22:44

Re: Maximale Baudrate bei openserialport

Beitrag von Joshua314 »

Kiffi hat geschrieben:Cursor auf OpenSerialPort() setzen, <F1> drücken, lesen ;-)

Grüße ... Kiffi
So gut war ich auch ......

Dann nochmals meine Frage an die Leute, welche meine Frage verstehen......

Wird die Baudrate intern auf 115K2 gemappt oder werden die 921600 Baud angewandt.
Denn eine Fehlermeldung kommt ja nicht.

Gruß Thomas
Benutzeravatar
Kiffi
Beiträge: 10725
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Maximale Baudrate bei openserialport

Beitrag von Kiffi »

Joshua314 hat geschrieben:So gut war ich auch ......
wirklich?
Joshua314 hat geschrieben:erzeugt keinen Fehler... geht aber nicht.
Joshua314 hat geschrieben:Dann nochmals meine Frage an die Leute, welche meine Frage verstehen......
ich habe lediglich freundlich darauf hingewiesen, was in der Hilfe
bzgl. der unterstützten Baudraten steht. Nun gut, dann trete ich zur
Seite und lasse die Experten vorbei...
a²+b²=mc²
Joshua314
Beiträge: 115
Registriert: 06.04.2005 22:44

Re: Maximale Baudrate bei openserialport

Beitrag von Joshua314 »

Kiffi hat geschrieben:
Joshua314 hat geschrieben:So gut war ich auch ......
wirklich?
Joshua314 hat geschrieben:erzeugt keinen Fehler... geht aber nicht.
Joshua314 hat geschrieben:Dann nochmals meine Frage an die Leute, welche meine Frage verstehen......
ich habe lediglich freundlich darauf hingewiesen, was in der Hilfe
bzgl. der unterstützten Baudraten steht. Nun gut, dann trete ich zur
Seite und lasse die Experten vorbei...


So...... Den Fehler hab ich noch nicht gefunden....... Dennoch kann ich eines berichten ....
Laut meinen Oszi kommt auch die Baudrate raus....
Also PureBasic kann 921600 Baud .

Gruß Thomas
DarkDragon
Beiträge: 6291
Registriert: 29.08.2004 08:37
Computerausstattung: Hoffentlich bald keine mehr
Kontaktdaten:

Re: Erledigt(921600b) geht: Maximale Baudrate bei openserial

Beitrag von DarkDragon »

Das hier geht auf keinem Fall:

Code: Alles auswählen

sync = Chr(255)+Chr(255)+Chr(255)+Chr(170)+Chr(13)+Chr(0)+Chr(0)+Chr(0)
Wie soll das denn funktionieren mit null-terminierten Strings? Du musst schon direkt mit dem Speicher hantieren, nicht mit Strings.
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Antworten