Terminal by mel prijmout co posilas, dej si zobrazeni v hexu a uvidis. Ale pokud jsou tam jen ty otazniky, tak to dela spis VB. Misto znaku s bajtovou hodnotou nad 127 posila otazniky. Tim prekodovanim pred vysilanim bys to mel odstranit a mel by to posilat v kodove strance napsane v tom prikazu (cestina je 1250). Az ti bude terminal zobrazovat misto diakritiky nejake nesmysly, pak bude treba nastavit v nem jen prislusne kodovani ve kterem to posilas, ale pokud jsou tam jen otazniky, tak to nejspis vubec neodchazi.
Založen: Mar 19, 2011 Příspěvky: 1887 Bydliště: Jižní Čechy Dačicko
Zaslal: út květen 25 2021, 20:26 Předmět:
Tak dík, měl jsi pravdu. chtělo to překodovat ve VB. nějak se mi to nedařilo, ale zašel jsem na 3 na zahrádku a už to běhá
Teď mě čeká opačný postup, příjem na com port. Tam mi to zatím nedělá vůbec nic
Založen: Mar 19, 2011 Příspěvky: 1887 Bydliště: Jižní Čechy Dačicko
Zaslal: st květen 26 2021, 12:23 Předmět:
Tak díky uživateli termit256 mi odesílání funguje i s diakritikou:
tady je kód:
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim DATA As String = "zkušební data"
Dim com As IO.Ports.SerialPort =
My.Computer.Ports.OpenSerialPort("com4")
com.Encoding = System.Text.Encoding.GetEncoding(1250)
com.WriteLine(DATA)
com.Close()
End Sub
ale už druhý den se potím nad příjmem a zatím stále nic
mám tento kód :
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Dim DATA As String
Dim com As IO.Ports.SerialPort =
My.Computer.Ports.OpenSerialPort("com4")
com.ReadTimeout = 3000
DATA = com.ReadLine()
TextBox1.Text = (DATA)
End Sub
Tohle jen pripoji prijaty text (Incoming) k vystupu (returnStr) a odradkuje.
Po hw strance to mas v poradku? (v nejakem terminalu se data prijimaji?)
Ten kod jsem nepsal ja, je to nejaka ukazka cteni z portu od microsoftu, tak by to snad melo fungovat.
Založen: Nov 20, 2012 Příspěvky: 1453 Bydliště: Praha
Zaslal: st květen 26 2021, 16:08 Předmět:
Abys mohl číst data pomocí metody ReadLine, tak musí být data ukončena řetězcem, který je nastaven v NewLine. Standardně je to "Line Feed", ASCII hodnota 0x0A.
Založen: Mar 19, 2011 Příspěvky: 1887 Bydliště: Jižní Čechy Dačicko
Zaslal: st květen 26 2021, 16:30 Předmět:
Asi máš pravdu, protože když dám ReadByte a zruším odřádkování, tak se mi to vypíše v DEC tvaru Odešlu AHOJ PANE a textboxu mám 657279743280657869
můžeš mi prosím poradit jak to nastavit, Teprve se s VB učím a moje anglina není nejlepší Já maturoval ještě z ruštiny
tady je kód:
Dim returnStr As String = ""
Dim com1 As IO.Ports.SerialPort = Nothing
Try
com1 = My.Computer.Ports.OpenSerialPort("COM4", 9600)
com1.ReadTimeout = 10000
Do
Dim Incoming As String = com1.ReadByte()
If Incoming Is Nothing Then
Exit Do
Else
returnStr &= Incoming
TextBox1.Text = (returnStr)
End If
Loop
Catch ex As TimeoutException
returnStr = "KONEC."
Finally
If com1 IsNot Nothing Then com1.Close()
End Try
Jako terminál používám Hercules 3.2.8 Mám dva převodníky USB/UART propojený křížem a mám je zasunutý ve dvou USB na PC.
Založen: Mar 19, 2011 Příspěvky: 1887 Bydliště: Jižní Čechy Dačicko
Zaslal: st květen 26 2021, 20:41 Předmět:
Tak s tím com1.NewLIne = "!" to funguje. Pro pokusy dobrý, tam ten ukončovací znak můžu dát, ale jak to udělám např. při komunikaci s GSM modulem, který na různé dotazy odpovídá bez toho konkrétního ukončovacího znaku?
Nevim co mas za gsm modul, ale co si matne vzpominam, odpovedi v prikazovem rezimu byly ukoncovany CR LF (odentrovanim) coz si nastavis misto toho vykricniku nebo co tam mas ted.
com1.NewLine = vbCrLf
Naposledy upravil termit256 dne st květen 26 2021, 22:22, celkově upraveno 1 krát.
Založen: Mar 19, 2011 Příspěvky: 1887 Bydliště: Jižní Čechy Dačicko
Zaslal: st květen 26 2021, 22:20 Předmět:
Dík. Na GSM teprve čekám, neb ten co mi přišel minule byl KO. Dočetl jsem se, že příkazy do modulu musí být ukončeny tím CR LF, ale že tím jsou ukončeny i odpovědi jsem netušil. Až modul přijde budu zkoušet.
Časy uváděny v GMT + 1 hodina Jdi na stránku Předchozí1, 2, 3, 4Další
Strana 2 z 4
Nemůžete odesílat nové téma do tohoto fóra. Nemůžete odpovídat na témata v tomto fóru. Nemůžete upravovat své příspěvky v tomto fóru. Nemůžete mazat své příspěvky v tomto fóru. Nemůžete hlasovat v tomto fóru. Nemůžete připojovat soubory k příspěvkům Můžete stahovat a prohlížet přiložené soubory
Informace na portálu Elektro bastlírny jsou prezentovány za účelem vzdělání čtenářů a rozšíření zájmu o elektroniku. Autoři článků na serveru neberou žádnou zodpovědnost za škody vzniklé těmito zapojeními. Rovněž neberou žádnou odpovědnost za případnou újmu na zdraví vzniklou úrazem elektrickým proudem. Autoři a správci těchto stránek nepřejímají záruku za správnost zveřejněných materiálů. Předkládané informace a zapojení jsou zveřejněny bez ohledu na případné patenty třetích osob. Nároky na odškodnění na základě změn, chyb nebo vynechání jsou zásadně vyloučeny. Všechny registrované nebo jiné obchodní známky zde použité jsou majetkem jejich vlastníků. Uvedením nejsou zpochybněna z toho vyplývající vlastnická práva. Použití konstrukcí v rozporu se zákonem je přísně zakázáno. Vzhledem k tomu, že původ předkládaných materiálů nelze žádným způsobem dohledat, nelze je použít pro komerční účely! Tento nekomerční server nemá z uvedených zapojení či konstrukcí žádný zisk. Nezodpovídáme za pravost předkládaných materiálů třetími osobami a jejich původ. V případě, že zjistíte porušení autorského práva či jiné nesrovnalosti, kontaktujte administrátory na diskuzním fóru EB.