久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
帶緊急開關的51單片機十字路口交通燈的Proteus仿真+代碼設計
[打印本頁]
作者:
L-logo
時間:
2018-12-17 11:33
標題:
帶緊急開關的51單片機十字路口交通燈的Proteus仿真+代碼設計
利用51單片機對十字路口交通燈進行設計,東西方向和南北方向都為三十秒,分別設計三個按鍵進行時間控制。
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
捕獲.PNG
(90.68 KB, 下載次數: 76)
下載附件
2018-12-17 11:30 上傳
單片機源程序如下:
#include<reg52.h>
#include"delay.h"
/*************************函數聲明**************************/
void show(); //顯示函數
void init();
/************************端口定義**************************/
sbit k1=P3^7; // K1 時間加
sbit k2=P3^6; // K2 時間減
sbit k3=P3^5; // K3 暫停,確認
sbit led_red_a=P2^0; //
sbit led_red_b=P2^2; //
sbit led_green_a=P2^1; //
sbit led_green_b=P2^3; //
sbit WX_a_1=P2^4; //
sbit WX_a_2=P2^5; //
sbit WX_b_1=P2^6; //
sbit WX_b_2=P2^7; //
/************************變量定義**************************/
char temp1 = 30; // 初始紅綠燈時間
uchar temp2; //產生1秒 計數變量
uchar temp4=30; //存儲時間更改變量
uchar flag1=0; //a,b,兩個方向紅路燈切換標志
uchar flag2=0; //暫停標志
/**********************數組定義***************************/
uchar tab_dx[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //共陰,不帶小數點
/************************顯示**************************/
void show()
{
if(flag1==0) //a 紅燈亮 綠燈滅 b 紅燈滅 綠燈亮
{
led_red_a=0;
led_red_b=1;
led_green_a=1;
led_green_b=0;
}
else //a 紅燈滅 綠燈亮 b 紅燈亮 綠燈滅
{
led_red_a=1;
led_red_b=0;
led_green_a=0;
led_green_b=1;
}
if(flag1==0)
{
WX_a_1=1;
WX_a_2=1;
WX_b_1=1;
WX_b_2=0;
P0=tab_dx[temp1%10];
delayxms(3);
P0=0x00;
WX_a_1=1;
WX_a_2=1;
WX_b_1=0;
WX_b_2=1;
P0=tab_dx[temp1/10];
delayxms(3);
P0=0x00;
}
else
{
WX_a_1=1;
WX_a_2=0;
WX_b_1=1;
WX_b_2=1;
P0=tab_dx[temp1%10];
delayxms(3);
P0=0x00;
WX_a_1=0;
WX_a_2=1;
WX_b_1=1;
WX_b_2=1;
P0=tab_dx[temp1/10];
delayxms(3);
P0=0x00;
}
}
/************************顯示1**************************/
void show_1()
{
static uchar kk;
kk++;
led_red_a=0;
led_red_b=0;
led_green_a=1;
led_green_b=1;
WX_a_1=1;
WX_a_2=1;
WX_b_1=1;
WX_b_2=0;
P0=tab_dx[temp4%10];
delayxms(kk/126);
P0=0x00;
WX_a_1=1;
WX_a_2=1;
WX_b_1=0;
WX_b_2=1;
P0=tab_dx[temp4/10];
delayxms(kk/126);
P0=0x00;
WX_a_1=1;
WX_a_2=0;
WX_b_1=1;
WX_b_2=1;
P0=tab_dx[temp4%10];
delayxms(kk/126);
P0=0x00;
WX_a_1=0;
WX_a_2=1;
WX_b_1=1;
WX_b_2=1;
P0=tab_dx[temp4/10];
delayxms(kk/126);
P0=0x00;
}
/************************按鍵檢測**************************/
void key()
{
if(k1==0) //時間加
{
delayxms(10);
while(k1==0) ;
temp4++;
temp1=temp4;
if(temp4==91)
{
temp4=0;
}
}
if(k2==0) // 時間減
{
delayxms(10);
while(k2==0);
temp4--;
temp1=temp4;
if(temp4==-1)
{
temp4=90;
}
}
if(k3==0) // 暫停,確認
{
delayxms(10);
while(k3==0);
flag2=~flag2;
}
}
/************************中斷初始化**************************/
void init()
{
TMOD=0x11; //設置定時器0,1為工作方式1
TH0=(65536-50000)/256; //初值
TL0=(65536-50000)%256;
// TH1=(65536-50000)/256; //初值
// TL1=(65536-50000)%256;
EA=1; //打開中斷總開關
ET0=1; //開定時器0中斷
// ET1=1; //開定時器1中斷
TR0=1; //啟動定時器0
EX0 = 1; /* 允許外部中斷0中斷 */
PX0 = 1; /* 外部中斷0為高優先級 */
}
/************************************************************
主函數
*************************************************************/
void main()
{
init();
while(1)
{
key();
if(flag2==0)
{
TR0=1;
show(); //顯示函數
}
else
{
TR0=0;
show_1(); //顯示函數
}
}
}
/* ----------------- t0中斷函數 ----------------- */
void time1() interrupt 1
{
TH0=(65536-50000)/256; //
TL0=(65536-50000)%256;
temp2++;
if(temp2 == 20)
{
temp2=0;
temp1=temp1-1;
if(temp1==-1)
{
temp1=temp4;
flag1=~flag1;
}
}
}
/* ----------------- 外部中斷函數 ----------------- */
int0_srv( ) interrupt 0 using 2
{
uchar a,b,c,d;
int i;
for (i = 0;i<10000;i++);
if ( INT0 ==0)
{
a=led_red_a; //保留指示燈狀態
b=led_red_b;
c=led_green_a;
d=led_green_b;
while(INT0==0)
{
led_red_a=0;
led_red_b=0;
led_green_a=1;
led_green_b=1; /* 使兩邊亮起紅燈 */
if(flag1==0)
{
WX_a_1=1;
WX_a_2=1;
WX_b_1=1;
WX_b_2=0;
P0=tab_dx[temp1%10];
delayxms(3);
P0=0x00;
WX_a_1=1;
WX_a_2=1;
WX_b_1=0;
WX_b_2=1;
……………………
…………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
所有資料51hei提供下載:
交通燈.zip
(88.14 KB, 下載次數: 56)
2018-12-17 11:29 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
中文字幕一区二区三区精彩视频
|
欧美aaaa视频
|
免费看日韩视频
|
欧美国产日韩在线
|
国产成人精品一区二区
|
亚洲精品一区二区在线观看
|
91精品国产91久久久久久三级
|
久久久久国产精品午夜一区
|
91精品久久久久久久久中文字幕
|
玖玖国产精品视频
|
免费在线视频一区二区
|
国产精品久久久久久久久久不蜜臀
|
日本免费一区二区三区四区
|
亚洲一区二区三区在线视频
|
久久久精品国产
|
天天躁日日躁xxxxaaaa
|
99久久婷婷
|
午夜国产羞羞视频免费网站
|
久久久精
|
91精品国产高清一区二区三区
|
精品久久ai电影
|
污片在线免费观看
|
免费看一级毛片
|
国产精品久久九九
|
精品毛片在线观看
|
色综合九九
|
在线观看 亚洲
|
欧美精品在线免费
|
国产91丝袜在线熟
|
天天操夜夜操免费视频
|
亚洲福利在线观看
|
在线观看视频你懂得
|
国产成人免费视频网站高清观看视频
|
亚洲激情一区二区
|
国内毛片毛片毛片毛片
|
中文字幕三区
|
中文在线一区
|
精品欧美一区二区三区久久久
|
国产精品一区在线观看
|
美女黄色在线观看
|
一区二区精品视频
|