基于单片机的智能路灯控制系统...docx

上传人:王** 文档编号:425697 上传时间:2023-08-18 格式:DOCX 页数:15 大小:81.78KB
下载 相关 举报
基于单片机的智能路灯控制系统...docx_第1页
第1页 / 共15页
基于单片机的智能路灯控制系统...docx_第2页
第2页 / 共15页
基于单片机的智能路灯控制系统...docx_第3页
第3页 / 共15页
基于单片机的智能路灯控制系统...docx_第4页
第4页 / 共15页
基于单片机的智能路灯控制系统...docx_第5页
第5页 / 共15页
基于单片机的智能路灯控制系统...docx_第6页
第6页 / 共15页
基于单片机的智能路灯控制系统...docx_第7页
第7页 / 共15页
基于单片机的智能路灯控制系统...docx_第8页
第8页 / 共15页
基于单片机的智能路灯控制系统...docx_第9页
第9页 / 共15页
基于单片机的智能路灯控制系统...docx_第10页
第10页 / 共15页
亲,该文档总共15页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《基于单片机的智能路灯控制系统...docx》由会员分享,可在线阅读,更多相关《基于单片机的智能路灯控制系统...docx(15页珍藏版)》请在优知文库上搜索。

1、元件清单名称型号数量(个)单片机AT89S521RS-232标准串口设计的接口电路MAX2321串口DB91光耦M0C30521双电压比较器LM3931稳压管LM78051变压器220V转9V1二极管IN40072三极管90131可控硅BTA081LED灯发光二极管1灯泡220V40W的白炽灯1滑动变阻器100K1光敏电阻LG44162电阻10013301IOK5IK1150K2电容103110421054电解电容IOpF2IOuF11000uF25F12200uF25F1V CPrivate Declare Sub Sleep Lib Kernel32 (ByVal dwMiIlisecon

2、dsAsLong)通信DimcommflagsBooleanDimcommstr(OTo3)AsByte灯泡状态true亮false灭DimlightstateAsBoolean,故障指示灯状态true亮false灭DimerrorledstatesBoolean,联机指示DimconnectionAsBooleanDimconfigAsString当点击“联机”按钮时或动其他按钮时,假如计算机和硬件未连接,会出现“端口打开错误”的吩咐窗口;假如计算机和硬件连接了,会出现”系统已联机”的字样。PrivateSubCommandlClick()OnErrorGoTooutIfNotconnect

3、ionThenMe.MSComml.CommPort=Me.Combol.Listindex+1Me.MSComml.PortOpen=TrueIfMe.MSComml.PortOpen=FalseThenMsgBox端口打开错误,VboKOnly,错误Elseconnection=NotconnectionMe.Label8.Caption=系统已联机Me.Label8.ForeColor=RGB(255,O,O)Me.Commandl.Caption=断开Commstr(O)=&HFFcommstr(l)=&H1commstr(2)=&H0commstr(3)=commstr(O)Xorc

4、ommstr(1)Xorcommstr(2)Commflag=TrueMe.MSComml.Output=commstrEndIfElseconnection=Notconnectionlightstate=FalseMe. MSComml. PortOpenMe.Label8. Caption =Me. Label8. ForeColorMe. Commandl. Caption=False系统未联机=RGB(255, 255, 255)=联机errorledstate=FalseMe.Iederror(O).FillColor=RGB(100,100,100)Me.Iedstate(O).

5、FillColor=RGB(100,100,100)EndIfGoToout2out:MsgBox端口打开错误,VbOKonly,错误out2:EndSubPrivateSubForm_Load()DimtimestrAsStringMe.Iedstate(O).FillColor=RGB(100,100,100)Me.Iederror(O).FillColor=RGB(100,100,100)Me.Label3.Caption-Now()Me.Combol.Listindex=O端口的参数设置串口MSComml.Settings=zz9600,n,8,1MSComml.InputMode=O

6、采纳文本接收MSComml.InBufferCount=O清空接受缓冲区MSComml.OutBufferCount=O清空传输缓冲区MSComml.RThreshold=1产生MSComm事务复原时间config=App.Path+,zconfig.iniOpenconfigForInputAs#1读取该汉字在16点阵字库中的原始字模1.ineInput#1,timestrMe.DTPickerl.Value=timestr1.ineInput#1,timestrClose#1清发送标记commflag=FalseMe.Textl.Text=Str(Me.UpDownl.Value)erro

7、rledstate=Falselightstate=Falseconnection=FalseEndSubPrivateSubFormJnload(CancelsInteger)保存时间DimtimestrAsStringconfig=App.Path+“config.iniOpenconfigForOutputAs#1读取该汉字在16点阵字库中的原始字模Close#1EndSub当PC机发送“开灯”恳求时,单片机回送“tuon”吩咐,开灯胜利;当PC机发送“故障检测”恳求时,单片机回送“trou”吩咐,说明灯泡故障,VB界面中的故障灯会亮,反之单片机回送“norm”吩咐,说明灯泡是好的,正常

8、的,VB界面种的故障灯不会发生改变。PrivateSubMSComml_OnComm()DimStrBuffAsStringSelectCaseMSComml.CommEventCase2StrBuff=MSComml.InputIfStrBuff=okThencommflag=FalseElseIfStrBuff=ThenMe.Iedstate(O).FillColor=RGB(100,100,100)lightstate=FalseCommflag=FalseElseIfStrBuff=tuonThenMe.Iedstate(O),FillColor=RGB(255,O,O)lightst

9、ate=Truecommflag=FalseElseIfStrBuff=trouThenMe.Iederror(O).FillColor=RGB(255,O,O)ElseIfStrBuff=normThenMe.Iederror(O).FillColor=RGB(100,100,100)EndIfEndSelectEndSubPrivateSubOptionl_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)IfconnectionThencommstr(O)=&HFFcommstr(l)=&H56commstr(2)=

10、&II78commstr(3)=commstr(O)Xorcommstr(1)Xorcommstr(2)commflag=TrueMe.MSComml.Output=commstrElseMe.0ption2.Value=TrueMsgBox请先联机工作EndIfEndSubShift Ascommstr(2)PrivateSubOption2_MouseDown(ButtonAsInteger,Integer,XAsSingle,YAsSingle)IfconnectionThencommstr(O)=&HFFCommstr(I)=&H12commstr(2)=&II34commstr(3)

11、=commstr(O)Xorcommstr(1)Xorcommflag=TrueMe.MSComml.Output=commstrElseMe.Optionl.Value=TrueMSgBOX请先联机工作EndIfEndSub以下程序为VB界面中的取当前时间程序PrivateSubTimerl_Timer()Ifcommflag=TrueAndconnectionThenMe.MSComml.Output=commstrEndIf取当前时间MeIfMe.Optionl.Value=TrueAndconnectionThenontimeEndIfEndSub以下程序为定时模式时灯泡的状态,在定时

12、模式内时,在输入的时间范围内,灯泡亮。不在定时模式时,灯泡熄灭。PrivateSubontime()IfCDate(Me.DTPickerl.Value)CDate(Me.DTPicker2.Value)ThenIfCDate(Time()CDate(Me.DTPickerl.Value)OrCDate(Time()CDate(Me.DTPickerl.Value)AndCDate(TimeO)CDate(Me.DTPicker2.Value)Thencontrol(开灯)Elsecontrol(关灯)EndIfEndIfEndSub以下为开关灯吩咐,当计算机吩咐为“开灯”时,灯泡亮起;当计算

13、机吩咐为“关灯”时,灯泡熄灭。PrivateSubcontrol(codeAsString)Ifcode=开灯Andlightstate=FalseThenlightstate=TrueMe.Iedstate(O).FillColor=RGB(255,0,O)Commstr(O)=&HFFCommstr(I)=&H1commstr(2)=&IIFcommstr(3)=commstr(O)Xorcommstr(1)Xorcommstr(2)commflag=TrueMe.MSComml.Output=commstrElseIfcode=关灯”Andlightstate=TrueThenlight

14、state=FalseMe.Iedstate(O).FillColor=RGB(100,100,100)Commstr(O)=&HFFCommstr(I)=&H1commstr(2)=&H0commstr(3)=commstr(O)Xorcommstr(1)Xorcommstr(2)Commflag=TrueMe.MSComml.Output=commstrEndIfEndSubPrivateSubUpDownl_Change()Me.Textl.Text=Str(Me.UpDownl.Value)Commstr(O)=&HFFCommstr(I)=&H2commstr(3)=commstr(O)Xorcommstr(1)Xorcommstr(2)commflag=TrueMe.MSComml.Output=commstrEndSub4.3单片机程序#includer

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 人工智能

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!