欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 6985|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

[求助][求助]51單片機(jī)串口數(shù)據(jù)發(fā)送和定時(shí)器中斷問(wèn)題

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:18028 發(fā)表于 2009-10-12 21:48 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式

單片機(jī)型號(hào)是AT89LS52

現(xiàn)在的程序結(jié)構(gòu)是:

timer0:由蜂鳴器操作觸發(fā),觸發(fā)期間大概每0.3毫秒中斷一次,中斷服務(wù)函數(shù)處理少量蜂鳴器代碼(7行);

timer1:從系統(tǒng)啟動(dòng)到關(guān)機(jī)結(jié)束一直開(kāi)啟,每2毫秒中斷一次,中斷服務(wù)函數(shù)處理代碼較多。

串口波特率:115200,由timer2產(chǎn)生;
中斷優(yōu)先級(jí)串口最高,也即設(shè)置IP=0X10;
串口接收數(shù)據(jù)以中斷方式,發(fā)送數(shù)據(jù)以輪詢方式。


出現(xiàn)的問(wèn)題是:

當(dāng)timer0中斷觸發(fā)時(shí)(由蜂鳴器操作觸發(fā)),會(huì)嚴(yán)重影響串口通信,單片機(jī)在收到數(shù)據(jù)后要向上位機(jī)回復(fù)數(shù)據(jù),上位機(jī)每次都能收到數(shù)據(jù),但是收到的回復(fù)數(shù)據(jù)100次中會(huì)有30次左右為錯(cuò)誤數(shù)據(jù),最常見(jiàn)的是幀頭的首字符錯(cuò)誤(應(yīng)該為2,但是收到的為0)。

當(dāng)屏蔽掉timer0中斷后,只有timer1中斷和串口中斷工作,上位機(jī)還是會(huì)有收到數(shù)據(jù)錯(cuò)誤的問(wèn)題,但錯(cuò)誤的次數(shù)大為減少,而且若精簡(jiǎn)timer1中斷服務(wù)函數(shù)中的代碼,錯(cuò)誤還會(huì)繼續(xù)下降。若將timer1中斷由2ms改為30ms一次后,再不會(huì)發(fā)生串口發(fā)送數(shù)據(jù)錯(cuò)誤問(wèn)題。

我也是該開(kāi)始接觸嵌入式編程,51也是第一次見(jiàn),很多技術(shù)細(xì)節(jié)不甚清楚,那位仁兄有這方面的經(jīng)驗(yàn),還望不吝賜教,尤其是怎么理清這些中斷間的關(guān)系和干擾?還串口發(fā)送數(shù)據(jù)(輪詢方式)時(shí)要注意的關(guān)鍵問(wèn)題等。


估計(jì)是中斷時(shí)序混亂問(wèn)題,我已經(jīng)被困擾了2天了,很郁悶。

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:7209 發(fā)表于 2009-10-14 08:39 | 只看該作者

理解

     那郁悶很難受

    我也是有幾條指令需要用串口發(fā)送 可不只應(yīng)該怎么寫(xiě)

  

回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表