- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
交通信号灯自动控制模拟指示系统
一、设计目的
1、掌握CPU与各芯片管脚连接方法,提高接口扩展硬件电路的连接能力设计并十字路通信号自动控制模拟指示系统。设该路口由A、B两条通行干道相交而成,四个路口各设一组红、黄、绿三色信号灯,用两位数码管作倒计时显示。0秒,同时南北路口数码管递减显示绿灯剩余时间30,29,28……0秒。
② 南北路口的黄灯闪烁5秒钟,同时东西路口的红灯继续亮。
③ 南北路口的红灯、东西路口的绿灯同时亮30秒,同时东西路口数码管递减显示绿灯剩余时间30,29,28……0秒。
④ 南北路口的红灯继续亮,同时东西路口的黄灯闪烁5秒钟。
⑤ 转① 重复。
(2)通过键盘可以对红、黄、绿三色信号灯所亮时间在0~99秒内任意设定。
(3)十字路口的通行起始状态可自行设定,系统启动后自动运行,按“Q”键退出。
2.发挥部分
(1)增加人工干预模式。在特殊情况下可通过人工干预,手动控A,B道路交通灯的切换时间,并可以随时切换为自动运行模式。
(2)增加夜间控制功能,交通灯在进入夜间模式后,A、B两个干道上红、绿灯均不亮,黄色信号灯闪烁显示。
(3)增加红色信号灯倒计时显示。
五、设计思路
交通信号灯的亮灭时间及数码管显示时间可以通过计数/定时器(8253)来控制,8253的时钟源采用时钟信号发生器与分频电路提供,通过计算获得计数初值。按照需要设定工作方式。交通信号灯及数码管可以采用系统提供的相应模块,控制可以通过8255可编程并行接口,如:PA口控制红黄绿交通灯的亮灭,PB口和PC口控制时间显示数码管的段,位。也可使用基本并行I/O接口(74LS245,74LS273)void main()
{
int n;
while(1)
{
printf(请输入你所需要的模式:\n);
scanf(%d,n);
switch(n)
{
case 1: mod_1(); break;
case 2: mod_2(); break;
case 3: mod_3(); break;
case 4: return;
}
}
}
//模式一
int mod_1()
{
printf(现在运行的是模式一:自动模式\n);
OpenDevice();
GetIoBase(usIoBase);
init(usIoBase);
timeRec();
while (1)
{
if(way==0)
{
if(count==0)
{
while(1)
{
OutByte(usIoBase,0xff);
yellow_1();
if(i==5)
{
i=0;
break;
}
}
way=1;
count=30;
timeRec();
}
display_1(usIoBase);
OutByte(usIoBase+1,0xde);
}
if(way==1)
{
if(count==0)
{
OutByte(usIoBase,0xff);
while(1)
{
yellow_2();
if(i==5)
{
i=0;
break;
}
}
way=0;
count=30;
timeRec();
}
display_2(usIoBase);
OutByte(usIoBase+1,0xf3);
}
}
CloseDevice();
return 0;
}
//模式二
void mod_2()
{
printf(现在运行的是模式二:手动控制模式\n);
CloseDevice();
Sleep(10);
OpenDevice();
GetIoBase(usIoBase);
init(usIoBase);
Sleep(10);
while(1)
{
OutByte(pBaseAddr+1,0xED);
Sleep(1000);
OutByte(pBaseAddr+1,0xF3);
Sleep(1000);
}
CloseDevice();
}
//模式三
void mod_3()
{
printf(现在运行的是模式三:夜间模式\n);
CloseDevi
您可能关注的文档
- 下半计算机一office试题.doc
- 小企业会计电算化现状问题及对策.doc
- 刑事侦查技术专业届毕业生毕业论文.doc
- 学美术教学计划.doc
- 在新历史坐标中推进农村新一轮改革发展.doc
- 章一人体对外环境感知.doc
- 执业兽医资格综合考试模拟试卷.doc
- 综合实践《水色彩》教学设计.doc
- 环境影响评价法律法规(空白打印).doc
- 银河锂业办公楼vrv变频中央空调施工组织设计secret.doc
- 2025年网络文学平台版权运营模式创新与版权保护体系构建.docx
- 数字藏品市场运营策略洞察:2025年市场风险与应对策略分析.docx
- 全球新能源汽车产业政策法规与市场前景白皮书.docx
- 工业互联网平台安全标准制定:安全防护与合规性监管策略.docx
- 剧本杀剧本创作审核标准2025年优化与行业自律.docx
- 2025年新能源电动巡逻车在城市安防中的应用对城市环境的影响分析.docx
- 全渠道零售案例精选:2025年行业创新实践报告.docx
- 2025年网约车司乘纠纷处理机制优化与行业可持续发展报告.docx
- 2025年宠物烘焙食品市场法规政策解读:合规经营与风险规避.docx
- 2025年宠物行业数据安全监管政策影响分析报告.docx
文档评论(0)