Forum | | | | Herbert N. | allô
Hab cela problem le moi qui serielle 8-matière Relaiskarte de Conrad pas ansprechen peux dans Qbasic klakerts
je verwende Prf 5.0 / Winme / P700 ( net rire qui is bien genug pour solche Sachen grins )
ici un un peu programm zum étudier quoi je faux fais: KompilierenMarqueSéparationDeclare h%,e%,a$,b$,c$,d$,e$,f$,g$
Declare Init$,Kanal1$,id%,Pause&
@CloseCom(COM1)
proc Pause
let Pause& = &GetTickCount
Let Pause& = @ADD(Pause&,100)
while @GT(Pause&,&GetTickCount)
wend
endproc
Font 1
let id% = COM1
LET h% = @OpenCom(id%,1024,1024)
@SetCom(id%:19200,N,8,1)
@SetComExt(id%,10,0,0,$0001,0,0)
LET f$ = @ReadCom$(id%,4)
Pause
LET g$ = @ComError(id%)
Pause
let Init$=CHR$(1),CHR$(5)CHR$(2),CHR$(6)
let Kanal1$=CHR$(3),CHR$(5),CHR$(8),CHR$(14)
print Fehler : ;@ComError(COM1)
@WriteCom(h%,Init$)
pause
@ReadCom$(id%,4)
Pause
@WriteCom(h%,Kanal1$)
Pause
print Init$
Print id%
LET f$ = @ReadCom$(id%,4)
Pause
print Fehler : ;@ComError(id%)
print Gelesen : ;f$
Pause
print Gelesen : ;@ReadCom$(id%,4)
Pause
@CloseCom2>(id%)
merci d'avance |
| | | | |
| | | je suis mir sûrement cela Georg ici aider peux... |
| | | | |
| | Pedro Santos | allô
Schreibe überall anstatt id% besser id$ alors une string variable
Gruss
Pedro |
| | | | |
| | Herbert N. | allô Des avec dem String is net des problem ,ou bien denkst du cela es autre probleme verursacht ? Hab am Anfang brav toujours COM1 eingetragen ,des avec id% hab aus qui Aider ( Beispielprogramm ) si je la fois den Anschluss changement veux ( suis fainéant et schreib net gern ......)
mais quand même merci |
| | | | |
| | Herbert N. | et qui is Georg??
Bzw comment peux je avec ihm contact aufnehmen diesbezüglich?
gruss Herbert |
| | | | |
| | Jac de Lad | 1. ici lacht niemand, je hab selbst ewig Profan² 5.0 benutzt.
2. tu as dans deinem Voir le texte source einiges avec Variablen vertauscht: - id$ anstelle des Handles qui Schnittstelle angegeben (siehe ReadCom, WriteCom, Comerror) - id$ souvent dans Gänsefüßchen gesetzt (pouvoir on avec Variablen nie!) - id$ wurde comme Integer declariert (muss mais un String son)
ici la fois qui korrigierte Voir le texte source (si il funktioniert peux je malheureusement pas dire, là je encore nie avec Com gearbeitet habe et aucun Com-Karten habe): KompilierenMarqueSéparationDeclare H%,E%,A$,B$,C$,D$,E$,F$,G$
Declare Init$,Kanal1$,id$,Pause&
@Closecom(h%)
Proc Pause Unnötig, da besser durch Sleep!
Let Pause& = &Gettickcount
Let Pause& = @Add(Pause&,100)
While @Gt(Pause&,&Gettickcount)
Wend
Endproc
Font 1
Let id$ = COM1
Let H% = @Opencom(id$,1024,1024)
@Setcom(Add$(id$,:19200,N,8,1))
@Setcomext(id$,10,0,0,$0001,0,0)
Let F$ = @Readcom$(id$,4)
Pause
Sleep 100
Let G$ = @Comerror(id$)
Pause
Sleep 100
Let Init$=Chr$(1),Chr$(5),Chr$(2),Chr$(6)
Let Kanal1$=Chr$(3),Chr$(5),Chr$(8),Chr$(14)
Print Fehler : ;@Comerror(h%)
@Writecom(H%,Init$)
Sleep 100
@Readcom$(h%,4)
Sleep 100
@Writecom(H%,Kanal1$)
Sleep 100
Print Init$
Print id$
Let F$ = @Readcom$(h%,4)
Sleep 100
Print Fehler : ;@Comerror(h%)
Print Gelesen : ;F$
Sleep 100
Print Gelesen : ;@Readcom$(h%,4)
Sleep 100
@Closecoms=s2>(h%)
je hoffe, cela hilft dir plus!
Jac |
| | | Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 26.02.2006 ▲ |
| |
| | GDL | Salut,
ici mon Testprogramm KompilierenMarqueSéparationcls
declare comm3%,fehler%,anzahl%,daten$
proc raus
comm3%=@OpenCom(COM1,2048,2048)
fehler%= @SetCom(COM1:9600,N,8,1)
daten$=@AnsiToOem$(5)
anzahl%=@WriteCom(comm3%,daten$)
fehler%=@ComError(comm3%)
daten$=ReadCom$(comm3%,1)
case daten$ <> :Print daten$
sleep 100
fehler%=@ComError(comm3%)
daten$=@OemToAnsi$(daten$)
case daten$=:daten$=nichts
drawtext 10,100,Schnittstellenfehler senden : +str$(fehler%)
drawtext 10,120,Gesendete Datenpakete : +str$(anzahl%)
drawtext 10,140,Empfangene Datenpackete : +daten$
drawtext 10,160,Schnittstellenfehler empfangen : +str$(fehler%)
@CloseCom(COMM3%)
endproc
===========================================================================
whilenot 0
raus
Wend
|
| | | | |
| | GDL | allô ici la fois kurz ausgebessert KompilierenMarqueSéparationDeclare H%,E%,A$,B$,C$,D$,E$,F$,G$
Declare Init$,Kanal1$,Id%,Pause&
@Closecom(COM1)
Proc Pause
Let Pause& = &Gettickcount
Let Pause& = @Add(Pause&,100)
While @Gt(Pause&,&Gettickcount)
Wend
Endproc
Font 1
Let Id% = COM1
Let H% = @Opencom(COM1,1024,1024)
@Setcom(COM1:19200,N,8,1)
@Setcomext(COM1,10,0,0,$0001,0,0)
Let F$ = @Readcom$(H%,4)
Pause
Let G$ = @Comerror(h%)
Pause
Let Init$=Chr$(1),Chr$(5)Chr$(2),Chr$(6)
Let Kanal1$=Chr$(3),Chr$(5),Chr$(8),Chr$(14)
Print Fehler : ;@Comerror(h%)
@Writecom(H%,Init$)
Pause
@Readcom$(h%,4)
Pause
@Writecom(H%,Kanal1$)
Pause
Print Init$
Print h%
Let F$ = @Readcom$(h%,4)
Pause
Print Fehler : ;@Comerror(h%)
Print Gelesen : ;F$
Pause
Print Gelesen : ;@Readcom$(h%,4)
Pause
@Closecom(h%)
waitinput
|
| | | | |
| | GDL | Nochmal je
lass toi s'il te plaît pas par COM3 irritieren, habe là mon Versuchsboard hängen.
Habe là den Compiler so eingestellt, dass cela trop empfangene Byte um une augmenté wird et ensuite zurückgeschickt wird.Votre données volonté zwar gesendet, mais pas erkannt.seulement qui données dans qui Whilenot schleife volonté erkannt. KompilierenMarqueSéparationDeclare H%,E%,A$,B$,C$,D$,E$,F$,G$
Declare Init$,Kanal1$,Id%,Pause&,anzahl%
@Closecom(COM1)
Proc Pause
Let Pause& = &Gettickcount
Let Pause& = @Add(Pause&,100)
While @Gt(Pause&,&Gettickcount)
Wend
Endproc
Font 1
Let Id% = COM1
Let H% = @Opencom(COM3,1024,1024)
@Setcom(COM3:19200,N,8,1)
@Setcomext(COM1,10,0,0,$0001,0,0)
Let F$ = @Readcom$(H%,4)
Pause
Let G$ = @Comerror(h%)
Pause
Let Init$=Chr$(1),Chr$(5)Chr$(2),Chr$(6)
Let Kanal1$=Chr$(3),Chr$(5),Chr$(8),Chr$(14)
Print Fehler : ;@Comerror(h%)
@Writecom(H%,Init$)
Pause
@Readcom$(h%,4)
Pause
@Writecom(H%,Kanal1$)
Pause
Print Init$
Print Kanal1$
Let F$ = @Readcom$(h%,4)
Pause
Print Fehler : ;@Comerror(h%)
Print Gelesen : ;F$
Pause
Print Gelesen : ;@Readcom$(h%,4)
Pause
=================================================================================
whilenot 0
settimer 100
waitinput
killtimer
init$=001 Hier die Anzahl der Sendebytes
anzahl%=@Writecom(H%,Init$)
Let G$ = @Comerror(h%)
pause
Let F$ = @Readcom$(h%,4)
Let G$ = @Comerror(h%)
drawtext 10,150,Eingang : +f$
drawtext 10,170,Gesendet : +str$(anzahl%)
wend
@ | 26.02.2006 ▲ | |
| |
| | Peter Max Müller | peut-être la fois là regarder: [...]
Ciao |
| | | | |
| | Jac de Lad | je suis curieux geworden: je serait gern une carte avec LCD à qui seriellen Schnittstelle ansprechen. Hat quelqu'un ne Ahnung, wohin je une kostengünstige herbekomme, qui avec XProfan programmierbar ist?
Jac |
| | | Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 02.03.2006 ▲ |
| |
| | RGH | Salut, justement, quoi qui serielle Schnittstelle angeht, so hat es im Laufe qui Zeit quelques wesentliche Detailverbesserungen gegeben! Pour aktuelle schnelle calculateur ist qui Erweiterung ausa XProfan 9 important: qui TimeOuts peut extra eingestellt volonté. normalement ist cela mais pas nötig. dans précédent Versionen wurden qui TimeOuts dans Profan voreingestellt. malheureusement führet cet Voreinstellung chez schnelleren le calcul dans eingen Fällen en supplément, qui qui liaison pas korrekt zustande venez. Ab Version 9.1 ist aussi cela Senden et Empfangen eines individuel zéro-Bytes ne...aucune Problem plus.
Salut Roland |
| | | Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 03.03.2006 ▲ |
| |
|
répondreOptions du sujet | 9.119 Views |
Themeninformationencet Thema hat 10 participant: |