




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、目 录1 绪论.1 12 设计方案.12.1 功能要求.12.2 设计方案.13 硬件设计.23.1 AT89C51 单片机的结构及功能.23.1.1 AT89C51 的结构及引脚.23.1.2 AT89C51 的主要性能.33.1.3 AT89C51 的管脚功能.33.2 AT89C51 的时序电路.53.3 AT89C51 的复位电路.53.4 AT89C51 的电源电路.63.5 汽车灯光控制电路.64 软件设计.85 仿真与调试.85.1 KEIL C51 VISION2 介绍 .85.2 PROTEUS PROFESSIONAL 7.5 介绍 .95.3 调试.106 结论.106.
2、1 设计结果.10参考文献 .11附录 程序清单 .12第 1 页 1 绪论随着汽车数量的大量增加,交通安全问题也越来越严峻。而汽车车灯光控制系统的可靠、稳定对于安全行驶起着非常重要的作用,因此汽车灯光控制电路的研究和设计成为解决交通安全问题的一种好的途径。汽车工业的发展也促使汽车车灯控制电路的设计和研究不断的提高,汽车的功能要求也越来越庞大,因此各单元电路也需要向小型化的方向发展,以使汽车能够能装入更多的功能模块。传统的使用纯硬件设计的电路,不仅电路庞大复杂,而且一旦出了问题维修检测起来也耗时费力。因此智能化、小型化的电路设计走上了时代的潮流,也必将影响以后的汽车控制系统的设计,不仅如此还要
3、综合考虑加工工艺、寿命、成本等问题,以使设计的电路能够大量普及。伴随着汽车工业的发展,汽车灯光控制电路的发展已经非常的成熟,目前,汽车灯光控制系统发展充分利用了现代科技的发展成果。采用纯硬件、PLC电气控制技术设计的汽车灯光控制电路已经得到大量应用。传统的采用纯硬件设计的电路正逐渐向着软硬结合的方向发展,也将随时应用最新的科学技术。单片机的发展正朝着低功耗、高性能、低价格和外围电路内装化的方向发展。因此,采用单片机设计的汽车灯光控制电路,应用软件来实现庞大的控制功能,而且通过外围电路的扩展还能实现更多的附加功能。这种控制电路不仅体积小、成本低,而且也更加智能,可以随时修改整个控制功能,非常适合
4、现代汽车工业的发展潮流。总之,使着汽车灯光控制电路向着更加可靠,功能更加庞大、智能的方向发展。12 设计方案2.12.1 功能要求功能要求汽车车灯采用发光二极管来设计,汽车前部两侧各有远光灯一部(夜间正常行车时使用,大功率白色发光二极管) ,近光灯一部(夜间行驶汇车时使用,小功率白色发光二极管) ,远光灯与近光灯不能同时使用;汽车左右各有 2 个指示灯:方向灯(小功率黄色发光二极管) ,雾灯(大功率黄色发光二极管) 。汽车后部两侧各有刹车灯一部(小功率红色发光二极管) ,倒车灯一部(大功率红色发光二极管) 。刹车时,刹车灯亮(不闪) 。转弯时,汽车方向灯应该一闪一闪。紧急情况时,汽车的刹车灯与
5、倒车等应同时闪烁。2.22.2 设计方案设计方案采用 AT89C51 单片机来完成汽车灯光控制电路的设计。利用单片机丰富的 I/O端口,及其控制的灵活性,实现基本的功能要求。汽车车灯控制电路的方框图如2.1 所示。AT89C51电源电路时序及复位电路灯光控制模块灯光显示模块报警模块图 2.1 汽车车灯控制电路的方框图电源电路即为驱动单片机工作的电源所设计的电路,它的输出端与单片机的Vcc 相连,本设计电路采用 USB 口转换 5V 直流作为单片机电源。时序及复位电路是第 2 页 作为单片机能正常工作所必须的最小系统,前者提供单片机工作所需的时拍,后者初始化单片机。灯光控制模块是汽车灯光的控制按
6、钮,共有 7 个,直接连接到 P1 口的各口线上,按下则相关的灯亮,再按则灭。灯光显示模块即为汽车灯光显示电路,通过开关控制其显示情况。报警模块是在汽车转弯或发生紧急情况时,随着相关车灯闪烁的同时,驱动蜂鸣器响以发出警报,以提醒行人或求救。 3 硬件设计3.13.1 AT89C51AT89C51 单片机的结构及功能单片机的结构及功能3.1.13.1.1 AT89C51AT89C51 的结构及引脚的结构及引脚AT89C51 就是一个微型计算机,AT89C51 单片机主要由运算器、控制器、存储器(ROM 及 RAM)和 I/O 接口组成。它的内部结构图如 3.1.1 所示。振荡器和时序 OSC程序
7、存储器4KB Flash ROM数据存储器 256 字节RAM/SFR216 位定时器/计数器80C51CPU64KB 总线扩展控制器可编程 I/O 口可编程全双工串行口外部事件计数输入外中断内中断控制P0P1P2P3串行通信DBUS图 3.1.1 AT89C51 单片机芯片内部结构运算器包括一个可进行 8 位算术运算和逻辑运算的单元 ALU,8 位的暂存器1(TMP1) 、暂存器 2(TMP2) ,8 位累加器 ACC,寄存器 B 和程序状态寄存器 PSW 等。控制器包括程序计数器 PC、指令寄存器 IR、指令译码器 ID、振荡器及定时电路等。AT89C51 片内有 Flash ROM(程序
8、存储器,只能读)和 RAM(数据存储器,可读可写)两类,他们各自有独立的存储地址空间,与一般的存储器配置方式很不同。AT89C51 单片机有 4 个与外部交换信息的 8 位并行接口,即 P0-P3。他们都是准双向口,每个端口各有 8 条 I/O 线,均可作输入/输出。P0-P3 口 4 个锁存器同 RAM统一编址,可以把 I/O 口当做一般特殊功能寄存器(SFR)来寻址。第 3 页 图 3.1.2 AT89C51 的引脚如图 3.1.2 所示是一个双列直插封装(DIP)方式的 AT89C51 单片机,它共有40 个引脚。其中很多引脚具有第二功能,使用时要加以注意。3.1.23.1.2 AT89
9、C51AT89C51 的主要性能的主要性能AT89C51 是一种 4K 字节闪烁可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压,高性能 CMOS 8 位微处理器,俗称单片机。该器件采用 ATMEL 高密度非易失存储器制造技术制造,与工业标准的 MCS-51 指令集和输出管脚相兼容。由于将多功能 8 位 CPU 和闪烁存储器组合在单个芯片中,ATMEL 的 AT89C51 是一种高效微控制器。它为很多嵌入式控制系统提供了一种灵活性高且价廉的解决方案。AT89C51 主要特性如下所述。与 MCS-51
10、兼容,一个 8 位的 80C51 微处理器(CPU) ;片内 256 字节数据存储器 RAM/SFR,用于存放可以读/写的数据;片内 4K 字节可编程闪烁存储器,用于存放程序、一些原始数据和表格;寿命:1000 写/擦循环;数据保留时间:10 年;全静态工作:0-24MHz;三级程序存储器锁定;4 个 8 位并行可编程 I/O 口 P0-P3,每个口既可作输入又可作输出;两个 16 位定时器/计数器,每个定时器/计数器可设置成计数方式,用以对外部事件计数,也可设置成定时方式,根据定时结果实现单片机控制;5 个中断源 、两个中断优先级;一个全双工 UART(通用异步发送接收器)的串行 I/O 口
11、,用于实现单片机之间或单片机与计算机之间串行通信;具有低功耗的闲置模式和掉电模式;片内振荡器和时钟电路,但石英晶体和微调电容需要外接,最高允许振荡频率为 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,这就是准双向的含义
12、。在 CPU 访问片外存储器(AT89C51 片外 EPROM 或 RAM)时,第 4 页 P0 口分时提供 8 位地址和 8 位数据的复用总线。在此期间,P0 口内部上拉电阻有效。在 Flash ROM 编程时,P0 端口接受指令字节;而在校验程序时,则输出指令字节、验证时,要求外接上拉电阻。P1 口(P1.0-P1.7,1-8 脚):P1 口是一个内部提供上拉电阻的 8 位双向 I/O口,P1 口缓冲器能接收输出 4 个 TTL 门电流。P1 口管脚写入 1 后,被内部上拉为高电位,可用作输入,P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在 FLASH ROM 编程和
13、校验时,P1 口接收低 8 位地址。 P2 口(P2.0-P2.7,21-28 脚):P2 口为一个内部上拉电阻的 8 位双向 I/O 口,P2 口缓冲器可接收,输出 4 个 TTL 门电流,当 P2 口被写“1”时,其管脚被内部上拉电阻拉高,可作为输入。作为输入时,P2 口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2 口当用于外部程序存储器或 16 位地址外部数据存储器进行存取时,P2 口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器的内容。P2口在 FLASH 编程和校验时接收高 8 位地址信号和控
14、制信号。P3 口(P3.0-P3.7,10-17 脚):P3 口管脚是 8 个带内部上拉电阻的双向 I/O口,可接收输出 4 个 TTL 门电流。当 P3 口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入时,由于外部下拉为低电平,P3 口将输出电流,这是由于上拉的缘故。在对 Flash ROM 编程或程序校验时,P3 口还接受一些控制信号。P3 口也可作为 AT89C51 的一些特殊功能口,如表 1 所示。表 1 P3 口的第二功能I/O 口线专用功能P3.0RXD(串行数据接收)P3.1TXD(串行数据发送)P3.2 (外部中断 0 请求输入)0INTP3.3 (外部中断 1 请
15、求输入)1INTP3.4T0(定时器 0 外部计数脉冲输入)P3.5T1(定时器 1 外部计数脉冲输入)P3.6 (外部数据存储器写信号)WRP3.7 (外部数据存储器读信号)RDRST(9 脚):复位信号输入端。当振荡器复位器件时,要保持 RST 脚两个机器周期(24 个时钟振荡周期)的高电平时间。ALE/ (30 脚):当访问外部存储器时,地址锁存 ALE 的输出信号用于锁PROG存低 8 位地址。在 FLASH 编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当
16、用作外部数据存储器时,将跳过一个 ALE 脉冲。如想禁止 ALE 的输出可在 SFR8EH 地址上置 0。此时, ALE 只有在执行 MOVX,MOVC 指令是 ALE 才起作用。如果微处理器在外部执行状态,ALE 禁止,置位无效。ALE 端得负载驱动能力为 8 个 LS 型 TTL(低功耗甚至高速 TTL)负载。第 5 页 此引脚的第 2 功能在对片内带有 4KB FLASH ROM 的 AT89C51 编程写入(固化程PROG序)时,作为编程脉冲输入端。(29 脚):外部程序存储器的选通信号。在由外部程序存储器取指期间,PSEN每个机器周期两次有效。但在访问外部数据存储器时,这两次有效的信
17、PSENPSEN号将不出现。端同样可驱动 8 个 LS 型 TTL 负载。要检查一个 AT89C51 小系统PSEN上电后 CPU 能否正常工作,也可用示波器检查端有无脉冲输出。如有,则说明PSEN基本上工作正常。/Vpp(31 脚):外部程序存储器地址允许输入端/固化编程电压输入端。当EA引脚接高电平时,CPU 只访问片内 Flash ROM 并执行内部程序存储器中的指令;EA但当 PC(程序计数器)的值超过 0FFFH 时,并自动转去执行片外程序存储器内的程序。当引脚接低电平(接地)时,CPU 只访问片外 ROM 并执行片外程序存储器中EA的指令,而不管是否有片内程序存储器。在 Flash
18、 ROM 编程期间,该引脚也用于施加 12V 的编程允许电源 Vpp(如果选用 12V 编程)。XTAL1(19 脚):接外部晶体和微调电容的一端。反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2(18 脚):接外部晶体和微调电容的另一端。在 AT89C51 片内它是振荡电路反响放大器的输出端,振荡电路的频率就是晶体的固有频率。若采用外部时钟电路,该引脚悬空。另外 AT89C51 使用静态逻辑来设计的,其工作频率可下降到 0Hz,并提供两种可用软件来选择的省电方式:空闲方式和掉电方式。在空闲方式中,CPU 停止工作,而 RAM、定时器/计数器、串行口和中断系统都继续工作。此时的电流可降
19、到大约为正常值的 15%。在掉电方式中,片内振荡器停止工作,由于时钟电路被“冻结” ,使一切功能都暂停,故只保存片内 RAM 中的内容,直到下一次硬件复位为止。这种方式下的电流可降到 15uA,最小可降到 0.6uA。33.23.2 AT89C51AT89C51 的时序电路的时序电路AT89C51 单片机与其他单片机或微机一样是一种时序电路,从 Flash ROM 中取指令和执行指令过程中的各种微操作,都是按着节拍有序的工作的。AT89C51 的时序电路如图 3.2 所示。AT89C51 单片机芯片内部有一个高增益反向放大器,用于构成振荡器。反向放大器的输入端为 XTAL1,输出端为 XTAL
20、2,两端跨接石英晶体和两个电容就可以构成稳定的自激振荡器,电容和通常取 30pF 左右,可稳定频1C2C率并对振荡频率有微调作用。振荡频率范围为=0-OSCf24Mhz。晶体振荡器的频率为,振荡信号从 XTAL2 端输入OSCf片内的时钟信号发生器上,时钟发生器是一个 2 分频的触发器电路,他将振荡器的信号频率除以 2,向 CPU 提供两相时钟信号 P1 和 P2。OSCf时钟信号周期称为状态周期 S,是振荡周期的 2 倍,每个状态周期 S 的前半周期,相位 1(P1)信号有效,在每个状态周期 S 的后半周期,相位 2(P2)信号有效。CPU 就以两相时钟 P1 和 P2 为基本拍指挥单片机各
21、个部件协调地工作。单片机工作需要若干指令,而执行一条指令需要多少时间以机器周期为单位,一个机器周期是指 CPU访问存储器一次所需要的时间,它包括 12 个振荡周期,分为 6 个 S 状态周期:S1-S6,每个状态周期又分为两拍,称为 P1 和 P2。因此一个机器周期中的 12 个振荡周期表示为 S1P1,S1P2,S2P1,S6P2。图 3.2 AT89C51 的时序电路5V第 6 页 3.33.3 AT89C51AT89C51 的复位电路的复位电路T89C51 单片机与其他微处理器一样,在启动时需要复位,使 CPU 及系统各部件处于确定的初始状态,并从初始状态开始。当系统处于正常工作状态时,
22、且振荡器稳定后,RST引脚上有一个高电平并维持 2 个机器周期(24 个振荡周期),则 CPU 就可以相应并将系统复位。除了系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也必须按复位键重新启动。AT89C51单片机的复位电路如图 3.3 所示。在通电瞬间,电容通过电阻充电,RST 端出现正脉冲,C2R用以复位。只要电源的上升时间不超过 1ms,就可以实CCV现上电自动复位。在振荡稳定后为保证复位高电平持续时间(即正脉冲宽度)大于两个机器周期,当采用的晶体为 12Mhz 时,可取=10uF,C=8.2k;当采用的晶体频率为 6Mhz 时,可取=22uF,=1
23、k。当系统出现死RCR机或需要重新复位时,可直接按 RESET 键,这时通过电阻直接把 RST 端拉高,CCV1R实现手动复位4。3.43.4 AT89C51AT89C51 的电源电路的电源电路本设计的单片机电源采用 USB 接口转换交流 220V 为 5V 直流供单片机使用,如图 3.4 所示。由于标准 USB 口的输出电压为 5V,这样正好可供单片机使用,这种设计非常的方便,即插即用,具有很大的灵活性。我们可以通过一条数据线将其连接到计算机上,或者通过 MP3 的充电器将其连接到交流电上,以给单片机供电。这些东西在我们的生活中都非常常见,因此非常方便。220V 的交流信号经过 USB 口整
24、流后变为 5V 的脉动直流,电路中电容=470uF,利用其充放电特性,使整流后的脉动直流变为比较稳定的直流。由于整1C流后的信号带有高频及脉冲干扰信号,而电解电容具有一定的电感,对其不能有效的滤除,因此利用电容=0.1pF 的小电容,以滤去高频及脉冲干扰。电容、共2C1C2C同构成滤波电路。稳压二极管和限流电阻共同构成直流稳压电路。电阻和发1D1R2R光二极管串联作为供电指示灯。稳压管的一般选择原则为ZOUUZZDZMIIImaxminZMZLLIIII其中为稳压管的稳定电压,为直流稳压电路的输出电压或单片机的输入电ZUOU压,为稳压管稳压时流过的电流。、分别为稳压管能够稳压的最大、最小ZDI
25、ZMIZI电流,、分别为负载电流的最大、最小值。maxLIminLI5图 3.4 AT89C51 的电源电路图 3.3 AT89C51 的复位电路第 7 页 3.53.5 汽车灯光控制电路汽车灯光控制电路经过组合以上的各单元电路后形成整体电路,如图 3.5 所示。(1)开关控制部分开关控制部分采用 P1 个线口输入,其中远、近光灯分别用开关、控制,0K1K按下时相关灯亮,再按则灭,和不能同时使用。左、右方向灯用开关、控0K1K2K3K制按下时相关灯亮,再按则灭,、互锁。雾灯、刹车灯、倒车灯、紧急灯分别2K3K用开关、控制,按下相关灯亮,再按则灭。4K5K6K7K(2)信号灯部分发光二极管和普通
26、二极管一样都具有单向导电性,只有外加正向电压使得正向电流足够大时才能发光。发光二极管的开启电压比普通二极管的大,一般红色的在1.6V-2.5V 之间,黄色的在 1.9V-2.4V 之间,绿色的在 2.0V-2.4V 之间,蓝色/白色的在 3.0V-3.8V 之间。一般发光二极管的正向导通电流为 5mA-20mA。正向电流愈大,则发光愈强。则限流电阻 R 的计算公式为CCDDVURI其中为发光二极管的开启电压,为导通电流。DUDI7本电路中红色发光二极管的开启电压=2V,导通电流=10mA,则限流电阻为DUDI523000.01R 依据上述公式可以计算出其它发光二极管的限流电阻。(3)声音信号部
27、分本次设计的电路在汽车拐弯,汽车方向灯闪烁的同时通过 P3.0 脚驱动蜂鸣器发出嘀嘀间歇作响的声音。当发生紧急情况,紧急灯控制开关按下时,除过相关的灯闪烁的同时,蜂鸣器也发出嘀嘀间歇作响的声音,此时如果正在拐弯时,则汽车方向灯闪烁的同时不发声。程序中改变单片机 P3.0 引脚输出波形的频率,就可以调整控制蜂鸣器音调,产生各种不同音色、音调的声音。另外,改变 P3.0 输出电平的高低电平占空比,则可以控制蜂鸣器的声音大小。(4)汽车灯光控制电路汽车灯光控制电路如图 3.5 所示,由于 P0 口内部为一漏极开路电路,没有内部上拉电阻,作为输入口使用时应先写 1,因此给 P0 口串一个 810K 的
28、排阻,以作为其内部上拉电阻。这样 P0 口就可以成功的作为输入口使用。夜晚汽车正常行驶时,开关按下(接 P1.0 口) ,远光灯,亮;当要汇车0K5D6D时应按下开关(接 P1.1 口) ,远光灯,灭,近光灯,亮。汇车完毕,1K5D6D7D8D再次按下,则远光灯、亮。汽车左转弯时,按下开关(接 P1.2 口) ,这0K5D6D2K时前左方向灯与后左方向灯亮,并且灯光一闪一闪,同时驱动蜂鸣器 LS1 作间1D9D歇性嘀嘀作响,汽车转正后再按下开关则灯灭;当要右转弯时, (接 P1.3 口) ,按下开关,这时前右方向灯与后右方向灯亮,灯光一闪一闪,同时驱动蜂鸣器3K2D10DLS1 作间歇性嘀嘀作
29、响。汽车转正直行后再按下开关则灯灭。左、右方向灯同时只能有一个能工作。当遇到大雾天气时,应按下开关(接 P1.4 口) ,则雾灯、4K3D、和亮;当踩下刹车时(接 P1.5 口) ,即相当按下开关,刹车灯与4D11D12D5K13D亮;刹车松开时,即相当于再按下开关,则刹车灯灭。晚上行车或靠边停车时,14D5K为使后面的车辆或行人能清楚的看到前面的车辆,应当按下开关(接 P1.6 口) ,6K使汽车尾部的倒车明灯与亮。当遇到紧急情况是,应当按下开关,这时汽车15D16D4K灯、,,不停闪烁,同时驱动蜂鸣器急促的嘀嘀作响,1D9D2D10D13D14D15D16D以发出警报。第 8 页 图 3.
30、5 汽车灯光控制电路4 软件设计本设计采用的是 C 程序设计语言设计单片机程序的。C 语言是一种结构化计算机程序设计语言。它层次清晰,便于按模块化方式组织程序,易于调试和维护。C 语言的表现能力和处理能力极强。它不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构。它还可以直接访问内存的物理地址,进行位(bit)一级的操作。它既有高级语言的特点,又具有汇编语言的特点。它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。 C 程序设计语言设计程序可读性强,可移植性好,适合于编写对硬件依赖性不强的程序。 根据软件的设计思想,可画出本系统程
31、序流程图如图 4.1 所示。8程序运行后,通过 while 语句循环扫描,不断读入 7 个开关的状态,通过 if-else 语句判断各个开关状态,为 0 时则转到相应的程序通过软件点亮汽车车灯,否则不操作或关断相应的车灯。5 5 仿真与调试本设计采用的仿真软件Keil C51 Vision2和Proteus professional 7.5进行仿真的。Keil C51 Vision2主要用于单片机程序的编写调试与仿真。Proteus professional 7.5主要用于单片机及硬件电路的仿真。5.15.1 KeilKeil C51C51 Vision2Vision2 介绍介绍Keil C5
32、1 是美国 Keil Software 公司出品的 51 系列兼容单片机 C 语言软件开发系统,与汇编相比,C 语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用 C 来开发,体会更加深刻。Keil C51 软件提供丰富的库函数和功能强大的集成开发调试工具,全 Windows 界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到 Keil C51 生成的目标代码第 9 页 效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。C51 工具包中的 uVision 与 Ishell 分别是 C51 for W
33、indows 和 for Dos 的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用 IDE 本身或其它编辑器编辑 C 或汇编源文件。然后分别由 C51 及 A51 编译器编译生成目标文件(.OBJ)。目标文件可由 LIB51 创建生成库文件,也可以与库文件一起经 L51 连接定位生成绝对目标文件(.ABS)。ABS 文件由 OH51 转换成标准的 Hex 文件,以供调试器 dScope51 或 tScope51 使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如 EPROM 中。Keil C51 Vision2 集成
34、开发环境是 Keil Software,Inc/Keil Elektronik GmbH 开发的基于 80C51 内核的微处理器软件开发平台,内嵌多种符合当前工业标准的开发工具,可以完成从工程建立到管理、编译、链接、目标代码的生成、软件仿真、硬件仿真等完整的开发流程尤其是 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,远光
35、灯D5、D6亮开关K1-P1.1为 0,近光灯D7,D8亮开关K2-P1.2为 0,左方向灯D1、D9亮闪开关K3-P1.3为 0,右方向灯D2、D10 亮闪开关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工
36、具软件。他从1989年出现一直到现在已经有20多年的历史,在全球广泛使用。Proteus安装以后,主要由两个程序组成:Ares和Isis。前者主要用于PCB自动或人工布线及其电路仿真,后者主要采用原理布图的方法绘制电路并进行相应的仿真。除了上述基本应用之外,Proteus革命性的功能在于它的电路仿真是互动的,针对微处理器的应用,可以直接在基于原理图的虚拟原型上编程,并实现软键代码级的调试,还可以直接实时动态第 10 页 地模拟按钮、键盘的输入,LED、液晶现实的输出,同时配合虚拟工具如示波器、逻辑分析仪等等进行相应的测量与观测。Proteus软件的应用范围十分广泛,涉及PCB制板、SPICE的
37、电路仿真、单片机仿真,在6.9版本中还加入了对ARM7/LPC2000的仿真。与多数仿真软件相似,Proteus 有着数量庞大的元器件库。与多数仿真软件相似,Proteus 有着数量庞大的元件库。Labcenter 公司与相关的第三方软件阵容共同开发了 6000 多个模拟和数字电路中常用的 spice 模型以及各种动态元件,基本元件如电阻、电容、各种二极管、三极管、MOS 管、555 定时器等;74 系列 TTL 元件和4000 系列 CMOS 元件;存储芯片包括各种常用的 ROM, RAM,EEPROM, 还有常见 I2C器件等。在丰富的库元件的支持下,原理布图时只要进行相应的调用和连线,通
38、过对每个元件的属性设置完成绘图,然后即可进行仿真和虚拟测量。95.35.3 调试调试对本系统来说,调试工作分以下三步进行。1)在系统的硬件部分制作出来后,对其进行详细地检测调试,查看制作过程中是否存在错焊、虚焊等情况,查看单片机是否能够正常工作,测试硬件部分是否能够完成其相应的功能。出现问题要予以排除,如果是硬件部分电路图的错误,则要对其修改,反复测试,直到硬件的连接完全无错,并且设计合理。本系统经过前后三次的电路设计和修改,最终硬件设计合理。在此,首先,需检验输出电压是否正常,应将变压器接入电源电路,观察发光二极管是否亮,以确定是否有电压输出,再用数字万用表测试输出电压是否是 5V,如果是
39、5V 表明电源电压正常工作,如果不是上述结果应该检查电路。2)在设计系统的软件部分时,在 Keil 软件中编写程序,对程序进行不断调试编译,直到程序能够正常运行。然后在 Proteus 软件中进行仿真测试,看功能是否能够实现。3)系统联调。在上面两步完成后,我们就必须将汽车灯光控制电路的硬件和软件部分结合起来,进行系统联调,检验系统能否正常运行,测试系统各项性能指标,看是否能够达到预期的要求,必要时,还要不断地修改和完善程序,直到系统能够实现预期的功能。6 结论6.16.1 设计结果设计结果通过这次汽车灯光控制电路的设计,我收获甚多,前期经过大量资料的查阅,并设计好原理图、编写好程序以及编译修
40、改,然后进行实物制作,为确保成功,对布线、装配、焊接每个过程都做了大量细致的工作,最终成功实现设计的要求。第 11 页 参考文献1曹汇坚,池品优.基于MS-51系列单片机的控制汽车转弯信号灯J.现代计算机(专业版),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毋茂盛,王静,张晖.单片机串
41、行接口技术研究J.河南师范大学学报, 2000,28(3):96-98.7李毅.串行接口 8 位 LED 显示驱动器j.重庆职业技术学院学报,2003,12(3):110-113.8陈洪财.单片机C语言和汇编语言实用开发技术M.哈尔滨工程大学出版社,2008.19-65.9周润景,张丽娜.基于PROTUES的电路及单片机系统设计与仿真M.北京航空航天大学出版社,2006.8-112.第 12 页 附录 程序清单#include sbit key0=P10;/远光灯控制键sbit key1=P11;/近光灯控制键sbit key2=P12;/左方向灯控制键sbit key3=P13;/右方向灯控
42、制键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;/前右雾灯sbit led10=P22;/前右方向灯sbit led11=P23;/前右方向灯sbit led12=P24;/右倒车灯sbit led13=P25;/右刹车灯sbit led14=P26;/后右雾灯sbit led15=P27;/后右方向灯sbit buzzer=P30;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 考前全天候备战2023年高考数学试题及答案
- 精打细算的数学试题及答案
- 材料密封性能质量控制重点基础知识点
- 行政管理课程设置与试题答案建议
- 趋势分析的行政管理试题及答案
- 火灾保洁的应急预案方案(3篇)
- 车辆火灾应急预案范文(3篇)
- 病房火灾应急预案脚本(3篇)
- 2025年软件设计师考试解题思路试题及答案
- 学习节奏的个性化调整2025年计算机二级VB考试试题及答案
- 小学一年级新生入学手册
- 宠物app创业计划书
- 《大数据财务分析-基于Python》教学大纲
- 巴以冲突的历史和现状分析
- 除四害消杀服务承包合同协议书范本标准版
- 医疗废物管理PPT演示课件
- 项目管理课件-1
- 高等代数课件(北大版)第九章 欧式空间§9.1.1
- ACEI-糖尿病患者的心脏保护
- 三维地震勘探施工设计
- 宫腔粘连临床路径
评论
0/150
提交评论