简易交通灯设计论文报告2(8)

2019-04-14 16:54

四川科技职业学院毕业论文设计

第 33 页

if(flgaa==1) jtdb(); //当flgaa=1时,回到jtdb()函数 if(flgaa==2) jtday(); //当flgaa=2时,回到jtday()函数 if(flgaa==3) jtdby(); //当flgaa=3时,回到jtday()函数 这样的作用是,紧急模式从哪里进入,回到哪里 } } } }

/*****************************************************/ /* 函数名:qm() */ /* 功能:使所有的交通信号灯全部熄灭 */ /*****************************************************/ void qm() {

N_green=1; N_red=1;

N_yellow=1;

S_green=1; S_red=1; S_yellow=1;

W_green=1; W_red=1;

W_yellow=1;

E_green=1; E_red=1; E_yellow=1; }

/*****************************************************/ /* 函数名:set_djs1() */ /* 功能:设定南北方向倒计时时间 */ /*****************************************************/ void set_djs1() {

while(1) { djsxs1(); //南北方向数码管显示当前时间

修德技精 勤思协作

四川科技职业学院毕业论文设计

第 34 页

if(zj==0) //增加按键按下 { delayms(3); if(zj==0) { while(!zj); //去除抖动,确认是否增加按键按下 if(djs1>=99) djs1=99; //倒计时最大设定时间为99秒 else djs1++; //时间小于99秒时加一 nbdjs=djs1; //保存当前设定时间 } } if(jx==0) //减少按键按下 { delayms(3); if(jx==0) { while(!jx); //去除抖动,确认是否减少按键按下 if(djs1<=6) djs1=6; //倒计时最小设定时间为6秒 else djs1--; //时间大于6秒时减一 nbdjs=djs1; //保存当前设定时间 } } if(menu==0) //设定时间按键按下 { delayms(3); if(menu==0) { while(!menu); //去除抖动,确认是否按下 TR0=1; //定时器停止 nbdjs=djs1; //保存当前设定时间 jtda(); //调用函数 } } } }

/*****************************************************/

修德技精 勤思协作

四川科技职业学院毕业论文设计

第 35 页

/* 函数名:set_djs() */ /* 功能:设定东西方向倒计时时间 */ /*****************************************************/ void set_djs() {

while(1) { djsxs(); 管显示当前时间 if(zj==0) { delayms(3); if(zj==0) { while(!zj); 动,确认是否增加按键按下 if(djs>=99) djs=99; 大设定时间为99秒 else djs++; 秒时加一 dxdjs=djs; 定时间 } } if(jx==0) 下 { delayms(3); if(jx==0) { while(!jx); 动,确认是否减少按键按下 if(djs<=6) djs=6; 小设定时间为6秒 else djs--; 6秒时减一 dxdjs=djs; 定时间 } } if(menu==0) 按键按下 { delayms(3); if(menu==0) { while(!menu); 修德技精 勤思协作 //东西方向数码 //增加按键按下 //去除抖 //倒计时最 //时间小于99 //保存当前设 //减少按键按 //去除抖 //倒计时最 //时间大于 //保存当前设 //设定时间 //去除抖动,确

四川科技职业学院毕业论文设计

第 36 页

认是否按下 TR0=0; //定时器停止 dxdjs=djs; //保存当前设定时间 set_djs1(); //调用南北倒计时时间设定函数 } } } }

/*****************************************************/ /* 函数名:yj() */ /* 功能:夜间模式,按下夜间模式按键后,四个方向 */ /* 数码管灭,黄灯闪烁,使用与夜晚车辆较少 */ /* 时使用。 */ /*****************************************************/ void yj() {

int i; qm(); //信号灯全部熄灭 while(1) {

W_yellow=0; //以下四行表示四个方向的黄灯亮 E_yellow=0; S_yellow=0; N_yellow=0;

for(i=0;i<2000;i++) //for语句,在这个作用是循环执行“是否夜间模式按键”按下,起到延时左右 { if(k1==0) //夜间模式按键按下 { delayms(3); if(k1==0) { while(!k1); //去除抖动,确认是否按下 TR0=1; //启动定时器,以下四句用来判断回到哪个模式的 if(flgaa==0) jtda(); //当flgaa=0时,回到jtda()函数 if(flgaa==1) jtdb(); //当flgaa=1时,回到jtdb()函数 if(flgaa==2) jtday(); //当flgaa=2

修德技精 勤思协作

四川科技职业学院毕业论文设计

第 37 页

时,回到jtday()函数 if(flgaa==3) jtdby(); //当flgaa=3时,回到jtday()函数 这样的作用是,紧急模式从哪里进入,回到哪里 } } }

W_yellow=1; //以下四行表示四个方向的黄灯亮 E_yellow=1; S_yellow=1; N_yellow=1;

for(i=0;i<2000;i++) //for语句,在这个作用是循环执行“是否夜间模式按键”按下,起到延时左右 { if(k1==0) //夜间模式按键按下 { delayms(3); if(k1==0) { while(!k1); //去除抖动,确认是否按下 TR0=1; //启动定时器,以下四句用来判断回到哪个模式的 if(flgaa==0) jtda(); //当flgaa=0时,回到jtda()函数 if(flgaa==1) jtdb(); //当flgaa=1时,回到jtdb()函数 if(flgaa==2) jtday(); //当flgaa=2时,回到jtday()函数 if(flgaa==3) jtdby(); //当flgaa=3时,回到jtday()函数 这样的作用是,紧急模式从哪里进入,回到哪里 } } } } }

/*****************************************************/ /* 函数名:jtdb() */ /* 功能:交通灯东西方向绿灯亮,红灯灭 */ /* 交通灯南北方向红灯亮,绿灯灭 */ /*****************************************************/ void jtdb() {

修德技精 勤思协作


简易交通灯设计论文报告2(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:、为什么说人生价值是社会价值与自我价值的统一

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: