国产成人av人人爽人人澡-亚洲国产日韩欧美一区-好吊日视频这里只有精品-日本高清精品视频在线

你好!歡迎來到深圳市穎特新科技有限公司!
語言
當(dāng)前位置:首頁 >> 技術(shù)中心 >> 單片機入門 >> 51單片機的串口中斷設(shè)置

51單片機的串口中斷設(shè)置

作者:admin 來源:不詳 發(fā)布時間:2018-05-08  瀏覽:9

首先,你要用軟件允許中斷,

即C語言中EA = 1; 允許總中斷ES = 1;

//允許串口中斷匯編中可用

SETB EA ;允許總中斷

SETB ES ;允許串口中斷

當(dāng)單片機接收到一幀數(shù)據(jù)后,RI會置1,向CPU申請中斷,若之前有中斷允許,則產(chǎn)生了中斷,進(jìn)入中斷服務(wù)程序。

當(dāng)然,單片機發(fā)送完一幀數(shù)據(jù),TI也會置1,同樣會產(chǎn)生中斷!

一般我們在發(fā)送數(shù)據(jù)時要關(guān)中斷,因為一般你不用在發(fā)送時不用處理數(shù)據(jù);

接收數(shù)據(jù)時要開中斷,以便你在中斷服務(wù)程序中將接收到的數(shù)據(jù)進(jìn)行存儲并處理。

補充:其實,不管你有沒有允許中斷,上位機(此時即給單片機發(fā)送信息的機器)只要給單片機發(fā)送數(shù)據(jù),單片機就會自動接收數(shù)據(jù),并把它放在數(shù)據(jù)緩沖器SBUF中,如果你之前有允許串行口中斷,RI就會置1,向單片機CPU申請中斷,并進(jìn)入中斷服務(wù)程序,做完中斷函數(shù)后就會自動返回斷點。如果你沒有允許中斷,便不會產(chǎn)生串行中斷。其實,別的中斷都是某個I/O口電平變化產(chǎn)生。這只是外部中斷產(chǎn)生條件,不過,你之前也需要用軟件允許外部中斷。

另外,常見的51系列單片機有5個中斷源三種中斷5:

1、外部中斷0和1;

2、定時器/計數(shù)器溢出中斷0和1;

3、串行口中斷。

另外,STC51系列還有定時器/計數(shù)器T2中斷,A/D轉(zhuǎn)換中斷,PWM中斷,串行中斷2等等。你還有什么不懂的可以自己多翻一翻書,學(xué)到后面去了你就明白了。

中斷服務(wù)程序中,那條 RI=0;是不可少的,這是用軟件清零RI,準(zhǔn)備再次接受一幀數(shù)據(jù)產(chǎn)生中斷,如果你沒有這條語句,就會進(jìn)入死循環(huán),出不來了。

void serial() interrupt 4

{ P1=SBUF;

RI=0;

}

編輯:admin  最后修改時間:2018-05-08

聯(lián)系方式

0755-82591179

傳真:0755-82591176

郵箱:vicky@yingtexin.net

地址:深圳市龍華區(qū)民治街道民治大道973萬眾潤豐創(chuàng)業(yè)園A棟2樓A08

Copyright © 2014-2023 穎特新科技有限公司 All Rights Reserved.  粵ICP備14043402號-4