




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、. . . . 0 / 17汽车灯光控制电路设计宝强(理工学院物理系电信 062, 723001)指导老师:宋卫星摘要采用 AT89C51 单片机设计的汽车灯光控制电路,利用其 4 个 I/O 口分别实现对汽车灯光的控制、显示功能,其中还添加了转弯灯、紧急灯的警示声音功能。运用较少的硬件与适当的软件结合就可以很容易的实现设计的要求,而且灵活性强,也可以通过软件编程实现更多的附加功能。关键字AT89C51 单片机;灯光;控制Auto Light Control CircuitZhang Baoqiang(Grade 06, Class 2, Major Electronic Informatio
2、n Science and Technology, Physics Dept.,ShaanxiUniversity of Technology,Hanzhong 723000, Shaanxi)Tutor: Song WeixingAbstractAbstract:With the gradual improvement of living standards, more and more people have to buy the car. This traffic safety problem and more and more prominent, while a car, its l
3、ights, signal is good or bad is largely affected the lives of drivers and pedestrians. Therefore, the vehicle lighting control circuit research and design has great value. MCU design with the car light control circuit, and powerful, with less hardware and appropriate software can be easily combined
4、to achieve the design requirements, and flexibility can also be achieved through software programming more additional features.KeyKey wordswords:AT89C51 MCU;light; control. . . . 1 / 17目录1 引言 12 设计方案 .12.1 功能要求 12.2 设计方案 13 硬件设计 .23.1 AT89C51 单片机的结构与功能 23.1.1 AT89C51 的结构与引脚 23.1.2 AT89C51 的主要性能 33.1
5、.3 AT89C51 的管脚功能33.2 AT89C51 的时序电路 43.3 AT89C51 的复位电路 53.4 AT89C51 的电源电路 53.5 汽车灯光控制电路 64 软件设计 .75 仿真与调试 .75.1 KEIL C51 VISION2 介绍 75.2 PROTEUS PROFESSIONAL 7.5 介绍 85.3 调试 96 结论 .9. . . . ii / 176.1 设计结果 96.2 系统缺陷与建议 96.3 致 9参考文献 .10附录 程序清单 .11. . . . 1 / 171 引言随着汽车数量的大量增加,交通安全问题也越来越严峻。而汽车车灯光控制系统的可靠
6、、稳定对于安全行驶起着非常重要的作用,因此汽车灯光控制电路的研究和设计成为解决交通安全问题的一种好的途径。汽车工业的发展也促使汽车车灯控制电路的设计和研究不断的提高,汽车的功能要求也越来越庞大,因此各单元电路也需要向小型化的方向发展,以使汽车能够能装入更多的功能模块。传统的使用纯硬件设计的电路,不仅电路庞大复杂,而且一旦出了问题维修检测起来也耗时费力。因此智能化、小型化的电路设计走上了时代的潮流,也必将影响以后的汽车控制系统的设计,不仅如此还要综合考虑加工工艺、寿命、成本等问题,以使设计的电路能够大量普与。伴随着汽车工业的发展,汽车灯光控制电路的发展已经非常的成熟,目前,汽车灯光控制系统发展充
7、分利用了现代科技的发展成果。采用纯硬件、PLC电气控制技术设计的汽车灯光控制电路已经得到大量应用。传统的采用纯硬件设计的电路正逐渐向着软硬结合的方向发展,也将随时应用最新的科学技术。单片机的发展正朝着低功耗、高性能、低价格和外围电路装化的方向发展。因此,采用单片机设计的汽车灯光控制电路,应用软件来实现庞大的控制功能,而且通过外围电路的扩展还能实现更多的附加功能。这种控制电路不仅体积小、成本低,而且也更加智能,可以随时修改整个控制功能,非常适合现代汽车工业的发展潮流。总之,使着汽车灯光控制电路向着更加可靠,功能更加庞大、智能的方向发展。12 设计方案2.12.1 功能要求功能要求汽车车灯采用发光
8、二极管来设计,汽车前部两侧各有远光灯一部(夜间正常行车时使用,大功率白色发光二极管) ,近光灯一部(夜间行驶汇车时使用,小功率白色发光二极管) ,远光灯与近光灯不能同时使用;汽车左右各有 2 个指示灯:方向灯(小功率黄色发光二极管) ,雾灯(大功率黄色发光二极管) 。汽车后部两侧各有刹车灯一部(小功率红色发光二极管) ,尾灯一部(大功率红色发光二极管) 。刹车时,刹车灯亮(不闪) 。转弯时,汽车方向灯应该一闪一闪。紧急情况时,汽车的刹车灯与尾灯应同时闪烁。2.22.2 设计方案设计方案采用 AT89C51 单片机来完成汽车灯光控制电路的设计。利用单片机丰富的 I/O 端口,与其控制的灵活性,实
9、现基本的功能要求。汽车车灯控制电路的方框图如 2.1 所示。AT89C51电源电路时序与复位电路灯光控制模块灯光显示模块报警模块图 2.1 汽车车灯控制电路的方框图电源电路即为驱动单片机工作的电源所设计的电路,它的输出端与单片机的 Vcc 相连,本设计电路采用 USB 口转换 5V 直流作为单片机电源。时序与复位电路是作为单片机能正常工作所必须的最小系统,前者提供单片机工作所需的时拍,后者初始化单片机。灯光控制模块是汽车灯光的控制按钮,共有 7 个,直接连接到 P1 口的各口线上,按下则相关的灯亮,再按则灭。灯光显示模块即为汽车灯光显示电路,通过开关控制其显示情况。报警模块是在汽车转弯或发生紧
10、急情况时,随着相关车灯闪烁的同时,驱动蜂鸣器响以发出警报,以提醒行人或求救。 . . . . 2 / 173 硬件设计3.13.1 AT89C51AT89C51 单片机的结构与功能单片机的结构与功能3.1.13.1.1 AT89C51AT89C51 的结构与引脚的结构与引脚AT89C51 就是一个微型计算机,AT89C51 单片机主要由运算器、控制器、存储器(ROM 与RAM)和 I/O 接口组成。它的部结构图如 3.1.1 所示。振荡器和时序 OSC程序存储器4KB Flash ROM数据存储器 256 字节RAM/SFR216 位定时器/计数器80C51CPU64KB 总线扩展控制器可编程
11、 I/O 口可编程全双工串行口外部事件计数输入外中断内中断控制P0P1P2P3串行通信DBUS图 3.1.1AT89C51 单片机芯片部结构运算器包括一个可进行 8 位算术运算和逻辑运算的单元 ALU,8 位的暂存器 1(TMP1) 、暂存器 2(TMP2) ,8 位累加器 ACC,寄存器 B 和程序状态寄存器 PSW 等。控制器包括程序计数器 PC、指令寄存器 IR、指令译码器 ID、振荡器与定时电路等。AT89C51 片有 Flash ROM(程序存储器,只能读)和 RAM(数据存储器,可读可写)两类,他们各自有独立的存储地址空间,与一般的存储器配置方式很不同。AT89C51 单片机有 4
12、 个与外部交换信息的 8 位并行接口,即 P0-P3。他们都是准双向口,每个端口各有 8 条 I/O 线,均可作输入/输出。P0-P3 口 4 个锁存器同 RAM 统一编址,可以把 I/O口当做一般特殊功能寄存器(SFR)来寻址。图 3.1.2AT89C51 的引脚如图 3.1.2 所示是一个双列直插封装(DIP)方式的 AT89C51 单片机,它共有 40 个引脚。. . . . 3 / 17其中很多引脚具有第二功能,使用时要加以注意。3.1.23.1.2 AT89C51AT89C51 的主要性能的主要性能AT89C51 是一种 4K 字节闪烁可编程可擦除只读存储器(FPEROMFlash
13、Programmable and Erasable Read Only Memory)的低电压,高性能 CMOS 8 位微处理器,俗称单片机。该器件采用 ATMEL 高密度非易失存储器制造技术制造,与工业标准的 MCS-51 指令集和输出管脚相兼容。由于将多功能 8 位 CPU 和闪烁存储器组合在单个芯片中,ATMEL 的 AT89C51 是一种高效微控制器。它为很多嵌入式控制系统提供了一种灵活性高且价廉的解决方案。AT89C51 主要特性如下所述。与 MCS-51 兼容,一个 8 位的 80C51 微处理器(CPU) ;片 256 字节数据存储器 RAM/SFR,用于存放可以读/写的数据;片
14、 4K 字节可编程闪烁存储器,用于存放程序、一些原始数据和表格;寿命:1000 写/擦循环;数据保留时间:10 年;全静态工作:0-24MHz;三级程序存储器锁定;4 个 8 位并行可编程 I/O 口 P0-P3,每个口既可作输入又可作输出;两个 16 位定时器/计数器,每个定时器/计数器可设置成计数方式,用以对外部事件计数,也可设置成定时方式,根据定时结果实现单片机控制;5 个中断源 、两个中断优先级;一个全双工 UART(通用异步发送接收器)的串行 I/O 口,用于实现单片机之间或单片机与计算机之间串行通信;具有低功耗的闲置模式和掉电模式;片振荡器和时钟电路,但石英晶体和微调电容需要外接,
15、最高允许振荡频率为24MHz。23.1.33.1.3 AT89C51AT89C51 的管脚功能的管脚功能VCC(40 脚):电源端,为+5V。GND(20 脚):接地端。P0 口(P0.0-P0.7,39-32 脚):P0 口为一个 8 位漏级开路准双向 I/O 口,每脚可吸收 8 个TTL 门电流。当 P0 口作为输入口使用时,应先向口锁存器(地址 80H)写入全 1,此时 P0 口的全部引脚浮空,可作为高阻抗输入。做输入口使用时先写 1,这就是准双向的含义。在 CPU 访问片外存储器(AT89C51 片外 EPROM 或 RAM)时,P0 口分时提供 8 位地址和 8 位数据的复用总线。在
16、此期间,P0 口部上拉电阻有效。在 Flash ROM 编程时,P0 端口接受指令字节;而在校验程序时,则输出指令字节、验证时,要求外接上拉电阻。P1 口(P1.0-P1.7,1-8 脚):P1 口是一个部提供上拉电阻的 8 位双向 I/O 口,P1 口缓冲器能接收输出 4 个 TTL 门电流。P1 口管脚写入 1 后,被部上拉为高电位,可用作输入,P1 口被外部下拉为低电平时,将输出电流,这是由于部上拉的缘故。在 FLASH ROM 编程和校验时,P1口接收低 8 位地址。 P2 口(P2.0-P2.7,21-28 脚):P2 口为一个部上拉电阻的 8 位双向 I/O 口,P2 口缓冲器可接
17、收,输出 4 个 TTL 门电流,当 P2 口被写“1”时,其管脚被部上拉电阻拉高,可作为输入。作为输入时,P2 口的管脚被外部拉低,将输出电流。这是由于部上拉的缘故。P2 口当用于外部程序存储器或 16 位地址外部数据存储器进行存取时,P2 口输出地址的高八位。在给出地址“1”时,它利用部上拉优势,当对外部八位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器的容。P2 口在 FLASH 编程和校验时接收高 8 位地址信号和控制信号。P3 口(P3.0-P3.7,10-17 脚):P3 口管脚是 8 个带部上拉电阻的双向 I/O 口,可接收输出4 个 TTL 门电流。当 P3 口写入“1
18、”后,它们被部上拉为高电平,并用作输入。作为输入时,由于外部下拉为低电平,P3 口将输出电流,这是由于上拉的缘故。在对 Flash ROM 编程或程序校验时,P3 口还接受一些控制信号。P3 口也可作为 AT89C51 的一些特殊功能口,如表 1 所示。. . . . 4 / 17表 1P3 口的第二功能I/O 口线专用功能P3.0RXD(串行数据接收)P3.1TXD(串行数据发送)P3.2 (外部中断 0 请求输入)0INTP3.3 (外部中断 1 请求输入)1INTP3.4T0(定时器 0 外部计数脉冲输入)P3.5T1(定时器 1 外部计数脉冲输入)P3.6 (外部数据存储器写信号)WR
19、P3.7 (外部数据存储器读信号)RDRST(9 脚):复位信号输入端。当振荡器复位器件时,要保持 RST 脚两个机器周期(24 个时钟振荡周期)的高电平时间。ALE/ (30 脚):当访问外部存储器时,地址锁存 ALE 的输出信号用于锁存低 8 位地PROG址。在 FLASH 编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个 ALE 脉冲。如想禁止 ALE 的输出可在SFR8EH 地址上置 0。此时, ALE 只有在执行 MOVX,
20、MOVC 指令是 ALE 才起作用。如果微处理器在外部执行状态,ALE 禁止,置位无效。ALE 端得负载驱动能力为 8 个 LS 型 TTL(低功耗甚至高速TTL)负载。此引脚的第 2 功能在对片带有 4KB FLASH ROM 的 AT89C51 编程写入(固化程PROG序)时,作为编程脉冲输入端。(29 脚):外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器PSEN周期两次有效。但在访问外部数据存储器时,这两次有效的信号将不出现。PSENPSEN端同样可驱动 8 个 LS 型 TTL 负载。要检查一个 AT89C51 小系统上电后 CPU 能否正常工作,PSEN也可用示波器检
21、查端有无脉冲输出。如有,则说明基本上工作正常。PSEN/Vpp(31 脚):外部程序存储器地址允许输入端/固化编程电压输入端。当引脚接高EAEA电平时,CPU 只访问片 Flash ROM 并执行部程序存储器中的指令;但当 PC(程序计数器)的值超过 0FFFH 时,并自动转去执行片外程序存储器的程序。当引脚接低电平(接地)时,CPUEA只访问片外 ROM 并执行片外程序存储器中的指令,而不管是否有片程序存储器。在 Flash ROM编程期间,该引脚也用于施加 12V 的编程允许电源 Vpp(如果选用 12V 编程)。XTAL1(19 脚):接外部晶体和微调电容的一端。反向振荡放大器的输入与部
22、时钟工作电路的输入。XTAL2(18 脚):接外部晶体和微调电容的另一端。在 AT89C51 片它是振荡电路反响放大器的输出端,振荡电路的频率就是晶体的固有频率。若采用外部时钟电路,该引脚悬空。另外 AT89C51 使用静态逻辑来设计的,其工作频率可下降到 0Hz,并提供两种可用软件来选择的省电方式:空闲方式和掉电方式。在空闲方式中,CPU 停止工作,而 RAM、定时器/计数器、串行口和中断系统都继续工作。此时的电流可降到大约为正常值的 15%。在掉电方式中,片振荡器停止工作,由于时钟电路被“冻结” ,使一切功能都暂停,故只保存片 RAM 中的容,直到下一次硬件复位为止。这种方式下的电流可降到
23、 15uA,最小可降到 0.6uA。33.23.2 AT89C51AT89C51 的时序电路的时序电路AT89C51 单片机与其他单片机或微机一样是一种时序电路,从 Flash ROM 中取指令和执行指. . . . 5 / 17令过程中的各种微操作,都是按着节拍有序的工作的。AT89C51 的时序电路如图 3.2 所示。AT89C51 单片机芯片部有一个高增益反向放大器,用于构成振荡器。反向放大器的输入端为XTAL1,输出端为 XTAL2,两端跨接石英晶体和两个电容就可以构成稳定的自激振荡器,电容和通常取 30pF 左右,可稳定频率并对振荡频率有微调作用。振荡频率围为=0-24Mhz。1C2
24、COSCf晶体振荡器的频率为,振荡信号从 XTAL2 端输入片的时钟信号发生器上,时钟发生器OSCf是一个 2 分频的触发器电路,他将振荡器的信号频率除以 2,向 CPU 提供两相时钟信号 P1OSCf和 P2。时钟信号周期称为状态周期 S,是振荡周期的 2 倍,每个状态周期 S 的前半周期,相位1(P1)信号有效,在每个状态周期 S 的后半周期,相位 2(P2)信号有效。CPU 就以两相时钟 P1和 P2 为基本拍指挥单片机各个部件协调地工作。单片机工作需要若干指令,而执行一条指令需要多少时间以机器周期为单位,一个机器周期是指 CPU 访问存储器一次所需要的时间,它包括12 个振荡周期,分为
25、 6 个 S 状态周期:S1-S6,每个状态周期又分为两拍,称为 P1 和 P2。因此一个机器周期中的 12 个振荡周期表示为 S1P1,S1P2,S2P1,S6P2。3.33.3 AT89C51AT89C51 的复位电路的复位电路T89C51 单片机与其他微处理器一样,在启动时需要复位,使 CPU与系统各部件处于确定的初始状态,并从初始状态开始。当系统处于正常工作状态时,且振荡器稳定后,RST 引脚上有一个高电平并维持 2 个机器周期(24 个振荡周期) ,则 CPU 就可以相应并将系统复位。除了系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也必须按复位
26、键重新启动。AT89C51 单片机的复位电路如图 3.3 所示。在通电瞬间,电容通过电阻充电,RST 端出现正脉冲,用以复C2R位。只要电源的上升时间不超过 1ms,就可以实现上电自动复CCV位。在振荡稳定后为保证复位高电平持续时间(即正脉冲宽度)大于两个机器周期,当采用的晶体为 12Mhz 时,可取=10uF,=8.2k;当采用的晶体频率为 6Mhz 时,可取=22uF,=1k。当系统出现死CRCR机或需要重新复位时,可直接按 RESET 键,这时通过电阻直接把 RST 端拉高,实现手动复CCV1R位4。3.43.4 AT89C51AT89C51 的电源电路的电源电路本设计的单片机电源采用
27、USB 接口转换交流 220V 为 5V 直流供单片机使用,如图 3.4 所示。由于标准 USB 口的输出电压为 5V,这样正好可供单片机使用,这种设计非常的方便,即插即用,具有很大的灵活性。我们可以通过一条数据线将其连接到计算机上,或者通过 MP3 的充电器将其连接到交流电上,以给单片机供电。这些东西在我们的生活中都非常常见,因此非常方便。220V 的交流信号经过 USB 口整流后变为 5V 的脉动直流,电路中电容=470uF,利用其充1C放电特性,使整流后的脉动直流变为比较稳定的直流。由于整流后的信号带有高频与脉冲干扰信号,而电解电容具有一定的电感,对其不能有效的滤除,因此利用电容=0.1
28、pF 的小电容,2C以滤去高频与脉冲干扰。电容、共同构成滤波电路。稳压二极管和限流电阻共同构成1C2C1D1R直流稳压电路。电阻和发光二极管串联作为供电指示灯。2R稳压管的一般选择原则为ZOUUZZDZMIIImaxminZMZLLIIII其中为稳压管的稳定电压,为直流稳压电路的输出电压或单片机的输入电压,为ZUOUZDI稳压管稳压时流过的电流。、分别为稳压管能够稳压的最大、最小电流,、分ZMIZImaxLIminLI别为负载电流的最大、最小值。5图 3.2 AT89C51 的时序电路图 3.3 AT89C51 的复位电路5V. . . . 6 / 17图 3.4 AT89C51 的电源电路3
29、.53.5 汽车灯光控制电路汽车灯光控制电路经过组合以上的各单元电路后形成整体电路,如图 3.5 所示。(1)开关控制部分开关控制部分采用 P1 个线口输入,其中远、近光灯分别用开关、控制,按下时相关0K1K灯亮,再按则灭,和不能同时使用。左、右方向灯用开关、控制按下时相关灯亮,0K1K2K3K再按则灭,、互锁。雾灯、刹车灯、尾灯、紧急灯分别用开关、控制,2K3K4K5K6K7K按下相关灯亮,再按则灭。(2)信号灯部分发光二极管和普通二极管一样都具有单向导电性,只有外加正向电压使得正向电流足够大时才能发光。发光二极管的开启电压比普通二极管的大,一般红色的在 1.6V-2.5V 之间,黄色的在
30、1.9V-2.4V 之间,绿色的在 2.0V-2.4V 之间,蓝色/白色的在 3.0V-3.8V 之间。一般发光二极管的正向导通电流为 5mA-20mA。正向电流愈大,则发光愈强。则限流电阻 R 的计算公式为CCDDVURI其中为发光二极管的开启电压,为导通电流。DUDI7本电路中红色发光二极管的开启电压=2V,导通电流=10mA,则限流电阻为DUDI523000.01R 依据上述公式可以计算出其它发光二极管的限流电阻。(3)声音信号部分本次设计的电路在汽车拐弯,汽车方向灯闪烁的同时通过 P3.0 脚驱动蜂鸣器发出嘀嘀间歇作响的声音。当发生紧急情况,紧急灯控制开关按下时,除过相关的灯闪烁的同时
31、,蜂鸣器也发出嘀嘀间歇作响的声音,此时如果正在拐弯时,则汽车方向灯闪烁的同时不发声。程序中改变单片机 P3.0 引脚输出波形的频率,就可以调整控制蜂鸣器音调,产生各种不同音色、音调的声音。另外,改变 P3.0 输出电平的高低电平占空比,则可以控制蜂鸣器的声音大小。(4)汽车灯光控制电路汽车灯光控制电路如图 3.5 所示,由于 P0 口部为一漏极开路电路,没有部上拉电阻,作为输入口使用时应先写 1,因此给 P0 口串一个 810K 的排阻,以作为其部上拉电阻。这样 P0口就可以成功的作为输入口使用。夜晚汽车正常行驶时,开关按下(接 P1.0 口) ,远光灯,亮;当要汇车时应按下0K5D6D开关(
32、接 P1.1 口) ,远光灯,灭,近光灯,亮。汇车完毕,再次按下,则远1K5D6D7D8D0K光灯、亮。汽车左转弯时,按下开关(接 P1.2 口) ,这时前左方向灯与后左方向灯5D6D2K1D亮,并且灯光一闪一闪,同时驱动蜂鸣器 LS1 作间歇性嘀嘀作响,汽车转正后再按下开关则9D灯灭;当要右转弯时, (接 P1.3 口) ,按下开关,这时前右方向灯与后右方向灯亮,灯3K2D10D光一闪一闪,同时驱动蜂鸣器 LS1 作间歇性嘀嘀作响。汽车转正直行后再按下开关则灯灭。左、右方向灯同时只能有一个能工作。当遇到大雾天气时,应按下开关(接 P1.4 口) ,则雾灯、4K3D. . . . 7 / 17
33、、和亮;当踩下刹车时(接 P1.5 口) ,即相当按下开关,刹车灯与亮;刹车4D11D12D5K13D14D松开时,即相当于再按下开关,则刹车灯灭。晚上行车或靠边停车时,为使后面的车辆或行5K人能清楚的看到前面的车辆,应当按下开关(接 P1.6 口) ,使汽车尾部的照明灯与亮。6K15D16D当遇到紧急情况是,应当按下开关,这时汽车灯、,,不停4K1D9D2D10D13D14D15D16D闪烁,同时驱动蜂鸣器急促的嘀嘀作响,以发出警报。图 3.5 汽车灯光控制电路4 软件设计本设计采用的是 C 程序设计语言设计单片机程序的。C 语言是一种结构化计算机程序设计语言。它层次清晰,便于按模块化方式组
34、织程序,易于调试和维护。C 语言的表现能力和处理能力极强。它不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构。它还可以直接访问存的物理地址,进行位 (bit)一级的操作。它既有高级语言的特点,又具有汇编语言的特点。它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。C 程序设计语言设计程序可读性强,可移植性好,适合于编写对硬件依赖性不强的程序。根据软件的设计思想,可画出本系统程序流程图如图 4.1 所示。8程序运行后,通过 while 语句循环扫描,不断读入 7 个开关的状态,通过 if-else 语句判断各个开关状态,为 0 时
35、则转到相应的程序通过软件点亮汽车车灯,否则不操作或关断相应的车灯。5 5 仿真与调试本设计采用的仿真软件Keil C51 Vision2和Proteus professional 7.5进行仿真的。Keil C51 Vision2主要用于单片机程序的编写调试与仿真。Proteus professional 7.5主要用于单片机与硬件电路的仿真。5.15.1 KeilKeil C51C51 Vision2Vision2 介绍介绍Keil C51 是美国 Keil Software 公司出品的 51 系列兼容单片机 C 语言软件开发系统,与汇. . . . 8 / 17编相比,C 语言在功能上、结
36、构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用 C 来开发,体会更加深刻。Keil C51 软件提供丰富的库函数和功能强大的集成开发调试工具,全 Windows 界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到 Keil C51 生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。C51 工具包中的 uVision 与 Ishell 分别是 C51 for Windows 和 for Dos 的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用 IDE 本身或
37、其它编辑器编辑 C 或汇编源文件。然后分别由 C51 与 A51编译器编译生成目标文件(.OBJ)。目标文件可由 LIB51 创建生成库文件,也可以与库文件一起经 L51 连接定位生成绝对目标文件(.ABS)。ABS 文件由 OH51 转换成标准的 Hex 文件,以供调试器 dScope51 或 tScope51 使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如 EPROM 中。Keil C51 Vision2 集成开发环境是 Keil Software,Inc/Keil Elektronik GmbH 开发的基于 80C51 核的微处理器软件开发平台,嵌
38、多种符合当前工业标准的开发工具,可以完成从工程建立到管理、编译、 、目标代码的生成、软件仿真、硬件仿真等完整的开发流程尤其是 C 编译工具在产生代码的准确性和效率方面达到了较高的水平,而且可以附加灵活的控制选项,在开发大型项目时非常理想。程序入口读入开关K0(P1.0) 、K1(P1.1) 、K2(P1.2) 、K3(P1.3)K4(P1.4) 、K5(P1.5) 、K6(P1.6) 、K7(P1.7)状态判断开关状态开关K0-P1.0为 0,远光灯D5、D6亮开关K1-P1.1为 0,近光灯D7,D8亮开关K2-P1.2为 0,左方向灯D1、D9亮闪开关K3-P1.3为 0,右方向灯D2、D
39、10 亮闪开关K4-P1.4为 0,雾灯D3、D4、D11、D12亮开关K5-P1.5为 0,刹车灯D13、D14 亮开关K6-P1.6为 0,尾灯D15、D16 亮开关K7-P1.7为 0,灯D13、D14、D15、D16亮闪图 4.1 系统程序流程图5.25.2 ProteusProteus ProfessionalProfessional 7.57.5 介绍介绍Proteus是由英国Labcenter electronics公司开发的EDA工具软件。他从1989年出现一直到现在已经有20多年的历史,在全球广泛使用。Proteus安装以后,主要由两个程序组成:Ares和Isis。前者主要用
40、于PCB自动或人工布线与其电路仿真,后者主要采用原理布图的方法绘制电路并进行相应的仿真。除了上述基本应用之外,Proteus革命性的功能在于它的电路仿真是互动的,. . . . 9 / 17针对微处理器的应用,可以直接在基于原理图的虚拟原型上编程,并实现软键代码级的调试,还可以直接实时动态地模拟按钮、键盘的输入,LED、液晶现实的输出,同时配合虚拟工具如示波器、逻辑分析仪等等进行相应的测量与观测。Proteus软件的应用围十分广泛,涉与PCB制板、SPICE的电路仿真、单片机仿真,在6.9版本中还加入了对ARM7/LPC2000的仿真。与多数仿真软件相似,Proteus 有着数量庞大的元器件库
41、。与多数仿真软件相似,Proteus有着数量庞大的元件库。Labcenter 公司与相关的第三方软件阵容共同开发了 6000 多个模拟和数字电路中常用的 spice 模型以与各种动态元件,基本元件如电阻、电容、各种二极管、三极管、MOS 管、555 定时器等;74 系列 TTL 元件和 4000 系列 CMOS 元件;存储芯片包括各种常用的 ROM, RAM,EEPROM, 还有常见 I2C 器件等。在丰富的库元件的支持下,原理布图时只要进行相应的调用和连线,通过对每个元件的属性设置完成绘图,然后即可进行仿真和虚拟测量。95.35.3 调试调试对本系统来说,调试工作分以下三步进行。1)在系统的
42、硬件部分制作出来后,对其进行详细地检测调试,查看制作过程中是否存在错焊、虚焊等情况,查看单片机是否能够正常工作,测试硬件部分是否能够完成其相应的功能。出现问题要予以排除,如果是硬件部分电路图的错误,则要对其修改,反复测试,直到硬件的连接完全无错,并且设计合理。本系统经过前后三次的电路设计和修改,最终硬件设计合理。在此,首先,需检验输出电压是否正常,应将变压器接入电源电路,观察发光二极管是否亮,以确定是否有电压输出,再用数字万用表测试输出电压是否是 5V,如果是 5V 表明电源电压正常工作,如果不是上述结果应该检查电路。2)在设计系统的软件部分时,在 Keil 软件中编写程序,对程序进行不断调试
43、编译,直到程序能够正常运行。然后在 Proteus 软件中进行仿真测试,看功能是否能够实现。3)系统联调。在上面两步完成后,我们就必须将汽车灯光控制电路的硬件和软件部分结合起来,进行系统联调,检验系统能否正常运行,测试系统各项性能指标,看是否能够达到预期的要求,必要时,还要不断地修改和完善程序,直到系统能够实现预期的功能。6 结论6.16.1 设计结果设计结果通过这次汽车灯光控制电路的设计,我收获甚多,前期经过大量资料的查阅,并设计好原理图、编写好程序以与编译修改,然后进行实物制作,为确保成功,对布线、装配、焊接每个过程都做了大量细致的工作,最终成功实现设计的要求。6.26.2 系统缺陷与建议
44、系统缺陷与建议本次设计的电路虽然最终实现设计的要求,但还有以下缺陷。1)灯光采用发光二极管,效果不是很理想。建议采用功率更大的灯泡代替。2)由于采用单片机作为控制器,输出的直流电压只有 5v,电流也只有 20 毫安左右,因此,想驱动更大的灯需要添加放大电路或者要采用继电器实现对交流电路的控制。3)由于没有采用 PCB 板,电路不稳定易受外部干扰,最好能制作成 PCB 板电路。6.36.3 致致本次设计得到宋老师的大量设计指导,特此感。也感罗东同学在电路焊接过程中给予的很多建设性的意见。. . . . 10 / 17参考文献1汇坚,池品优.基于MS-51系列单片机的控制汽车转弯信号灯J.现代计算
45、机(专业版),2009(6):45-48.2朝青.单片机原理与接口技术M.航空航天大学,2005.17-47.3何立民.MCS-51单片机应用系统设计M.航空航天大学,1995.30-45.4新民.单片机实用系统.:人民邮政,2001.21-35.5童诗白,华成英.模拟电子技术基础M.:高等教育,2007.387-406.6毋茂盛,王静,晖.单片机串行接口技术研究J.师大学学报,2000,28(3):96-98.7毅.串行接口 8 位 LED 显示驱动器j.职业技术学院学报,2003,12(3):110-113.8洪财.单片机C语言和汇编语言实用开发技术M.工程大学,2008.19-65.9周
46、润景,丽娜.基于PROTUES的电路与单片机系统设计与仿真M.航空航天大学,2006.8-112.10 Detlef Decker.Performance and Perspectives of Light Sources for Signal Lamps,HELLA KG Hueck & Co.,Gemany,1990,1(0703). 11 Christophe DUBOSC.Styling Trends for Car Rearlamps.Valeo Lighting systems,SEA 980321. . . . 11 / 17附录 程序清单/头文件、键位声明=#include s
47、bit key0=P10;/远光灯控制键sbit key1=P11;/近光灯控制键sbit key2=P12;/左方向灯控制键sbit key3=P13;/右方向灯控制键sbit key4=P14;/雾灯控制键sbit key5=P15;/刹车灯控制键sbit key6=P16;/后照明灯控制键sbit key7=P17;/紧急情况控制键sbit led0=P00;/后左方向灯sbit led1=P01;/后左雾灯sbit led2=P02;/左刹车灯sbit led3=P03;/左尾灯sbit led4=P04;/前左方向灯sbit led5=P05;/前左雾灯sbit led6=P06;/左近光灯sbit led7=P07;/左远光灯sbit led8=P20;/右远光灯sbit led9=P21;/前右雾灯sb
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 智慧园区规划方案
- 2025年园林喷灌设备市场调查报告
- 2025年装饰板市场分析报告
- 晋州农村水厂改造工程方案
- 润滑油基础油项目立项申请报告模板
- 北京市城市装饰装修工程施工合同(15篇)
- 2025年中国中药提取物行业市场专项调研及投资前景可行性预测报告
- 改性磷石膏综合利用投资项目可行性建设分析报告案例
- 2025年河水污染调查报告-5
- 新建京唐城际铁路工程项目可行性研究报告
- 《强化危险化学品“一件事”全链条安全管理措施》知识培训
- 智慧树知到《形势与政策(北京大学)》2025春期末答案
- 2025年中国尼龙注塑件市场调查研究报告
- 《智慧能源体系》课程教学大纲
- 大象版五年级下册《科学》全套教学课件
- DBJ04-T 241-2024 公共建筑节能设计标准
- 1.2区域整体性和关联性-以青田县稻鱼共生为例课件-高中地理人教版(2019)选择性必修2
- 特殊人群安全用药指导
- 工业物联网安全风险评估-深度研究
- 2024年机场广告行业投资分析及发展战略研究咨询报告
- 《洗地机培训方案》课件
评论
0/150
提交评论