對CH432Q的CTS/RTS線的理解,不知正確與否?

CTS線:MODEM通知CH432Q此時MODEM是否可以接收CH432Q發(fā)來的新數(shù)據(jù),指示CH432Q此時是否允許發(fā)送。

RTS線:CH432Q通知MODEM此時CH432Q是否可以接收MODEM發(fā)來的新數(shù)據(jù),指示MODEM此時是否允許發(fā)送。

程序中:1若檢測到CTS無效則不再向發(fā)送寄存器(THR)寫數(shù)據(jù)

2若進入接收數(shù)據(jù)可用中斷(接收到的字節(jié)數(shù)達到FIFO的觸發(fā)點),此時無效RTS線。直到FIFO為空時,才有效RTS線

不知以上的理解和編程思路正確與否?

理解完全正確,程序上第2點是有硬件自動完成,設置MCR 寄存器的AFE和RTS 都為1就可以了.


好的,謝謝

關(guān)于程序中第1點:如果開啟AFE時,向CH432Q發(fā)送寄存器(THR)寫數(shù)據(jù)時可以只檢測LSR的THRE位是否為1,若為1則一次性寫入16個字節(jié)(開啟FIFO),而不用檢測此時CTS的狀態(tài),這樣是否可以呢?


那樣也可以,您可以直接在THRE為1的時候就寫,那樣速度就快點.


另外再問個問題,是關(guān)于DCD,DSR和DTR線的,我在閱讀DEMO程序時僅在Modem_Ctrl中看到對于DSR和CTR的檢測。

我想問下使用全功能Modem接口與Modem通信時,是不是可以忽略對DCD,DSR和DTR線的操作?只管CTS/RTS/TXD/RXD就可以了?


MODEM 輸入變化的時候,會產(chǎn)生中斷,清除中斷的方法是直接讀MSR的寄存器就可以了,最好別忽略.


呃,我想再問下,如果加入對DCD,DSR檢測和對DTR線的操作,在Modem上電后是不是應該先有效DTR線,然后檢測DSR線是否有效,那么對DCD線的檢測應該放在什么時候呢?

還有就是DCD信號一般什么情況下會有效?是不是MCU與MODEM開始收發(fā)數(shù)據(jù)后就會產(chǎn)生?


關(guān)于UART的Modem信號說明: 輸出信號:RTS/DTR 輸入信號:CTS/DSR/RI/DCD 你可以控制RTS/DTR拉高拉低,根據(jù)雙方通訊協(xié)議 你也可以檢測CTS/DSR/RI/DCD信號狀態(tài),根據(jù)雙方通訊協(xié)議


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

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