CH9434 串口可以接收數據,不能發(fā)送數據

配置:波特率:115200、接收FIFO觸發(fā)256字節(jié)、FIFO使能、

問題:接收數據正確:接收指示燈閃爍并且接收數據正確;調用 CH9434UARTxSetTxFIFOData()子程序,每1S間隔發(fā)送3個字節(jié)數據,發(fā)送數據指示燈不閃爍,沒有數據發(fā)出;

現象:使用示波器測試SPI發(fā)送數據正確,在每一次發(fā)送數據時,會讀取FIFO寫計數器長度,長度按照 X-3 規(guī)律進行;

請問各位大佬,這會是什么問題?

您好這樣的情況建議直接測量9434的TX上有沒有實際的波形,同時往發(fā)送FIFO填送數據時, 可以讀取下LSR寄存器的狀態(tài)


配置:波特率:9600、使用linux RK3568

問題:1.ch9434 串口不能接收數據

????????? ?2.ch9434 串口發(fā)送數據 有個別字節(jié) 高位/低位與寫入寄存器的不一致

現象:1.驅動中斷 未調用成功

????????? ?2.例:芯片發(fā)送?01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15

???????????????????? 串口調試助手會收到?31 32 B3 04 05 06 07 0A 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 E5

請問各位大佬,這會是什么問題?



樓上問題已通過其他平臺溝通解決


TX上沒有實際的波形,同時往發(fā)送FIFO填送數據時, 讀取LSR寄存器 = 0x00

但是 測試SPI發(fā)送數據是正確的,9434初始化、端口初始化是按照咱們提供的示例程序


串口是否有轉485信號,如果有,需要使能TNOW引腳,還有可以將目前串口初始化部分的代碼貼出看下


1、主控芯片發(fā)送 3字節(jié)/秒 ,示波器在9434芯片的TXD沒有檢測到信號;

2、使能TNOW后,端口485沒有輸出信號;

3、串口初始化內容如下:示例程序在附件中

(1)初始化芯片電源時鐘寄存器0x48:使用外部晶振并開啟倍頻、分屏系數13(11001101b);
(2)初始化串口配置:

????????◆LCR:8個數據位、1個停止位、無校驗位、(00000011b);

????????◆DLM:DLL:[ ((32M*15/13)*10/8/115200)+5]/10 = 40(0x00 0x28);

????? ??◆FCR:接收FIFO觸發(fā)字節(jié)256B、接收FIFO清空、發(fā)送FIFO清空、FIFO使能(00000111b);

????? ??◆MCR:AFE使能、OUT2中斷使能、RTS使能中斷、DTR使能(xx101011b);

????? ??◆IER:線路中斷使能、發(fā)送中斷使能、接收終端使能(00000111b);

4、循環(huán)發(fā)送 3個字節(jié)/秒;

icon_rar.gifCH9434.zip



首先第一點,串口初始化部分,流控使能全部關掉,不管是單穿的串口還是轉485,都不需要開啟流控使能,這個是針對232串口功能的,會影響串口的發(fā)送,至于TNOW引腳,建議先去掉485,單獨調試9434的TTL串口是否正常,正常后再連接上硬件開啟tnow使能調試485


程序循環(huán)邏輯:接收到的字節(jié)內容 后將接收數據發(fā)送回PC端;
問題:
1、串口0接收發(fā)送數據正常、同樣的串口初始化配置,串口1接收1次數據后,INT端口輸出低電平,一直有接收中斷產生;
2、按照初始化串口0的配置,同樣初始化串口2、3之后,接收數據后返回數據有亂碼,例如:

接收數據(十六進制):AA、CC、55、BB
返回數據(十六進制):AA、0E、0E、CC、0E、0E、55、0E、0E、BB、0E、0E



循環(huán)發(fā)送,是否是串口的TXRX相互短接,串口1一直有中斷,可以看下RX引腳是否有電平變化,說明一直有數據進來,另外后續(xù)回復可以聯系xcc@wch.cn郵箱


上電時間久了之后,發(fā)送的數據會多一個字節(jié)


只有登錄才能回復,可以選擇微信賬號登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频