位置:51电子网 » 技术资料 » 单 片 机

PIC单片机实现交通灯控制系统

发布时间:2008/5/27 0:00:00 访问次数:585

1 引 言

我国机动车辆发展迅速,而城镇道路建设由于历史等各种原因相对滞后。道路拥挤、阻塞现象及交通事故常有发生。如何利用当今计算机与自动控制技术,有效地疏导交通,提高城镇交通路口的通行能力,提高车辆速度,减少交通事故是值得我们研究的新课题。而目前国内利用单片机实行交通管制这方面应用较少。下面分析用pic实现交通灯控制设计方法。

2 硬件设计

本系统选用美国microchip公司的picl6f873单片机。配合一些外围电路完成交通灯自动转换系统。pic单片机有以下优点:

①采用哈佛结构(数据总线和指令总线分离)。
②指令的"单字节化"。
③精简指令集(risc)技术。
④寻址方式简单。
⑤代码压缩率的提高。
⑥运行速度高。
⑦功耗低、驱动能力强。
⑧具备pc和spi串行总线端口。
⑨寻址空间简洁。
⑩外围电路简洁。
⑾开发方便。
⑿c语言编程。
⒀品种丰富。
⒁程序保密性强。

其指令系统除了程序分支指令是单字节双周期指令外,其他指令都是单周期、单字节指令。在这些指令中,没有功能相交叉的指令,使所有的指令具有简洁性,从而执行速度非常快。pic单片机硬件特点:picl6f873型单片机是pic中级单片机中很有特色的一款,其指令字节为14b。他具有pic单片机的全部优点,而且片内还带有128×8的ezprom数据存储器,其程序存储器(4k×l4b)也与众不同,采用快闪存储器。快闪存储器可以实现在电路板上快速擦除和写入,最适合制作仿真板。借助于picl6f873制作的仿真板,我们在程序编写和调试过程中,可以方便的烧写程序和修改程序。

电路完成功能是:车辆放行方向上(a线)绿灯亮25s,黄灯警告5s,车辆禁止方向上(b线)红灯亮30s,然后绿灯开始放行。各方向上计数器从30开始递减,减到。从新开始。设计方框图如图1所示,整个电路由picl6873所控制,译码电路由cd4056和7段数码管构成,cd4056的功能是将bcd码转换成十进制数,然后送7段数码管显示输出。6个发光二极管用来模拟双向十字路口的红、黄、绿灯。

3 软件设计

microchip公司为pic系列单片机配备了功能强大的软件集成开发环境mplab,应用mplab就能在微机上对pic系列单片机进行程序的创建、录入、编辑以及汇编,甚至还能实现程序的模拟运行动态调试(debug)之类的虚拟演练,而且调试可以采用连续运行、单步运行、自动单步运行、设置断点运行等多种运行方式。

3.1 主程序方框图

主程序框图如图2所示。

控制过程可分为4个过程:

①给porta送控制码"0ch",就是给a口的数据寄存器送"00001100''这样就使a线的绿灯亮,b线的红灯亮。

②同样的给porta送"0ah",a线黄灯亮,b线红灯亮。

③给porta送"21h",a线红灯亮,b线绿灯亮。

④给porta送"llh",a线红灯亮,b线黄灯亮。

这样就完成了红绿灯的转换。用a口来控制双向路口的红黄绿灯的闪亮,将控制码送入a口的数据寄存器porta,送1表示输出高电平、0表示输出为低电子,porta内容输出就可控制红黄绿灯的亮暗。

3.2 8位二进制转化成2位bcd码流程图

二进制到bcd码转变流程图如图3所示。 如果直接接?段显示器,就需要2个输出端口(portc和portb),而接上cd4056后只需要1个输出端口(portc),这样就可以省出一个输出端口(portb)用于其功能扩展。二进制到bcd码转变子程序就是为了利用cd4056能完成功能而编写的。

3.3 延时子程序流程图

延时序中,整个指令执行的时间和延时时间。使用4 mhz时钟,每个指令周期需要4个震荡周期,则每条指令周期为1μs所以单指令周期执行时间为1μs,双周期指令为2μs。在这种情况下,秒级的延时需要三重循环。

延时时间=[(3×255+5) ×255十7] ×5+6=991 785μs=0.991 785 s

所以延时子程序整个指令执行时间(延时子程序)约1 s。

4 mplab-1cd在线调试

mplab-icd是microchip公司为其pic单片机中具有片内flash程序存储器的picl6f87x研制的一套廉价的学习和开发工具套件。mplab-icd可以用作实验阶段的评估和辅助调试。他既是一个编程器(即程序烧写器),又是一个实时仿真和程序烧写器。

用m

1 引 言

我国机动车辆发展迅速,而城镇道路建设由于历史等各种原因相对滞后。道路拥挤、阻塞现象及交通事故常有发生。如何利用当今计算机与自动控制技术,有效地疏导交通,提高城镇交通路口的通行能力,提高车辆速度,减少交通事故是值得我们研究的新课题。而目前国内利用单片机实行交通管制这方面应用较少。下面分析用pic实现交通灯控制设计方法。

2 硬件设计

本系统选用美国microchip公司的picl6f873单片机。配合一些外围电路完成交通灯自动转换系统。pic单片机有以下优点:

①采用哈佛结构(数据总线和指令总线分离)。
②指令的"单字节化"。
③精简指令集(risc)技术。
④寻址方式简单。
⑤代码压缩率的提高。
⑥运行速度高。
⑦功耗低、驱动能力强。
⑧具备pc和spi串行总线端口。
⑨寻址空间简洁。
⑩外围电路简洁。
⑾开发方便。
⑿c语言编程。
⒀品种丰富。
⒁程序保密性强。

其指令系统除了程序分支指令是单字节双周期指令外,其他指令都是单周期、单字节指令。在这些指令中,没有功能相交叉的指令,使所有的指令具有简洁性,从而执行速度非常快。pic单片机硬件特点:picl6f873型单片机是pic中级单片机中很有特色的一款,其指令字节为14b。他具有pic单片机的全部优点,而且片内还带有128×8的ezprom数据存储器,其程序存储器(4k×l4b)也与众不同,采用快闪存储器。快闪存储器可以实现在电路板上快速擦除和写入,最适合制作仿真板。借助于picl6f873制作的仿真板,我们在程序编写和调试过程中,可以方便的烧写程序和修改程序。

电路完成功能是:车辆放行方向上(a线)绿灯亮25s,黄灯警告5s,车辆禁止方向上(b线)红灯亮30s,然后绿灯开始放行。各方向上计数器从30开始递减,减到。从新开始。设计方框图如图1所示,整个电路由picl6873所控制,译码电路由cd4056和7段数码管构成,cd4056的功能是将bcd码转换成十进制数,然后送7段数码管显示输出。6个发光二极管用来模拟双向十字路口的红、黄、绿灯。

3 软件设计

microchip公司为pic系列单片机配备了功能强大的软件集成开发环境mplab,应用mplab就能在微机上对pic系列单片机进行程序的创建、录入、编辑以及汇编,甚至还能实现程序的模拟运行动态调试(debug)之类的虚拟演练,而且调试可以采用连续运行、单步运行、自动单步运行、设置断点运行等多种运行方式。

3.1 主程序方框图

主程序框图如图2所示。

控制过程可分为4个过程:

①给porta送控制码"0ch",就是给a口的数据寄存器送"00001100''这样就使a线的绿灯亮,b线的红灯亮。

②同样的给porta送"0ah",a线黄灯亮,b线红灯亮。

③给porta送"21h",a线红灯亮,b线绿灯亮。

④给porta送"llh",a线红灯亮,b线黄灯亮。

这样就完成了红绿灯的转换。用a口来控制双向路口的红黄绿灯的闪亮,将控制码送入a口的数据寄存器porta,送1表示输出高电平、0表示输出为低电子,porta内容输出就可控制红黄绿灯的亮暗。

3.2 8位二进制转化成2位bcd码流程图

二进制到bcd码转变流程图如图3所示。 如果直接接?段显示器,就需要2个输出端口(portc和portb),而接上cd4056后只需要1个输出端口(portc),这样就可以省出一个输出端口(portb)用于其功能扩展。二进制到bcd码转变子程序就是为了利用cd4056能完成功能而编写的。

3.3 延时子程序流程图

延时序中,整个指令执行的时间和延时时间。使用4 mhz时钟,每个指令周期需要4个震荡周期,则每条指令周期为1μs所以单指令周期执行时间为1μs,双周期指令为2μs。在这种情况下,秒级的延时需要三重循环。

延时时间=[(3×255+5) ×255十7] ×5+6=991 785μs=0.991 785 s

所以延时子程序整个指令执行时间(延时子程序)约1 s。

4 mplab-1cd在线调试

mplab-icd是microchip公司为其pic单片机中具有片内flash程序存储器的picl6f87x研制的一套廉价的学习和开发工具套件。mplab-icd可以用作实验阶段的评估和辅助调试。他既是一个编程器(即程序烧写器),又是一个实时仿真和程序烧写器。

用m

相关IC型号

热门点击

 

推荐技术资料

硬盘式MP3播放器终级改
    一次偶然的机会我结识了NE0 2511,那是一个远方的... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!