久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3790|回復(fù): 1
收起左側(cè)

單片機(jī)中斷,定時(shí)器,串行口通信實(shí)驗(yàn)指導(dǎo)(附經(jīng)過測試的參考電路圖與源代碼)

[復(fù)制鏈接]
ID:267855 發(fā)表于 2017-12-27 17:28 | 顯示全部樓層 |閱讀模式
初接觸單片機(jī),老師給的單片機(jī)實(shí)驗(yàn),可以練練手。

調(diào)整一下實(shí)驗(yàn)內(nèi)容,具體情況如下:
第一次流水燈實(shí)驗(yàn)不變,采用第一次試驗(yàn)課內(nèi)容。
其余三次實(shí)驗(yàn)現(xiàn)分別確定為中斷實(shí)驗(yàn)、定時(shí)器實(shí)驗(yàn)和串行通信實(shí)驗(yàn),這三次實(shí)驗(yàn)推薦分別采用如下三個(gè)(列出的電路圖和源代碼老師都自己全程測試過,沒有問題);如果想在“中斷實(shí)驗(yàn)、定時(shí)器實(shí)驗(yàn)和串行通信實(shí)驗(yàn)”框架下選擇其他具體實(shí)驗(yàn)內(nèi)容也可以,注意把題目要求等都寫清楚。

二、中斷實(shí)驗(yàn)
中斷掃描法行列式鍵盤
1)實(shí)驗(yàn)要求
利用中斷掃描法實(shí)現(xiàn)4*4行列式鍵盤,并利用1位共陰極數(shù)碼管進(jìn)行顯示。要求開機(jī)后數(shù)碼管暫時(shí)為黑屏狀態(tài),按下任意鍵后,顯示該鍵的鍵值字符(0—F)。若沒有新鍵按下,則維持前次按鍵結(jié)果。
2)參考電路圖
0.png 0.jpg

3)參考源程序
#include <reg51.h>
char led_mod[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x58,0x5e,0x79,0x71};  //led字模
char key_buf[]={0xee,0xde,0xbe,0x7e,0xed,0xdd,0xbd,0x7d,0xeb,0xdb,0xbb,0x7b,0xe7,0xd7,0xb7,0x77};  //鍵值

void getKey() interrupt 0         //中斷函數(shù)
{
  char key_scan[]={0xef,0xdf,0xbf,0x7f};    //鍵掃描碼
  char i=0,j=0;
  for(i=0;i<4;i++)
     {
       P2=key_scan[ i];            //輸出掃描碼
       for(j=0;j<16;j++)
       {
            if(key_buf[j] == P2)       //讀鍵值,判斷鍵號(hào)
           {
              P0=led_mod[j];       //顯示閉合鍵鍵號(hào)
              break;
           }
       }
     }
     P2=0x0f;
}

void main(void)
{
    P0=0x00;       //開機(jī)黑屏
    IT0=1;          //脈沖觸發(fā)
    EX0=1;          //INT0允許
    EA=1;           //總中斷允許
    P2=0x0f;      //為首次中斷做準(zhǔn)備,列線全為0,行線全為1
    while(1);       //模擬其它程序功能
}

三、定時(shí)器實(shí)驗(yàn)
對流水燈進(jìn)行定時(shí)中斷控制
1)實(shí)驗(yàn)要求
采用定時(shí)中斷方法實(shí)現(xiàn)流水燈的控制功能。要求流水燈的閃爍速率約為每秒一次。
2)參考電路圖
0.jpg
3)參考源程序
#include <reg51.h>
#define uchar unsigned char
bit ldelay=0;
uchar t=0;
void main()
{
    uchar code ledp[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
    uchar ledi;
    TMOD=0x01;
    TH0=0x3c;
    TL0=0xb0;
    TR0=1;
    ET0=1;
    EA=1;
    while(1){
        if(ldelay) {
            ldelay=0;
            P2=ledp[ledi];
            ledi++;
            if(ledi==8) ledi=0;
        }
    }
}

timer0() interrupt 1{
    t++;
    if(t==20) {t=0;ldelay=1;}
    TH0=0x3c;TL0=0xb0;
}

四、串行口通信實(shí)驗(yàn)
2只單片機(jī)的串口方式1通信
1)實(shí)驗(yàn)要求
兩只51單片機(jī)進(jìn)行串口方式1通信,其中兩機(jī)fosc約為12MHz,波特率約為2.4kbps。甲機(jī)循環(huán)發(fā)送數(shù)字0-F,并根據(jù)乙機(jī)的返回值決定發(fā)送新數(shù)(返回值與發(fā)送值相同時(shí))或重復(fù)當(dāng)前數(shù)(返回值與發(fā)送值不同時(shí));乙機(jī)接收數(shù)據(jù)后直接返回接收值;雙機(jī)都將當(dāng)前值以十進(jìn)制形式顯示在各機(jī)的共陰極數(shù)碼管上。
2)參考電路圖
0.jpg
3)參考源程序
發(fā)送程序:
#include <reg51.h>
#define uchar unsigned char
char code map[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};

void delay(unsigned int time)
{
     unsigned int j=0;
    for(;time>0;time--)
        for(j=0;j<125;j++);
}

void main(void)
{
     uchar counter=0;
    TMOD=0x20;
    TH1=TL1=0xf4;
    PCON=0;
    SCON=0x50;
    TR1=1;
    while(1)
    {
        SBUF=counter;
        while(TI==0);
        TI=0;
        while(RI==0);
        RI=0;
        if(SBUF==counter)
        {
            P2=map[counter];
            if(++counter>9) counter=0;
            delay(500);
        }
    }
}

接收程序:
#include <reg51.h>
#define uchar unsigned char
char code map[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};

void delay(unsigned int time)
{
     unsigned int j=0;
    for(;time>0;time--)
        for(j=0;j<125;j++);
}

void main(void)
{
     uchar counter=0;
    TMOD=0x20;
    TH1=TL1=0xf4;
    PCON=0;
    SCON=0x50;
    TR1=1;
    while(1)
    {
        SBUF=counter;
        while(TI==0);
        TI=0;
        while(RI==0);
        RI=0;
        if(SBUF==counter)
        {
            P2=map[counter];
            if(++counter>9) counter=0;
            delay(1000);
        }
    }
}

完整的Word格式文檔51黑下載地址:
單片機(jī)后三次實(shí)驗(yàn)調(diào)整情況說明(附經(jīng)過測試的參考電路圖與源代碼).doc (112 KB, 下載次數(shù): 13)


評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評分

回復(fù)

使用道具 舉報(bào)

ID:12060 發(fā)表于 2018-1-8 16:44 | 顯示全部樓層
很好的,謝謝
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 九九色综合 | 蜜月va乱码一区二区三区 | 国产一区二区三区 | 欧美自拍另类 | 国产精品久久久久久久久久 | 最新国产在线 | 国产精品久久 | 国内自拍第一页 | 国产免费播放视频 | 先锋av资源在线 | 国产精品123区 | 国产成人综合亚洲欧美94在线 | 一区二区三区高清 | 久久久精品一区二区三区 | 天天操夜夜操免费视频 | 福利视频二区 | 久久久久久国产精品免费免费狐狸 | 亚州精品天堂中文字幕 | 日本精品一区二区三区视频 | 日本a v在线播放 | 国产精品久久一区 | www.黄色在线观看 | 97国产精品视频 | 天天干天天想 | 日日夜夜精品免费视频 | 国产精品久久久乱弄 | 国产一区二区精品在线观看 | a在线视频 | 99精品一区二区三区 | 亚洲精品一区二区三区中文字幕 | 日韩精品一区二区久久 | 亚洲精品视频一区 | 久久久免费观看视频 | 亚洲视频网 | 九九导航 | 国产精品综合网 | 久久中文免费视频 | 日本不卡视频在线播放 | 欧美极品一区二区 | 日日日日操 | 日本三级在线网站 |