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

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

QQ登錄

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

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

基于單片機(jī)教室人數(shù)實(shí)時(shí)檢測(cè)系統(tǒng)仿真及源程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:190577 發(fā)表于 2023-11-14 20:46 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
一、系統(tǒng)方案
1、本設(shè)計(jì)采用51單片機(jī)作為主控器。
2、紅外傳感器檢測(cè)進(jìn)出人數(shù),液晶1602顯示。
3、按鍵最多容納人數(shù),煙霧報(bào)警。


二、硬件設(shè)計(jì)
原理圖如下:
三、單片機(jī)軟件設(shè)計(jì)
1、首先是系統(tǒng)初始化
void lcd_init()
{
        lcd_write_com(0x38);
        lcd_write_com(0x0c);
        lcd_write_com(0x06);
        lcd_write_com(0x01);

}
2、液晶顯示程序
void check_busy()
{  
        P0=0xff;
        do
        {
                rs=0;
                wr=1;
                en=0;
                en=1;
        } while(busy==1);
        en=0;
}
/****
*******1602寫數(shù)據(jù)忙函數(shù)
*****/
void lcd_write_date(uchar date)
{
        check_busy();
        en=0;
        LCD_PORT=date;
        rs=1;
        wr=0;
        en=1;
        en=0;
}
/****
*******1602寫命令函數(shù)
*****/
void lcd_write_com(uchar com)
{
        check_busy();
        en=0;
        LCD_PORT=com;
        rs=0;
        wr=0;
        en=1;
        en=0;
}
/****
*******1602寫溫度函數(shù)
*****/
void lcd_wendu(uchar add,uchar date)
{
        uchar shi,ge;
        shi=date/10;
        ge=date%10;
        lcd_write_com(add);
        lcd_write_date(shi+'0');
        lcd_write_date(ge+'0');
}
3、按鍵程序
void keyscan()
{


                if(K1==0)
                {
                    delayms(10);        //消除抖動(dòng)
                        if(flag1==0)
                        {
                                flag1=1;
                                count++;
                                if(count>=100) count=99;
                        buf_3[0]=count/10+'0';
                        buf_3[1]=count%10+'0';
                        lcd_write_str(0x80+0x40+8,buf_3);

                        }
                }
                else flag1=0;


        if(K2==0)                //檢測(cè)按鍵K2(反轉(zhuǎn))是否按下
        {
                delayms(10);        //消除抖動(dòng)
                        if(flag2==0)
                        {
                                        flag2=1;
                                if(count>=1)
                        count--;
                        buf_3[0]=count/10+'0';
                        buf_3[1]=count%10+'0';
                        lcd_write_str(0x80+0x40+8,buf_3);

                        }

        }        
        else flag2=0;
if(K3==0)                //檢測(cè)按鍵K2(反轉(zhuǎn))是否按下
        {
                delayms(10);        //消除抖動(dòng)
                if(K3==0)
                {
                                if(count >= set)
                                        LED = 0;
                                else
                                {
                                        BUZ = 0;
                                        delayms(500);
                                        BUZ = 1;
                                        delayms(500);
                                        BUZ = 0;
                                        delayms(500);
                                        BUZ = 1;
                                        delayms(500);
                                }
                }
                while(!K3) //檢測(cè)按鍵是否松開(kāi)
                {
                        delayms(3000);
                        BUZ = 1;        
                        LED = 1;
                }

        }        
  if(s1==0)                //檢測(cè)按鍵K2(反轉(zhuǎn))是否按下
        {
                delayms(10);        //消除抖動(dòng)
                if(s1==0)
                {
                                set++;
                          if(set>=100) set=99;
                                                buf_3[0]=set/10+'0';
                        buf_3[1]=set%10+'0';
                        lcd_write_str(0x80+8,buf_3);
                }
                while(!s1) //檢測(cè)按鍵是否松開(kāi)
                {

                }

        }        
          if(s2==0)                //檢測(cè)按鍵K2(反轉(zhuǎn))是否按下
        {
                delayms(10);        //消除抖動(dòng)
                if(s2==0)
                {
                                if(set>=1) set--;
                                                buf_3[0]=set/10+'0';
                        buf_3[1]=set%10+'0';
                        lcd_write_str(0x80+8,buf_3);
                }
                while(!s2) //檢測(cè)按鍵是否松開(kāi)
                {

                }

        }        
}

4、核心算法程序
/*┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
函數(shù)功能:主函數(shù)
┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈*/
void main(void)
{
        uint i;
        count = 0;
  TMOD = 0x01;         //T0 16位工作方式
  IR_1=1;                                   //發(fā)射端口常態(tài)為高電平

        lcd_init();
        lcd_write_str(0x80,buf_1);
        lcd_write_str(0x80+0x40,buf_2);
        lcd_write_str(0x80+0x40+8,"00");
  while(1)
  {
   keyscan();
                if(yw==0) BUZ=0;
                else BUZ=1;
  }
}

四、 proteus仿真設(shè)計(jì)
Proteus軟件是一款應(yīng)用比較廣泛的工具,它可以在沒(méi)有硬件平臺(tái)的基礎(chǔ)上通過(guò)自身的軟件仿真出硬件平臺(tái)的運(yùn)行情況,這樣就可以通過(guò)軟件仿真來(lái)驗(yàn)證我們?cè)O(shè)計(jì)的方案有沒(méi)有問(wèn)題,如果有問(wèn)題,可以重新選擇器件,連接器件,直到達(dá)到我們?cè)O(shè)定的目的,避免我們搭建實(shí)物的時(shí)候,如果當(dāng)初選擇的方案有問(wèn)題,我們器件都已經(jīng)焊接好了,再去卸載下去,再去焊接新的方案的器件,測(cè)試,這樣會(huì)浪費(fèi)人力和物力,也給開(kāi)發(fā)者帶來(lái)一定困惑,Proteus仿真軟件就很好的解決這個(gè)問(wèn)題,我們?cè)谠O(shè)計(jì)之初,就使用該軟件進(jìn)行模擬仿真,測(cè)試,選擇滿足我們?cè)O(shè)計(jì)的最優(yōu)方案。最后根據(jù)測(cè)試沒(méi)問(wèn)題的仿真圖紙,焊接實(shí)物,調(diào)試,最終完成本設(shè)計(jì)的作品。

評(píng)分

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

查看全部評(píng)分

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

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 日韩有码在线播放 | 国产免费一区二区 | 国产高清在线视频 | 国产电影精品久久 | 中文字幕在线看第二 | 成人性视频免费网站 | 成人二区 | 欧美成人a∨高清免费观看 91伊人 | 美女久久久久久久 | 成人福利网 | 美女网站视频免费黄 | 视频三区| 久久精品亚洲欧美日韩精品中文字幕 | 久久久久国产一区二区三区 | 欧洲精品一区 | 久久国产精品免费一区二区三区 | 成人av片在线观看 | 精品国产一区久久 | 伊人二区 | aaa级片 | 欧美色性| 视频在线一区二区 | 亚洲成人一区 | 亚洲精彩视频在线观看 | 九色网址 | 久青草影院 | 亚洲精品在线免费 | 九九99久久 | 亚洲一区二区视频在线播放 | 99亚洲| 99热在线播放 | 欧美日韩亚洲成人 | 久久精品国产一区二区电影 | 久久se精品一区精品二区 | 亚洲国产成人精品女人久久久 | 狠狠干天天干 | 91精品国产欧美一区二区 | 中文字幕在线观看 | 日韩av一区二区在线观看 | 日韩精品久久久久久 | 久久综合一区二区三区 |