找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

8051單片機串口行中斷試驗

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:275073 發(fā)表于 2018-1-12 09:10 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

實驗?zāi)康呐c要求
1、掌握串行口中斷的原理;
2、掌握串口編程與調(diào)試方法;
3、掌握8051單片機的Modbus編程;
實驗原理與內(nèi)容
1. 原理
8051單片機內(nèi)部有一個全雙工的串行通信口,即串行接收和發(fā)送緩沖器(SBUF),這兩個在物理上獨立的接收發(fā)送器,既可以接收數(shù)據(jù)也可以發(fā)送數(shù)據(jù)。但接收緩沖器只能讀出不能寫入,而發(fā)送緩沖器則只能寫入不能讀出。這個通信口既可以用于網(wǎng)絡(luò)通信,亦可實現(xiàn)串行異步通信,還可以構(gòu)成同步移位寄存器使用。如果在串行口的輸入輸出引腳上加上電平轉(zhuǎn)換器,就可方便地構(gòu)成標準的RS-232接口。
2. 內(nèi)容
單片機與微機相連,使用中斷方法實現(xiàn)8051單片機與微機的串口通信。微機鍵入一個字符后發(fā)送至單片機,單片機收到后又將此字符發(fā)送回微機,在微機屏幕上回顯。要求在11.0592MHZ下,串行口的波特率為9600,方式1。
實驗設(shè)備與軟件環(huán)境
1.STC89C52RC單片機開發(fā)板:
2.KEIL軟件開發(fā):
3.stc-isp-v4.80-not-setup
4.Proteus7.7_SP2仿真軟件
實驗過與結(jié)果(可貼圖)
1.代碼
#include <reg51.h>
#include <intrins.h>
void INIT_SCI()
{
                SCON=0X50;                                //串口初始化
                ES=1;                                        //允許串口中斷
                EA=1;                               //開中斷
}
void INIT_TMR()
{
                TMOD=0X20;                                //定時器初始化
                TH1=0xfd;
                TL1=0xfd;
                TR1=1;
}
void serial_int(void) interrupt 4
{
unsigned char data c;
        if (_testbit_(RI))                //接收中斷服務(wù)
                {        c=SBUF;
                        SBUF=c;
                }
        }

void main(void)
{
                INIT_TMR();
                INIT_SCI();                
                while(1);
}
操作異常問題與解決方案
1.代碼錯誤:檢查代碼,改正
實驗總結(jié)
通過本次的實驗,在前兩個實驗的基礎(chǔ)上讓我復(fù)習(xí)了知識點,也讓我在次掌握了新的知識。在完成這次實驗后,懂得了這個通信口既可以用于網(wǎng)絡(luò)通信,亦可實現(xiàn)串行異步通信,還可以構(gòu)成同步移位寄存器使用。如果在串行口的輸入輸出引腳上加上電平轉(zhuǎn)換器,就可方便地構(gòu)成標準的RS-232接口。
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

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

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

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