『壹』 用c语言编程模拟交通路口(十字路口)红绿灯的控制功能

本系统的设计首先必须了解交通路灯的亮灭规律。设有一个十字路口,1、3 为南,北
方向, 2、4 为东,西方向,初始态为4 个路口的红灯全亮。之后, 1、3 路口的绿灯亮,
2、4 路口的红灯亮, 1、3 路口方向通车。延迟一段时间后, 1、3 路口的绿灯熄灭,而1、
3 路口的黄灯开始闪烁。闪烁若干次后, 1、3 路口的红灯亮, 同时 2、4 路口的绿灯亮, 2、
4 路口方向开始通车。延迟一段时间后, 2、4 路口的绿灯熄灭,而黄灯开始闪烁。闪烁若
干次后,再切换到1、3 路口方向。之后,重复上述过程。对于各组灯的亮灭,我们运用的
是8255A 的输入输出功能。

『贰』 C语言程序设计编写一个交通红绿灯的控制,各位高手帮帮忙急!

unsigned char counter;
sbit red_nb=P2^0;
......
void main()
{
TMOD=
TH0
TL0
ET0
TR0
while(1) //根据楼主所给,有4种状态
{
state1;
state2;
state3;
state4;

}
}
void timer0() interrupt 1 //定时器0
{
TH0=0x3c;
TL0=0xb0;
counter++;
}
void state1() //控制南北红灯亮,东西绿灯亮,30s
{
unsigned char temp = 30;
red_nb=1;
.....
green_dx=1;

while(1)
{
if( counter>19){counter=0;temp--} //每次counter=20,即1s,temp自减
if(temp) break; //当temp为0时,即30秒,退出状态1,进入状态2

}
}
没经过测试,完全是5分诱惑不大。。

『叁』 51单片机关于红绿灯的C语言程序设计

51单片机关于红绿灯的C语言程序设
肯定非常不一样的
好的

『肆』 用c语言设计红绿灯怎么设计

交通信号灯吗

『伍』 c语言单片机模拟红绿灯程序 请各位高手帮忙

uchar i,a,b,c,d,e,f;
sbit a=P1^0,b=P1^1,c=P1^2,d=P1^3,e=P1^4,f=P1^5;
你的错误是:a,b,c,d,e,f重复定义;sbit 要单独一行。可以修改如下:
sbit aa=P1^0;
sbit bb=P1^1;
sbit cc=P1^2;
sbit dd=P1^3;
sbit ee=P1^4;
sbit ff=P1^5;
你的延时函数这样取可以,没有问题。

『陆』 如何用C语言汇编红绿灯的程序

用random生成一个随机数,或者是用户自己输入一个数字,用switch语句来响应,当是1时,红灯亮,当是2时,绿灯亮等。

『柒』 单片机红绿灯交通信号c语言编程

仿真实例可以参考一下,仿真试试。

『捌』 求一个C语言的红绿灯程序 80C51

#include<reg51.h>/*下面中n代表north. n s w e分别代表四个不同的方向*/
sbit rednts=P1^0;
sbit yellownts=P1^1;
sbit greennts=P1^2;
sbit redwte=P1^3;
sbit yellowwte=P1^4;
sbit greenwte=P1^5;//由于实验实的板只用了P1口作输入
int tmp1=0;
int tmp2=0;
int i;
void begins()
{
rednts=0;
yellownts=0;
greennts=0;
redwte=0;
yellowwte=0;
greenwte=0;
}
void TimeInt() interrupt 1 //这是中断函数,1对应是定时、计数器0
{
i++;
if(i==2000)
{
i=0;
tmp1++;
if(10==tmp1) tmp1=0;
}//若到了,得清0 //判断是否到了0.5MS*2000=1S}
void ExteriorInt() interrupt 0
{
tmp2=!tmp2;
}
void main()
{ //int time1s,time2s,time3;;
TMOD=0x02; //启用定时器工作模式2
TH0=6;//装定时器初值高8位,0.5ms中断一次 。2US*250=0.5MS
TL0=6;//装定时器初值低8位
EA=1; //打开总中断允许
ET0=1; //打开定时器0的中断允许
TR0=1; //T0工作1******以上是对定时器0的初始化********
TCON=0x11;//TCON的设置必须保持定时器0在工作
EX0=1;//********以上是对外部中断0的初始化***********

while(1)
{
if(tmp2)
{
begins();
rednts=1;
redwte=1;
}
else if(tmp1<3)
{
begins();
rednts=1;
greenwte=1;
}
else if(tmp1<4)
{
begins();
}
else if(tmp1<5)
{
yellownts=1;
yellowwte=1;
}
else if(tmp1<6)
{
begins();
}
else if(tmp1<7)
{
yellownts=1;
yellowwte=1;
}
else if(tmp1<10)
{
begins();
greennts=1;
redwte=1;
}

}}