Nie miał chłop problemu , to go sobie wymyślił ćwiczę przesyłanie danych przez HC-05 i urodził się problem .
Odczyt jednego znaku Ascii nie jest problemem , to ich połączenie w jeden ciąg lub odebranie n,znaków daje mi nieźle w koś .
Jak już wiadomo w transmisji danych i ich obróbce jestem cieniutki , ale cięgle próbuję czegoś się nauczyć
Poniżej moje dzisiejsze wypociny .
Co zamierzałem osiągnąć ? odebrać trzy znaki Ascii (liczby) , połączyć w jedną zmienną string i zwrócić z tej zmiennej wartość do zmiennej Word .
- $regfile = "m8def.dat"
- $crystal = 8000000
- $hwstack = 32
- $swstack = 16
- $framesize = 32
- $baud = 9600
- Config Serialin = Buffered , Size = 10
- Config Lcd = 20 * 4
- Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 , E = Portc.1 , Rs = Portc.0
- Dim Suma As String * 3 , A As String * 1 , B As String * 1 , C As String * 1
- Dim Serial_flag As Byte
- Dim Serial_rx(3) As Byte
- Dim Liczba As Word
- Cursor Off
- Cls
- Enable Interrupts
- Do
- Serial_flag = Ischarwaiting()
- If Serial_flag = 1 Then
- Inputbin Serial_rx(1) , 3
- A = Chr(serial_rx(1) , 1)
- B = Chr(serial_rx(2) , 1)
- C = Chr(serial_rx(3) , 1)
- Locate 1 , 1 : Lcd "znak1 " ; A ; " "
- Locate 2 , 1 : Lcd "znak2 " ; B ; " "
- Locate 3 , 1 : Lcd "znak3 " ; C ; " "
- Suma = Space(3)
- Insertchar Suma , 1 , A
- Insertchar Suma , 2 , B
- Insertchar Suma , 3 , C
- Liczba = Val(suma)
- Waitms 100
- Locate 4 , 1 : Lcd "Txt " ; Suma ; "Dec->" ; Liczba ; " "
- End If
- Waitms 100
- Loop
- End