I run into same issue, again. I needed to create full serial port emulator, like FT232, and to do some other things with pic.
I spent almost a week, trying to get C to work, and decided to give PBP another try.
This time with good result.
To get baud rate, parity and stop bits from original CDC demo, use this code
Code:
BaudRate var long BANKA SYSTEM
StopBits Var Byte BANKA SYSTEM ;0=1 stop bit, 2=2 stop bit
ParityType Var Byte BANKA SYSTEM
DataBits Var Byte BANKA SYSTEM
Main: ' original code from CDC example
GOSUB GetLineCoding 'get baudrate etc... Should do that regularly and check if anything is changed
GetLineCoding:
asm
movlb high _USBMEMORYADDRESS ; Point to proper bank
movf line_coding + dwDTERate, W
movwf BaudRate
movf line_coding + dwDTERate + 1, W
movwf BaudRate + 1
movf line_coding + dwDTERate + 2, W
movwf BaudRate + 2
movf line_coding + dwDTERate + 3, W
movwf BaudRate + 3
movf line_coding + bCharFormat, W
movwf StopBits
movf line_coding + bParityType, W
movwf ParityType
movf line_coding + bDataBits, W
movwf DataBits
endasm
RETURN
Bookmarks