|
完整代碼下載:
Xserial.zip
(1.37 KB, 下載次數(shù): 167)
2016-10-18 14:53 上傳
點(diǎn)擊文件名下載附件
大家放心用,但是你們程序要好好看看,容易中斷沖突,現(xiàn)在我們也在解決中,接收和發(fā)送字符串的程序有需要的郵箱給你們發(fā)送過去
東西是好東西,我們遇到了中斷問題,有點(diǎn)麻煩,數(shù)據(jù)采集上來后用模擬串口掛到485總線,向一個控制單片機(jī)發(fā)送數(shù)據(jù),用12864顯示,但是控制單片機(jī)的串口通信的中斷和模擬串口中斷沖突,上位機(jī)和下位機(jī)沒有辦法通信,今天下午實(shí)在沒有辦法了,又做了一塊單片機(jī)最小系統(tǒng),讓采集板上的數(shù)據(jù)之間和這塊最小系統(tǒng)板進(jìn)行通信12864上顯示,現(xiàn)在還沒有想到好的解決辦法,等解決之后再告訴大家,還有就是接受字符串的時候,先進(jìn)行解包,再進(jìn)行標(biāo)識位檢測,這個程序發(fā)程序的方法是一個一個字符發(fā)送的,接收的時候要先放進(jìn)數(shù)組里面,要是有需要的可以單獨(dú)聯(lián)系我,希望大家共同進(jìn)步。
這兩天項(xiàng)目結(jié)項(xiàng),一直比較忙,沒來得及回復(fù)大家,這個程序非常有用嗎,畢竟大部分的單片機(jī)串口都是一個到兩個,有時候功能擴(kuò)展的時候,不可避免的要使用串口,當(dāng)你發(fā)現(xiàn)串口不夠用的時候,你可以使用這個程序,我把接收函數(shù)給大家參考一下
while(1)
{
if(StartBitOn())
{
Msg[i_L]=PGetChar();
if(Msg[i_L]!='a')
{
i_L++;
}
else
{
i_L=0;
chinese_disp(0,2,"溫度");//這個是12864液晶顯示函數(shù)大家不用管
}
}
}
說實(shí)話,這東西用起來雖然挺好,但是能不用就不要用,現(xiàn)在單片機(jī)大都是雙串口的,一般都夠用,我們做的東西,用52單片機(jī)模擬串口通信,模擬modbus通信,三個定時器全開,中斷全用,時序容易出錯,所以建議大家不要過多依賴模擬的東西,能花點(diǎn)錢買個好點(diǎn)片子,減少開發(fā)周期,上策。
預(yù)覽:
|
|