主題:EM9160 COM3通信問(wèn)題 共有36061人關(guān)注過(guò)本帖 |
---|
diaryon |
1樓 |
EM9160 COM3通信問(wèn)題 Post By:2009-1-12 21:35:00 [只看該作者]
你好:
    最近在用EM9160作板子,在調(diào)試程序時(shí)發(fā)現(xiàn)一個(gè)很奇怪的問(wèn)題,已經(jīng)困惑了一個(gè)星期了,不知何故。我們自己作了一個(gè)底板,在底板上有一片STM32單片機(jī)進(jìn)行AD采樣,并將數(shù)據(jù)通過(guò)串口(baud=115200)向外傳送。用工業(yè)控制計(jì)算機(jī)COM1/COM2可以接受單片機(jī)采集的信號(hào),用EM9160不能接受串口數(shù)據(jù)(償試過(guò)交換RS232 TX/RX信號(hào)線)。但是EM9160卻能接收來(lái)自工業(yè)控制計(jì)算機(jī)的RS232信號(hào),用示波器查看峰峰值為15V。如果用計(jì)算機(jī)作為調(diào)試設(shè)備,兩頭都是好的,但是兩個(gè)設(shè)備之間卻不能通信,我應(yīng)該怎么來(lái)改決這個(gè)問(wèn)題? ┌────┐   Rx     ┌───────┐ │計(jì)算機(jī)  │ ======   │ EM9160評(píng)估板 │  (可以通信) └────┘   Tx     └───────┘ ┌────┐   Rx     ┌───────┐ │ 計(jì)算機(jī) │ ======   │ STM32單片機(jī)  │  (可以通信) └────┘   Tx     └───────┘ ┌──────┐    Rx     ┌───────┐ │STM32單片機(jī) │  ======   │ EM9160評(píng)估板 │   (不能通信) └──────┘   Tx      └───────┘ |
|
單帖管理 | 引用 | 回復(fù) |
x10 |
2樓 |
Post By:2009-1-13 9:07:00 [只看該作者]
請(qǐng)確認(rèn)STM32單片機(jī)串口接口電平是TTL或RS232C,EM9160上不同串口有不同的接口電平,其中COM3為RS232C電平(+/-9V),但注意COM3是通過(guò)MAX202E驅(qū)動(dòng)的,不像PC那樣有很強(qiáng)的驅(qū)動(dòng)能力。如果接到TTL電平的串口,通訊不正常。
|
|
單帖管理 | 引用 | 回復(fù) |
diaryon |
3樓 |
Post By:2009-1-13 12:11:00 [只看該作者]
今天早上找到問(wèn)題了,在等待接收數(shù)據(jù)時(shí),需要寫數(shù)據(jù)出去才能收數(shù)據(jù),真奇怪.
改以前代碼: if( WaitCommEvent(m_hAdSerial,&dwEvtMask, NULL)) 改后代友: Sleep(50); WriteFile(m_hAdSerial,"0",1,NULL,NULL); Sleep(50); if( WaitCommEvent(m_hAdSerial,&dwEvtMask, NULL)) |
|
單帖管理 | 引用 | 回復(fù) |