《2022年模拟路灯控制系统 .pdf》由会员分享,可在线阅读,更多相关《2022年模拟路灯控制系统 .pdf(47页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、衡阳市第四届大学生科技创新大赛成果总结材料项 目 名 称 面向节能的路灯控制系统研制参 赛 学 生蒋军王实铭敬文毅指 导 教 师李祖林王韧参 赛 学 校湖南工学院申 报 时 间2010-5-27 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 47 页 - - - - - - - - - 材料清单一、研究报告1. 成果简介1 2. 项目研究背景和意义1 3. 研究计划2 4. 研究内容4 5. 成果创新点9 二、附件材料附件一:电路原理图10 附件二 : 实物图片12 附
2、件三:程序清单13 三、实物作品名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 47 页 - - - - - - - - - 衡阳市第四届大学生创新大赛相关项目的研究报告项目名称:面向节能的路灯控制系统研制项目类型:实用型成果形式: 1、研究报告; 2、实用作品参赛学生:蒋军王实铭敬文毅指导教师:李祖林王韧一、 成果简介本系统是基于单片机控制的路灯模拟控制系统,以单片机 AT89S52为主控制器,对路面交通情况、 外界环境亮度对交通灯的影响和故障等信息进行采集,实现对路灯
3、的智能化节能控制。该系统以1W高亮度 LED灯作为模拟路灯,制作了LED灯恒流驱动电源,电流调节范围在0-1A 内可调。通过红外式反射光电传感器检测路面交通情况, 控制 LED路灯亮、 灭。通过光敏三极管对环境变化及路灯故障等信号进行检测,实现了路灯亮、灭控制和路灯故障报警。LED灯能在规定时间实现自动减小亮度,并能在规定范围内设定调节,调节误差小于2% 。该系统节能,性价比高,具有应用价值。二、 项目研究背景和意义节能是二十一世纪的热门主题,面对全球能源危机,全世界都以节能为方向进行各方面的研究。 LED就是节能的一个研究方向,高亮度LED以其低热损耗,高流明而迅速取代传统照明工具。系统以高
4、亮度 LED灯作为模拟路灯, 可以实现路灯的节能控制。 系统附带了周围环境检测功能, 可以根据周围环境亮度开启和关闭路灯。 系统还可以根据路面交通情况,控制路灯的调光功能, 实现真正意义的节能环保。综合以上功能,该模拟路灯控制系统有很好的应用价值和研究意义。三、 研究计划项目确定前期,我们为了更快更好的完成研究设计,做了如下计划:2009年 5 月-2009 年 8 月:进行相关调研。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 47 页 - - - - - - - -
5、 - 2009年 9 月:组内三人讨论确定总体方案。2009年 9 月-2009 年 10 月:分工协作完成项目的软、硬件设计。2009年 10 月-2009 年 11 月:完成实际系统的制作、调试及测试。2009年 12 月-2010 年 3:完成项目的总结。四、 研究内容1、方案的提出1.1 方案描述针对题目的功能和指标进行分析, 基于 AT89S52单片机为模拟路灯支路控制器,通过光电传感器对路灯信号的检测,控制二路恒流源驱动LED路灯。系统整体设计原理框图如图1 所示:支路控制器键盘液晶显示 红外式反射光电传感器交通状况自动调节装置 光敏三极管环境亮度检测 光敏三极管故障检测 恒流源1
6、恒流源2图1 系统框图LED 灯1LED 灯21.2 方案论证与比较(1)系统控制方案选择方案一:选用数字电路进行控制, 但整个系统电路制作复杂, 实现题目发挥部分的指标有困难。方案二:选用 AT89S52单片机为控制器, 易于编程控制,外围控制资源丰富,整个控制系统操作更加灵活,电路制作简单、方便、性价比高。因此,我们选择名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 47 页 - - - - - - - - - 方案二。(2)路灯信号检测方案一:选用金属传感器,该传感
7、器精度高,反应灵敏,但是金属传感器价格较高。方案二:选用红外反射式光电传感器和光敏三极管,该传感器反应灵敏且价格便宜,外围检测电路简单。考虑到系统检测电路和性价比,我们选择方案二。(3)LED灯恒流驱动电源题目要求用恒流源驱动1W LED灯,并具有调光功能,驱动电源输出功率能在规定时间内按设定要求自动减小,该功率要求能在20% 100% 范围内设定并调节,调节误差 2% ,方案比较如下。方案一:选用模拟电路中所学的比例电流源,电路虽然简单, 但该方案为电流-电流转换,且输出电流小,不能驱动1W LED 灯。方案二:采用开关电路实现恒流源,通过控制 PWM 信号占空比,并将该信号作为驱动电路的控
8、制信号,实现MOS 驱动电路的导通时间,实现电压- 电流转换,电源效率高,控制方便,但是电源纹波较多,制作困难。方案三:线性数控电流源,用单片机控制DAC0832 的输出,通过集成运放控制 MOSFET 管 ,实现电压 - 电流的线性转换, 电路制作简单, 性价比高。 因此,我们选择方案三。2、理论分析与设计2.1 单元电路设计(1)单片机最小系统支路控制器控制芯片选用AT89S52 ,以 DS1302作为时钟芯片,采用8255 作并口扩展,以 24c04作为掉电保护,外接矩阵式键盘和液晶显示器和二路DAC0832电路。(2)路灯信号检测电路该装置选用红外式反射光电传感器,当小车经过传感器位置
9、时, 小车上的铝名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 47 页 - - - - - - - - - 箔将红外线反射回去, 红外接收管接收到信号输出到比较器整形送给单片机,让单片机对路灯进行控制。其原理图如图2 所示:(3)环境变化检测和故障检测环境变化和故障检测选用光敏三极管,当环境亮度达到光敏三极管的导通阈值时,光敏三极管导通, 信号送给单片机, 单片机实现对路灯的控制和发出声光报警。其原理图如图3 所示:(4)LED恒流驱动电源图 2 信号检测电路图 3 光
10、敏三极管检测电路名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 47 页 - - - - - - - - - 该恒流驱动电源是通过单片机控制DAC0832的输出电压,经运放控制MOS管的导通, MOSFET 的源极经 1采样电阻接地, 对恒流源输出电流进行控制,实现了输出电流的线性数控。 其原理图如图 4 所示,假设 DAC0832 输出至运放 OP07同相端的输入为inV, 由运放虚短可知, MOSFET 的源极电压SV为sinVV则恒流源输出电流inoutDSVIIR
11、通过单片机控制输入电压inV,可线性控制恒流源的输出电流outI。2.2 系统软件设计图 4 LED 恒流驱动电源名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 47 页 - - - - - - - - - 开始菜单选择路灯开关总控制路灯开关单独控制路面交通检测及控制环境亮度检测及控制是否掉电程序恒流源输出功率调整时钟显示图5 程序流程图掉电保护判断3、系统测试及分析3.1 系统测试测试仪器:数字示波器 RIGOLDS5022/25Mhz 直流稳压电源 1731B 指针式
12、毫安表精度 0.5 级数字万用表 DT-890 秒表卷尺功能测试:将系统各个单元模块组装好,用小车对系统进行模拟,依次测试如下功能:时钟功能、能设定、显示开关灯时间,控制整条支路按时开灯和关灯、故障检测及报警功能,实现了题目给定的基本要求和发挥部分。指标测试:LED恒流驱动电源输出功率的设定与调节测量结果如表1-1 所示:表 1-1 LED 驱动电源输出功率的设定与调节测量结果预置功率( W )LED电压( V)LED电流(mA) LED功率(W) 误差0.20 2.92 66 0.19 1% 0.40 3.06 130 0.39 1% 0.60 3.18 192 0.61 1% 0.80 3
13、.26 244 0.79 1% 1.00 3.34 299 0.99 1% 3.2 结果分析经系统调试及测量,我们得出该系统能够满足以下要求:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 47 页 - - - - - - - - - (1) 时钟功能、能设定、显示开关灯时间, 控制整条支路按时开灯和关灯;(2) 根据环境明暗自动开关灯;(3) 根据交通状况自动调节亮灯状态;(4) 独立控制每只路灯的开关灯时间;(5) 故障地址检测及报警功能;(6) 单元控制器具有调光功
14、能;(7) 路灯驱动电源输出功率能在规定时间按设定要求自动减小;(8) 功率能在 20% 100% 范围内设定并调节,调节误差为1% 。五、 成果创新点1.节能环保。 本项目使用高亮度LED为交通灯, 具有低热损耗, 高流明等特点,系统可以根据路面交通情况实现交通灯的开启和关闭,并根据实际情况调节路灯的亮度,实现节能环保。2.智能化控制。路灯可以根据周围环境的变化为参考,实现自动开启和关闭,自动检测路面交通情况,控制LED路灯亮、灭。通过光敏三极管对环境变化及路灯故障等信号进行检测,实现了路灯亮、灭控制和路灯故障报警。3.实用性。项目经过进一步的开发,具有很好的实用价值和工程应用价值。名师资料
15、总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 47 页 - - - - - - - - - 附录一系统电路原理图1. 单片机系统原理图12345678ABCD87654321DCBATitleNumberRevisionSizeA3Date:29-May-2010SheetofFile:D:MyDocuments工程文件衡阳市第四届09大学生科技创新大赛成果2008路灯文件模拟路灯系统.ddbDrawnBy:1122S17R21kC322FC133pFC233pFY112MHz
16、VCCP00P01P03P04P05P06P07P10P11P12P13P14P15P16P17P20P21P22P23P24P25P26P27P30P31P32P33P34P35P36P37PSENP31P00P30P01RETP02X2P03X1P04P37P05P36P06P35P07P34P20P33P21P32P22P17P23P16P24P15P25P14P26P13P27P12P10P11P101P112P123P134P145P156P167P178INTI13T014X119EA/VP31X218RESET9P0039P0138P0237P0336P0435P0534P063
17、3P0732P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P30TXD11RXD10AT89S52T115INTO12RD17WR16U1AT89S52X1X2王实铭12345678Jp2BCON812345678Jp3BCON812345678Jp0CCON812345678Jp1BCON8RETVCCP00P01P02P03P04P05P06P07VCCVCCA1B2TAP3RA50k112210kP15P16P17RETDB0DB1DB2DB3DB4DB5DB6DB7CS1CS2RETNCLED+LEDERWRSNCP02123456
18、7891011121314151617181920J20CON20VCCVCC1A2KD100LEDGN DR100470R1200PA31PA22PA13PA04RD5CS6GND7A18A09PC710PC611PC512PC413PC014PC115PC216PC317PB018PB119PB220PB321PB422PB523PB624PB725VCC26D727D628D529D430D331D232D133D034RESET35WR36PA737PA638PA539PA44082558255Q1Q0P00P01P02P03P04P05P06P07P37P36电源液晶显示复位电路晶振
19、A1B2C3G2A4G2B5G16Y77Y69Y510Y411Y312Y213Y114Y015U374LS138下载口38译码器VCC12345678JP1388HEADERP25P26P271JALECON1检测ALE片选插针12345678J8255BCON812345678J8255ACON812345678J8255CCON88255的插针VCCGND1234JUSBCON6123456JKGKAIGUANRETALE/P单片机开关1JCSCON1PA0PA1PA2PA3PA4PA5PA6PA7PA0PA1PA2PA3PA4PA5PA6PA78255片选PB0PB1PB2PB3PB4P
20、B5PB6PB7PC0PC1PC2PC3PC4PC5PC6PC7PB0PB1PB2PB3PB4PB5PB6PB7PC0PC1PC2PC3PC4PC5PC6PC711V11X12X23GND4CE5I/O6CLK7V28R1302DS1302+1-5BT1BATTERY32.768KHzC1302233pFC1302133pFVCCGND12J1302112J1302212J130231302时钟电路S1SW-PBS2SW-PBS3SW-PBS4SW-PBS5SW-PBS6SW-PBS7SW-PBS8SW-PBS9SW-PBS10SW-PBS11SW-PBS12SW-PBS13SW-PBS14S
21、W-PBS15SW-PBS16SW-PB按键AO1A12A23VSS4VDD8NC7SCL6SDA5U424C02VCCP30P3124C0212J24C021CJ12J24C022CJ12JDYACON2GND123456789J5aVCCP01P02P03P04P05P06P07P00123456789J5cVCCP20P21P22P23P24P25P26P27排阻123456789J5bVCC123456789J5dVCCP10P11P12P13P14P15P16P17P30P31P32P33P34P35P36P37123456789J8255A1CON9VCCPA0PA1PA2PA3P
22、A4PA5PA6PA7123456789J8255B1CON9VCCPB0PB1PB2PB3PB4PB5PB6PB7123456789J8255C1CON9VCCPC0PC1PC2PC3PC4PC5PC6PC78255排阻1122334455667788991010RISPISPPC0PC1PC2PC3PC4PC5PC6PC7VCCP10P11P12P00P01P03P04P05P06P07P10P11P12P13P14P15P16P17P20P21P22P23P24P25P26P27P30P31P32P33P34P35P36P3712345678Jp2ACON812345678Jp3ACON
23、812345678Jp0BCON812345678Jp1ACON8P02插针GNDP13P14P33P00P01P03P04P05P06P0712345678Jp0ACON8P02123JDYBCON3名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 47 页 - - - - - - - - - 2. 传感器及 LED驱动电路原理图12345678ABCD87654321DCBATitleNumberRevisionSizeA3Date:29-May-2010Sheeto
24、fFile:D:MyDocuments工程文件衡阳市第四届09大学生科技创新大赛成果2008路灯文件模拟路灯系统.ddbDrawnBy:R1500R21KR31KR41KR5500R61K1J2CON1IN-2IN+3V-4OUT6V+7JOP07AOP07IN-2IN+3V- -4OUT6V+7J0P07BOP07+12V-12V-12V+12V12J1CON2B1C2E3QNPNNPNECQGMPNP-PHOTOR28POT2R3010KR293.3K+5V2134QST178AST1782134QST178BST1782134QST178CST178R31150R3220KR33150R
25、3420KR35150R3620K+5V1-2+3411Q2ALM324-9+108Q2BLM324+5-67Q2CLM324+12-1314Q2DLM324R374.7KR38470+5V123 4J3CON4QMOSATRF640QMOSBIRF640IN-2IN+3V- -4OUT6V+7JOP07COP07R3711A2KD1WALEDIN-2IN+3V-4OUT6V+7DOP07DOP07R381D1WBLED+12V-12VLSSPEAKERR381kDQDLED+5V12J6CON212J5CON212J4CON2R71kR81kR94701A2KD3LEDD2LED1A2KD1
26、LED-12V+12V+5VQDANPNQDBNPNR391k+5VR40100R41100SASWSPSTSBSWSPST1J7CON11J8CON112J10CON212J9CON2+12V-12V123JMCON3+12V+5V电压入口1JkkCON1名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 47 页 - - - - - - - - - 附录二程序清单/* 调用函数声明*/ #include #include #include #include #inclu
27、de #include /* 8255头文件定义*/ #define COM8255 XBYTE0 x7f03 /* 8255 命令口地址*/ #define PA8255 XBYTE0 x7f00 /* 8255 的 PA 口地址*/ #define PB8255 XBYTE0 x7f01 /* 8255 的 PB 口地址*/ #define PC8255 XBYTE0 x7f02 /* 8255 的 PC 口地址*/ #define DAC0832A XBYTE0 x1fff #define DAC0832B XBYTE0 x3fff /* 数据类型声明*/ #define uchar u
28、nsigned char #define uint unsigned int /* 24C04读写地址*/ #define read 0 xa1 / 器件地址以及读操作#define write 0 xa0 / 器件地址以及写操作#define ADDR 0 xff / ADDR 最高地址/* 液晶控制信号*/ sbit rs = P10;/ 为高电显示数据sbit rw = P11;/ 为高电数据被读到DB7-DB0 sbit en = P12;/ 使能信号/* DS1302控制信号*/ sbit DS1302_CLK = P13; /实时时钟时钟线引脚sbit DS1302_IO = P1
29、4; /实时时钟数据线引脚sbit DS1302_RST = P33; /实时时钟使能信号线引脚/*AD52535控制信号 */ sbit CC=P17; sbit BB=P16; sbit AA=P15; sbit DD=P34; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 47 页 - - - - - - - - - sbit EE=P35; sbit FF=P32; /*液晶头函数 */ uchar command; void clear_lcd(); /清屏
30、程序void lcd_int(); /初始化void lcd_set(); /功能设计void checkbusy(); /判忙void write_command(uchar command); /写命令void write_data(uchar data0); /写数据void displayhz(uchar m, uchar n, uchar *p);/ 汉字显示函数void setwordbkcolor(uchar x,uchar y,uchar wide,uchar bkcor); void setrowbkcolor(uchar row,uchar bkcor); /*延时头函数
31、*/ void delay_ms(unsigned int i); /延时 1ms void delay(uchar us); /*键扫头函数 */ uchar key_scan(void); /键扫描函数/*时钟头函数 */ void write_1302(uchar data_1302); /向 1302 写入 1 个字节void write_1302time_2(void) ; void write_1302time_1(void); void write_1302time(void); void time_disbuffer(void); void write_all_1302(uch
32、ar addr,uchar data_1302) ;/ 向 1302 的某一地址中写入一个字节的数据uchar read_all_1302(uchar addr); /从 1302 的某一地址中读取一个字节的数据uchar year, month,week,day,hour,second,minute; /DS1302 的变量uchar year_1, month_1,day_1,hour_1,second_1,minute_1; uchar code dispcode=0 x30,0 x31,0 x32,0 x33,0 x34,0 x35,0 x36,0 x37,0 x38,0 x39,0
33、x2e,0 x3a; /液晶显示到;0 x2e 为小数点uchar time8=0 x02,0 x09,0 x09,0 x04,0 x12,0 x48,0 x05,0 x50; /输进的初始时间uchar disbuffer12; /反冲数组uchar kai18; uchar idata guan18; uchar idata kai28; uchar idata guan28; uchar idata s,m,h,d,mon,y,w; uchar d1,d2,d3,d4,d5,d6; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - -
34、- - 名师精心整理 - - - - - - - 第 13 页,共 47 页 - - - - - - - - - uchar shi,fen,miao; /*24C04头函数 */ sbit SDA = P31; /数据线sbit SCL = P30; /时钟线void start(); /开始void stop(); /停止uchar i2c_read(); /读 AT24C04 bit i2c_write(uchar write_data); /写 AT24C04 uchar read_retn(uchar re_adder); /在指定地址adder 处读出数据void write_by
35、te( uchar adder, uchar write_data);/ 在指定地址adder 处写入数据void fill_byte(uchar fill_dady); /24C04 数据擦除uchar kk; uchar dsj; void sjsj(void); uchar SC=0;SB=0; uchar R; uchar key,key1,key2,key3,v;/ 键扫值uchar js,ha; uchar G=0 x30;/ 对应功能变量uchar lu; uchar gl; uchar caibiao16=0 x40,0 x48,0 x50,0 x58,0 x60,0 x68,
36、0 x70,0 x78,0 x80,0 x88,0 x90,0 x98,0 xa0,0 xa8,0 xb0,0 xb8; uchar idata caibiao122=0 x10,0 x18,0 x20,0 x28,0 x30,0 x38,0 x40,0 x48,0 x50,0 x58,0 x60,0 x68,0 x70,0 x78,0 x80,0 x88,0 x90,0 x98,0 xa0,0 xa8,0 xb0,0 xb8; uchar js1,js2,js3,js4,hh; void shuzi_1(void); void zong(void); void zhi(void); void
37、 xianzai(void); void display4(void); void display3(void); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 47 页 - - - - - - - - - void display2(void);/ 这些以后写功能函数void display1(void); void gongneng1(void); void gongneng2(void); void gongneng3(void); void gongneng4
38、(void); void gongneng5(void); void gongneng(uchar G);/ 功能选择void diaodian(void); void xuanze(void); void qing(void); void san(void); void san1(void); void san2(void); void jianshao(void); void jiaotong(void); void guzhang(void); void huanjing(void); void bujian(void); void bujin(void); void gonglv(vo
39、id); void shijian(void); void diao(void); uchar i=20; uchar djs,ty=50,tj; void main(void) lcd_int(); /初始化lcd_set(); /功能设置clear_lcd(); /清屏start(); stop(); delay_ms(100); /单片机与8255 同时复位COM8255=0 x88; /给 8255 送命令 ,PA,PB 口都为输出 ,PC 口高位为输入, 低位输出。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精
40、心整理 - - - - - - - 第 15 页,共 47 页 - - - - - - - - - R=read_retn(50); /掉电判断diaodian(); clear_lcd(); / fill_byte(0 xff); DAC0832A=0 x00; DAC0832B=0 x00; displayhz(1,1, 模拟路灯控制系统);/ 开机界面display3(); / write_1302time(); /1302 写初始时间displayhz(4,2, 系统时间设定 ); while(1) key=key_scan(); / delay_ms(15); / delay(100
41、); display1(); display2(); huanjing(); write_byte(50,0); if(key=0 x11)i+;DAC0832A=i;DAC0832B=i; if(key=0 x41)i-;DAC0832A=i;DAC0832B=i; if(key=0 x21)G=0 xd9;qing();setrowbkcolor(1,1);/ if(key=0 x84)gongneng5(); if(key=0 x88) /确认键:第四行第四列 clear_lcd(); delay_ms(200); xuanze(); qing(); G=0; while(1) writ
42、e_byte(50,0); delay(500); key1=key_scan(); delay_ms(150); if(key1=0 x21)G=0 xd9;qing();setrowbkcolor(1,1); if(key1=0 x41)G=0 xda;qing();setrowbkcolor(2,1); if(key1=0 x81)G=0 xdb;qing();setrowbkcolor(3,1); if(key1=0 x12)G=0 xdc;qing();setrowbkcolor(4,1); if(key1=0 x88&G!=0)clear_lcd();delay_ms(100);g
43、ongneng(G);/确认键:第四行第四列if(key1=0 x18)G=0;clear_lcd();break;/取消键:第四行第一列 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 47 页 - - - - - - - - - clear_lcd();display3();displayhz(1,1,模拟路灯控制系统);displayhz(4,2, 系统时间设定 ); void xuanze(void) displayhz(1,2, 交通故障控制 ); displ
44、ayhz(2,2, 总支路控制 ); displayhz(3,2, 各支路控制 ); displayhz(4,2, 输出功率设置 ); write_command(0 x80); write_data(0 xa2); write_data(0 xd9); write_command(0 x90); write_data(0 xa2); write_data(0 xda); write_command(0 x88); write_data(0 xa2); write_data(0 xdb); write_command(0 x98); write_data(0 xa2); write_data(
45、0 xdc); void qing(void) setrowbkcolor(1,0); setrowbkcolor(2,0); setrowbkcolor(3,0); setrowbkcolor(4,0); void gongneng(uchar G) while(1) switch(G) case 0 xd9:gongneng1();break; case 0 xda:gongneng2();break; case 0 xdb:gongneng3();break; case 0 xdc:gongneng4();break; 名师资料总结 - - -精品资料欢迎下载 - - - - - - -
46、 - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 47 页 - - - - - - - - - key3=key_scan(); if(key=0 x88)break; void gongneng1(void) uchar jg;/* AA=0; BB=0; CC=0; DD=0; EE=0;*/ clear_lcd(); displayhz(1,2, 交通灯控制 ); displayhz(2,2, 路灯故障检测); while(1) DAC0832A=0 x00; DAC0832B=0 x00; key2=key_scan(); if(
47、key2=0 x28)jg=1;qing();setrowbkcolor(1,1);write_command(0 x30); if(key2=0 x48)jg=2;qing();setrowbkcolor(2,1);write_command(0 x30); if(jg=1)jiaotong(); if(jg=2)DAC0832A=0 x90;DAC0832B=0 x90;guzhang(); if(key=0 x84)PA8255=0 x00; if(key2=0 x18)delay_ms(200);G=0;clear_lcd();xuanze();break;/取消键:第四行第一列 vo
48、id gongneng2(void) clear_lcd(); displayhz(1,3, 现在时间 ); displayhz(3,1, 开时间 ); displayhz(4,1, 关时间 ); xianzai(); while(1) write_byte(50,1); display4(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 18 页,共 47 页 - - - - - - - - - key2=key_scan(); delay_ms(150); if(key2=0
49、 x84)diao(); if(key2=0 x28)hh=1;js=0;qing();setwordbkcolor(1,3,16,1);setwordbkcolor(2,3,16,1);setwordbkcolor(3,3,16,1);write_command(0 x30); if(key2=0 x48)hh=2;js=0;qing();setwordbkcolor(1,4,16,1);setwordbkcolor(2,4,16,1);setwordbkcolor(3,4,16,1);write_command(0 x30); if(key2=0 x18)G=0;clear_lcd();x
50、uanze();break;/取消键:第四行第一列if(key2=0 x88)zong(); if(kai10=disbuffer5&kai11=disbuffer4&kai13=disbuffer3&kai14=disbuffer2&kai16=disbuffer1&kai17=disbuffer0)DAC0832A=0 x90; if(guan10=disbuffer5&guan11=disbuffer4&guan13=disbuffer3&guan14=disbuffer2&guan16=disbuffer1&guan17=disbuffer0)DAC0832A=0 x00; if(ka