传感器使用一个LM358运放和光敏电阻组成。运放接两个电位器。可以调节感应程度的。两个运放的输闹或出端接到单片机除P0口的任意口线。在程序中检测运放的输出状态。有光的时候,两个运放都是输出为高电平。这时候,单片机继续等待。光线强度下降的时候,其中一个运放就会输出低电平了。这时,单片机检测到后就会打开其中一个灯。当光线强度继续下降,这时,两个运放就会都输出低电平。这时,单片机检测到都为低电平的时候,打开两个灯就可以啦。到了快天亮的时候,光线强度上升。这时候,其中一个运放又会输出高电平,单片机就会关闭其中一个灯了。天完全亮后,关闭所有的灯。
硬件连接:P1.0口接第一个运放的输出端。P1.1口接第二个运放的输出端。P2.0口接第一个控制继电器的三极管,P2.1口接第二个控制继电器的三极管。输出为低电平有效。
实现功能:白天的时候,继电器都释放。光线下早弯清降后,其中一个继电器吸合。光陆前线很弱的时候,两个继电器都吸合。循环。
偶使用了最笨的法子,蹲点守候!嘿嘿嘿 程序中引入延时判断,防止误触发。
org 0
ajmp start
org 30h
start:mov a,p1
cjne a,#0feh,next
lcall dely
mov a,p1
cjne a,#0feh,next
clr p2.0
ajmp start
next: cjne a,#0fch,next1
lcall dely
mov a,p1
cjne a,#0fch,next1
clr p2.0
clr p2.1
ajmp start
next1:cjne a,#0ffh,start
lcall dely
mov a,p1
cjne a,#0ffh,start
setb p2.0
setb p2.1
ajmp start
dely: mov r7,#100
dl1: mov r6,#100
dl2: mov r5,#50
djnz r5,$
djnz r6,dl2
djnz r7,dl1
ret
end
程序不好用就找偶!
郑重声明:不写代码,只提思路。【0】前提
假设安装地理位置纬度值通过安装过程来调节,追踪装置只需跟随日出日落。单只光敏检测到极值点附近,作为起始位置。当两只光敏感应到相同光强时,视为中心正对太阳。此后控制电机保持两只光敏感应到相同光强。
【1】电路设计
1、通过至少两只光敏电阻双电源供电差分放大电路完成光的位置识别A,电阻应该是安装在追踪装置迎光球面上,哗唯它们的感应面夹角10~20度,两个光敏电阻中心连接线与穗芦拆追踪装置感应平面平行。其中一路电阻放大完成光强极值检测B。经过双极性ADC或多路比较器上拉送单片机检测。
2、步进电机正反转控制电路。根据实际电机接口要求完成2003控制办法。
3、12864,注意背光调节。总线或IO方式连接到单片机。
4、增加启停、复位等必要的按键。
【2】程序设计
1、完成12864的底层接口程序,根据要求编写相关应用程序。
2、根据电机正反转时序要求,设计正反转接口程序。换算角度和脉冲个数关系。
3、首次开机,用B值遍历360度,找到向阳的180度限位。也猜枣可程序锁定左右限位。根据极值锁定到太阳当前所在位置。
4、利用电路A,控制步进电机逻辑是始终保持A差分放大输出为0。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)