版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 51單片機(jī)用C語言實(shí)現(xiàn)交通燈(紅綠燈)源程序2009-10-29 23:00交通燈,紅黃綠燈交替亮,怎樣實(shí)現(xiàn)呢?其實(shí)就是根據(jù)單片機(jī)定時(shí)器及倒計(jì)時(shí)的程序修改。源程序如下:/*1、程序目的:使用定時(shí)器學(xué)習(xí) 倒計(jì)時(shí) 紅綠燈原理 主要程序和倒計(jì)時(shí)一樣2、硬件要求:數(shù)碼管、晶振12M*/#include <reg52.h>bit red,green,yellow,turnred; /定義紅、黃、綠及轉(zhuǎn)紅標(biāo)志code unsigned char tab=
2、0; 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; /共陰數(shù)碼管 0-9unsigned char Dis_Shiwei;/定義十位unsigned char Dis_Gewei; /定義個(gè)位void delay(unsigned int cnt) /用于動(dòng)態(tài)掃描數(shù)碼管的延時(shí)程序while(-cnt);main()TMOD |=0x01;/定時(shí)器設(shè)置 10ms in 12M crystal定時(shí)器
3、0,工作方式1,16位定時(shí)器TH0=0xd8; /65535-10000=55535=D8F0(十六進(jìn)制)TL0=0xf0;IE= 0x82; /中斷控制,EA=1開總中斷,ET0=1:定時(shí)器0中斷允許TR0=1; /開定時(shí)器0中斷P1=0xfc;/紅燈亮,根據(jù)紅黃綠接燈的順序。red =1;while(1)P0=Dis_Shiwei;/顯示十位,這里實(shí)現(xiàn)用8位數(shù)碼管,即左1位P2=0;delay(300);/短暫延時(shí)P0=Di
4、s_Gewei; /顯示個(gè)位,左數(shù),2位P2=1;delay(300);/*/* 定時(shí)中斷 */*/void tim(void) interrupt 1 using 1static unsigned char second=60,count; /初值60TH0=0xd8;/重新賦值,10毫秒定時(shí)TL0=0xf0;count+;if (count=100)
5、160; count=0; second-;/秒減1if(second=0) /這里添加定時(shí)到0的代碼 ,可以是燈電路,繼電器吸合等,或者執(zhí)行一個(gè)程序 if(red) /紅滅,先轉(zhuǎn)黃 red=0;yellow=1;
6、; second=4; P1=0xF3;/黃燈亮4秒,黃燈為過渡燈,再根據(jù)情況轉(zhuǎn)綠或轉(zhuǎn)紅 else if(yellow && !turnred) yellow=0;green=1; second=25;
7、60; P1=0xCF;/綠燈亮25秒, else if(green) yellow=1;green=0; second=4; P1=0xF3;/黃燈亮4秒 turnred=1; else if(yellow
8、&& turnred) /綠燈滅,轉(zhuǎn)黃燈,后紅燈,turnred=1時(shí) red=1;yellow=0; P1=0xFC;/紅燈亮60秒 second=60; turnred=0; /接下來是轉(zhuǎn)黃,綠。 Dis_Shiwei=tabsecond/1
9、0;/十位顯示值處理 Dis_Gewei=tabsecond%10; /個(gè)位顯示處理開始延時(shí)3s程序流程圖:輸出red(縱) yellow(橫)清屏延時(shí)30s輸出red(縱) green(橫)清屏延時(shí)3s輸出yellow(縱) red(橫)清屏延時(shí)30sTrue=1輸出green(縱) red(橫)清屏Y結(jié)束N算法描述:1、定義green函數(shù)(清屏顯示(縱=green 橫=red延時(shí)30s)定義red函數(shù)(清屏顯示(橫=green 縱=red)延時(shí)30s)定義yellow1 yellow2函數(shù)(清屏顯示延時(shí)3s) 2、建立循環(huán):調(diào)用green函數(shù) 3、調(diào)用y
10、ellow1函數(shù) 4、調(diào)用red函數(shù) 5、調(diào)用yellow2函數(shù) 6、返回繼續(xù)循環(huán)執(zhí)行。源程序代碼:#include <stdlib.h>#include <stdio.h>#include <windows.h>void green() system("cls");printf("縱=green 橫=red ");Sleep(30000); void red() system("cls");printf("縱=red 橫=green");Sleep(30000); void y
11、ellow1() system("cls");printf("縱=yellow 橫=red");Sleep(3000); void yellow2() system("cls");printf("縱=red 橫=yellow");Sleep(3000); int main() while(true) green(); yellow1();red();yellow2(); return 0; 程序功能:模擬十字路口的紅綠燈的變換。1、 進(jìn)入程序后,程序一直循環(huán),以模擬紅綠燈的不斷變換。2、 十字路口分為縱橫兩方向,在
12、模擬中分別用縱橫表示。3、 設(shè)計(jì)每次紅燈時(shí)間33s,綠燈時(shí)間30是,黃燈時(shí)間3s。符合一般十字路口要求。4、 執(zhí)行時(shí),縱向紅燈亮33s,同時(shí)橫向綠燈亮30,接著橫向黃燈亮3s;然后橫向變?yōu)榧t燈亮33s,同時(shí)縱向綠燈亮30s,接著黃燈亮3s。5、 此設(shè)計(jì)主要模擬真是紅綠燈變換的安全考慮,在一方向由綠燈變換時(shí),需設(shè)計(jì)短暫黃燈緩沖時(shí)間,以防出現(xiàn)事故。輸入數(shù)據(jù)要求:無輸入數(shù)據(jù);故無要求限制。結(jié)束語:感悟。#include<reg52.h>#define uint unsigned int#define uchar unsigned charuchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;sbit dula=P26;uint num; void delay(uint z);void main()P1=0;while(1)for(num=1;num<10;num+)dula=1;P0=tablenum;dula=0;delay(1000);P1=0x40;for(num=0;num<10;num+)dula=1;P0=tablen
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 八年級(jí)物理上冊(cè)第二章物質(zhì)世界的尺度質(zhì)量和密度三學(xué)生實(shí)驗(yàn):探究-物質(zhì)的密度第2課時(shí)測(cè)量物質(zhì)的密度教案新版北師大版
- 六年級(jí)英語上冊(cè)Unit3Myweekendplan第三課時(shí)教案人教PEP版
- 2025委托開發(fā)合同簡單版
- 第12課 新文化運(yùn)動(dòng)(分層作業(yè))(解析版)
- 2024年贊助合同:酒店活動(dòng)贊助協(xié)議
- 第2單元 近代化的早期探索與民族危機(jī)的加?。ˋ卷·知識(shí)通關(guān)練)(解析版)
- 2025年克孜勒蘇州從業(yè)資格證貨運(yùn)考試答案
- 2025年梧州從業(yè)資格證考試答案貨運(yùn)
- 2025年呼倫貝爾貨運(yùn)從業(yè)資格證考試模擬考試題庫
- 2025餐飲公司特許經(jīng)營區(qū)域代理合同范本與餐飲公司章程范本
- 《阿爾茨海默病康復(fù)》課件
- 2022-2023學(xué)年福建省泉州市惠安縣三年級(jí)(上)期末數(shù)學(xué)試卷
- 校企聯(lián)合實(shí)驗(yàn)室的運(yùn)營與維護(hù)
- 統(tǒng)編版語文2024-2025學(xué)年六年級(jí)上冊(cè)語文期末專題訓(xùn)練:字音字形(有答案)
- 機(jī)器人課件模板下載
- 江蘇省蘇州市2023-2024學(xué)年高二上學(xué)期期末學(xué)業(yè)質(zhì)量陽光指標(biāo)調(diào)研試題 物理 含答案
- 2024年安防監(jiān)控系統(tǒng)技術(shù)標(biāo)準(zhǔn)與規(guī)范
- 軟件正版化概念培訓(xùn)
- 2024-2025學(xué)年人教版道法八年級(jí)上冊(cè) 第一學(xué)期期末測(cè)試卷01
- 運(yùn)輸公司安全生產(chǎn)隱患排查制度
- 譯林新版(2024)七年級(jí)英語上冊(cè)Unit 5 Reading課件
評(píng)論
0/150
提交評(píng)論