在发送端,MC145026的地址信息和数据信息均可用三态码来表示,但在接收端,地址可置成三态地址,而数据中的“开路”将被译为1。因此数据信息必须是1或0。
图3-10 封装后的解码电路
3.2.3 译码及控制电路设计经过解码电路后我们采用的是单片机进行译码,这样不仅硬件电路利于扩展,而且还使电路看起来简单。用P1口的P10--P13来作为经过解码后的单片机的输入,然后通过对其编程实现译码,译码后用P0和P1口共16个引脚来作为译码后的输出去控制利用发光二极管作成的开关显示部分。
图3-11 单片机控制电路
图3-12 开关指示电路
3.2.4电源电路设计图3-13 直流稳压电源的组成框图
(1)电源变压器:将220V,50HZ的交流电压转换成10V整流电路
(2)滤波电路:利用电感和电容的阻抗特性,将整流后的单向脉动电流中的交流分量滤去,是单向脉动电流变换成平滑的直流电。
(3)稳压电路:当电网电压波动或负载的变动会导致负载上得到的直流电不稳定,影响电子设备的性能,用稳压管,即采用一些负反馈方式的稳压电路,使之自动调节不稳定因素,从而得到稳定电压本图中二极管的作用是:放电使LM系列两端的电压差稳定(约0.5-0.7V),小电容的作用是防止自激振荡,后面的电容有存储能的作用,5V电源的发光二极管是指示灯,供电部分输入220V、50HZ的交流电,输出电压+5V,供给整个电路电源,电流最大为400mA; LM7815和LM7805负载重,功率大,加装了散热片,LM7915则不需要散热片,这样在保证了性能的同时也降低了成本,对于电容的选择要考虑LM7815 、LM7805 和LM7915最小允许电压降Ud,电网的波动。
参数计算:
(1)允许纹波峰峰值△t=18*1.414(1-10%)-0.7-Ud-15=4.9V
C=I*△t/△U=1430μf
选取滤波电容C=2200/30μf
(2)+5V电源
允许的最大纹波峰峰值△t(max)=9*1.414(1-10%)-1.4-2.3-5=2.76V
C=I*△t/△U=3600μf
选取滤波电容C=4700/16μf
图3-14 电源部分电路图
4.软件设计
4.1译码控制部分的软件编制
首先来看我们的编程思路,即程序的流程图。我们在查询有了解码以后将其分为了两组。而不是一起的。
4.1.1定义程序
#ifndef _define_h
#define _define_h
#include<reg52.h>
#include<stdio.h>
sbit EOC = P1^4;
#define uchar unsigned char
#endif
4.1.2主程序
#include "define.h"
uchar code disp[]={
0xFE,0xFD, 0xFB, 0xF7, 0xEF, 0xDF, 0xBF,0x7F, //P0 管脚为低电平时,发光二极管发光
0xFE,0xFD, 0xFB, 0xF7, 0xEF, 0xDF, 0xBF,0x7F //P2 管脚为低电平时,发光二极管发光
};//P0口与P2口各管脚依次为低
uchar temp,i;
main()
{
P0=0xff;P2=0xff;P1=0x00;
EOC=0;
while(1)
{
if(EOC=1)//查询有解码信号输出?有EOC=1
{
temp=P1;//把P1口 P1.0 P1.1 P1.2 P1.3 上的解码数据存入temp
if (temp<0x08)//如果temp小于9,为前八路遥控,
{
i=temp; //P0口为前8路的显示指示,通过查表控制对应那路的显示发光
P0=disp[i];
}
else
{
i=temp;//P2口为后8路的显示指示,通过查表控制对应那路的显示发光
P2=disp[i];
}
}
}
}
5.系统调试在器件焊接好后我们先进行硬件调试,电源模块调试:依据电源模块电路图把元器件焊接好之后,仔细检查元器件是否焊接有误,电路板是否存在虚焊或焊渣短路等现象,检查无误后,把稳压电源的一端接上单片机电源接口,打开稳压电源开关,调节到7V左右,接着用试触法,把另一端与模块电源另一端试触,试触时间要短,观察稳压电源的电流显示,如果电流不是很大,一般小于0.1A,证明焊接可以,如果电流很大,则要再检查电路是否真的焊接好了。假如试触没有大的电流,就把稳压电源加到电源模块上。把万用表打开到20V量程档,把万用表的接地端,即黑表笔接到单片机插座的第20引脚上,单片机20引脚是接地的,再用万用表的红表笔试触单片机的第40引脚,40端是接电源的,试触的同时观察万用表,如果万用表显示不超过5V,则证明焊接没有我们问题,假如电压很高,则证明焊接还需仔细检查,至此电源模块调试完毕。单片机模块调试:电源模块调试完毕后,把元器件插进插座,仔细检查无误后,接上电源,我们利用单片机本身的程序,假如单片机是好的,电路焊接也没有问题,我们可以观察到8个发光二极管流水似的轮流发光,假如没有反应,则检查电路板和器件。把万用表打开到蜂鸣档,万用表接地端接到二极管接地端,电源端接试触接到另一端引出脚上,假如看到发光二极管发光,则证明发光二极管焊接正确。确保硬件没有问题后,我们进行软件调试。从而进行各部分模块调试。