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

標題: 單片機路燈控制系統程序設計 [打印本頁]

作者: 1643565858    時間: 2017-4-8 16:20
標題: 單片機路燈控制系統程序設計

文檔下載:

單片機路燈控制系統設計.doc (274.32 KB, 下載次數: 156)


以下是部分內容預覽:


單片機路燈控制系統是一種新型智能控制系統,可根據季節交替引起的天氣變化和用戶的不同需要,通過按鍵進行調節,能起到明顯的節能效果。
    該路燈控制系統設計主要包含硬件系統設計和軟件系統設計。硬件系統主要由時鐘發生電路、電路控制電路、LCD顯示電路、聲光報警電路、鍵盤控制電路和單片機控制電路等部分組成。在時鐘發生電路中,采用低功耗實時時鐘電路芯片DS1302,它可以對年、月、日、周日、時、分、秒進行計時,計時后,經過單片機的控制處理后從顯示屏上將計時的數據顯示出來。而路燈控制部分通過對外部環境進行檢測,實現不同環境的不同操作,從而實現不同功能。軟件部分主要需結合硬件系統,繪制程序流程圖,編寫相應的程序,使得單片機路燈系統能智能,自動地運作路燈,排查故障。

目錄
摘  要......................................................................................................................... III
Abstract....................................................................................................................... IV
1 緒論........................................................................................................................... 1
1.1課題的來源..................................................................................................... 1
1.2課題的意義..................................................................................................... 1
1.3單片機應用技術國內外發展現狀................................................................. 2
1.3.1國外的研究現狀……………………………………………………….2
1.3.2國內的研究現狀……………………………………………………….2
1.4課題研究的目的............................................................................................. 3
2硬件電路設計............................................................................................................ 4
2.1系統總體方案設計......................................................................................... 4
2.2 芯片器件介紹………………………..……………………………......4
2.2.1 單片機AT89C52簡介...........………………….……………..…….…4
2.2.2 光敏傳感器的介紹…………………….………………..…………….6
2.2.3 實時時鐘芯片DS1302的介紹…………………………………….…7
2.2.4 1602液晶的介紹………………………………………………..….….8
2.2.5 電壓比較器LM358…………………………………………..….……9
2.3各模塊介紹................................................................................................... 10
2.3.1時鐘電路模塊…………………………………………………….…..10
2.3.2感光電路模塊……………………………………………………...…11
2.3.3 液晶顯示器模塊………………………………………………….….11
2.3.4 復位電路模塊………………………………………………….....….12
2.3.5 故障報警電路模塊…………………………………………………..13
2.3.6 燈光驅動電路模塊…………………………………………………..14
3系統軟件設計……………………………………………………………………...16
3.1軟件系統介紹............................................................................................... 16
3.1.1軟件介紹   ……………………………………...…………………….16
3.1.2主程序的介紹………………………………………………………...16
3.1.3主流程圖………………………………………………………...……17
3.2各子程序模塊............................................................................................... 18
3.2.1 實時時鐘子程序……………………………………………………..18
3.2.2 LCD顯示子程序……………………………………………………..18
3.2.3自動警報子程序…………………………………………...…………19
3.2.4路燈開關控制子程序……………………………………….……..…20
4總結.......................................................................................................................... 21
4.1工作總結…………………… ……………………………………….………21
4.2心得體會……………………….……………………………………………..22
參考文獻..................................................................................................................... 23
致謝............................................................................................................................. 24
附錄............................................................................................................................. 25


3.2各子程序模塊3.2.1實時時鐘子程序
單片機對DS1302進行開始條件的設置,先從DS1302中讀取1Byte數據,然后往DS1302中寫入數據,讀取DS1302在某地址的數據,這樣就完成了對DS1302的初始化。接著往DS1302中寫入時鐘數據,時鐘數據地址格式為:秒 分 時 日 月 星期 年 控制,然后讀取DS1302的時鐘數據,將數據寫到DS1302寄存器中,并讀取其中的數據,最后設置初始時間,讀取DS1302當前時間。這就是實時時鐘子程序完成的步驟。
以下是實時時鐘部分子程序:
void v_Get1302(uchar *ucCurtime)
{
        uchar i,temp1,temp2;
        uchar ucAddr = 0x81;
        for (i=0;i<7;i++)
        {
*ucCurtime++ = uc_R1302(ucAddr);      //格式為: 星期
                ucAddr += 2;
                temp1=(Time_code&0xF0)>>4;
                temp2=Time_code&0x0F;
                Time_code=temp1*10+temp2;
}
}
3.2.2 LCD顯示子程序
為簡化硬件電路,通常將所有LED動態顯示。首先設置顯示模式,即顯示開、關,顯示有無光標。然后設置輸入模式,畫面可平移。將LCD初始化,輸入液晶字符的位置,并顯示到液晶屏上。
以下是設置LCD液晶顯示的部分子程序:
void LCD_Initial()
{
        LcdEn=0;
        LCD_Write(LCD_COMMAND,0x38);            //8位數據端口,2行顯示,5*7點陣
        delay(5);
        LCD_Write(LCD_COMMAND,0x38);
        delay(5);
        LCD_SetDisplay(LCD_SHOW|LCD_NO_CURSOR);    //開啟顯示, 無光標
        delay(5);
        LCD_Write(LCD_COMMAND,LCD_CLEAR_SCREEN);     //清屏
        delay(5);
        LCD_SetInput(LCD_AC_UP|LCD_NO_MOVE);         //AC遞增, 畫面不動
        delay(5);
}

3.2.3 自動報警子程序
    自動報警子程序是當路燈在發生故障時,電路傳給單片機一個信號,而單片機將這個數據寫入此程序,程序將數據輸出,使得蜂鳴器啟動,從而起到報警作用。
以下是部分自動報警子程序:
if(status0==1)
                        {
                                GotoXY(13,1);
                                LCD_Write(LCD_DATA,'0');

                                if(ErroT!=0xFF)
                                {
                                        //開報警
                                        Beep=0;
                                        i=(ErroT&0xF0)>>4;
                                        if(i>9)i=i+0x37;
                                        else i=i+0x30;
                                        LCD_Write(LCD_DATA,i);
                                        i=ErroT&0x0F;
                                        if(i>9)i=i+0x37;
                                        else i=i+0x30;
                                        LCD_Write(LCD_DATA,i);
                                }
                                else
                                //關報警
                                Beep=1;                        }



作者: 千山鳥飛絕    時間: 2017-4-8 16:51
可以,支持一下
作者: 小天哥哥    時間: 2017-12-5 12:23
支持!!
作者: simon1777    時間: 2018-6-1 13:13
這是用了幾個mcu
作者: 51MCU_TYL    時間: 2019-3-17 16:01
你這個文檔可以發我一份嗎?新手今天才注冊,沒有黑幣,郵箱1356412339@qq.com
作者: DEANGZHOU    時間: 2020-2-25 14:09
支持,非常好啊
作者: l1446889421    時間: 2020-4-2 22:17
大佬牛逼,現在正在學習
作者: Eli_    時間: 2020-4-8 23:10
沒有用?沒下載的師兄別下了,費幣!
作者: zdmjjp    時間: 2020-4-11 10:59
非常好啊,現在正在學習
作者: zdmjjp    時間: 2020-4-11 10:59
現在正在學習
作者: 16602748216    時間: 2020-4-11 15:03
應該怎么實現這種電路,用單片怎么實現




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1