海南软件职业技术学院毕业设计(论文)
在系统中,SJA1000的片选信号一般由地址总线经译码获得,并由此决定出CAN控制器各寄存器的地址。在本设计中,单片机AT89C51的P2.7为片选信号。
SJA1000的TX1脚悬空,RX1引脚的电位必须维持在约0.5Vcc上,否则,将不能形成CAN协议所要求的电平逻辑。如果系统传输距离近,环境干扰小,可以不用电流隔离,这样可直接把82C250的VREF端(约为0.5Vcc)与RX1脚相连,从而简化了电路[13]。
当上电复位时,AT89C52的上电复位,需要从低到高的电平变化来激活,而SJA1000的17脚RST被激活,需要出现一个由高电平到低电平的跳变,因此,这必须加一个反相器。
82C50第8脚与地之间的电阻称为斜率电阻,它的取值决定了系统处于高速工作方式还是斜率控制方式。而在波特率较低、总线较短时,一般采用斜率控制方式,实验数据表明15~200kΩ为斜率电阻较理想的取值范围,在该方式下,可以使用平行线或双绞线作总线。在本设计中选用150K。
元器件的选取: SJA1000芯片一块 PCA82C250芯片一块 74LS04芯片一块 16MHZ晶振一个 22PF的二极管两个 60欧姆的电阻一个 150K的电阻一个
26 / 34
海南软件职业技术学院毕业设计(论文)
4 系统可靠性设计
小区安防系统的报警要求准确无误,必须是可靠的,因此可靠性是一个很重要的指标,因此,系统的硬件电路、软件系统的设计均应围绕这个中心进行。
4.1 硬件抗干扰措施
干扰的渠道有:供电系统的干扰,过程通道的干扰,空间的干扰等。在印刷电路板设计时,考虑到电路板过大时,印刷线条长,抗噪声能力下降;过小时,散热不好,容易受邻近线干扰。所有本系统设计电路板时,把相关的器件尽量放靠近些,容易产生噪声的器件、电流电路、大电流电路尽量远离单片机。同时整个系统用一个电源,并保证其良好的共地。
4.2 提高元器件的可靠性
提高单片机应用系统中所有元件的质量,以提高系统内在的可靠性,这也是关键性的措施。采取的措施有:
(1)选用质量好的接插件,并设计好工艺结构,如选用带屏蔽的接插件; (2)选用合格的电子元件,并进行严格的测试、筛选; (3)设计时,技术参数留有一定的余量; (4)提高印刷板的组装质量。
27 / 34
海南软件职业技术学院毕业设计(论文)
5 系统调试
5.1 整体调试分析
整个调试所使用的测试仪器仪表和工具: 1.微机一台; 2.示波器; 3.万用表; 4.直流稳压电源; 5.单片机开发系统一套;
本系统的调试主要分为硬件调试、软件调试和联机调试三大部分。
经过初步的分析设计后,在制作硬件电路的同时,软件调试也在穿插进行。这样有利于问题的分析和解决,不会造成问题的积累,而且不会因为一个小问题而需要检查整体电路,从而可以节约大量的调试时间。软件编程中,作者首先完成的是单元功能模块的调试,然后进行系统调试,整体上与硬件调试的方法差不多。联机调试是最重要的一部分,同时也是本装置成功的关键,有许多问题都比较棘手。
5.2 硬件单元电路调试 5.2.1 最小系统板调试
首先检测所制作的电路板是否有虚焊,短路等现象。然后接上+5V电源,检测各个芯片的电源是否为+5V,如果是+5V的话,说明供电正确。接上电压,看单片机是否发热,如不发热说明电源连接正确。测单片机30脚(ALE)是否有脉冲波形输出,如果有说明单片机正常工作。
5.2.2 A/D转换电路调试
先对A/D进行编程调试,通过后才能继续完成其他模块的调试,这一步很关键,也是最难调试的一步。
给AT89C51烧入A/D转换程序先调试A/D转换电路。A/D转换电路调试步骤如下: (1)、给三路模拟电压输入一定的直流电压,用万用表检测电压是否采集过来,也就是输入端电压与电源所给电压是否一致。
(2)检测ADC0809的启动信号输出是否正确。
28 / 34
海南软件职业技术学院毕业设计(论文)
(3)测得输入端电压与电源所给电压一致后,再检测ADC0809的通道选择是否正确:如:给IN5输入0~5V的电压,如果测得C端为高电平,B端为低电平,A端为高电平,则表示该通道选择正确,否则不正确。如果不正确,检查程序是否正确,如果程序没有问题,再检查电路是否接对了。
(4)测得通道选择正确后,再测量数字量输出,也即ADC0809的D0~D7输出端的数字量是否与输入模拟量相对应。改变模拟电压量输入,看数字信号变化是否和模拟量变化对应,如果输出数字量与输入模拟量相对应说明A/D转换正确。
5.2.3 光报警电路调试
首先先检查发光二极管的正负极有没有接错,发光二极管有缺口的是负极。发光二极管是给一个低电平时,发光二极管就亮。用万用表测发光二极管是否是好时,把万用表的档调到合适的档位,红表笔接正,黑表笔接负,发光二极管亮,就表示发光二极管是好的。
当接收到传感器所检测的信号有异样时,所相应的发光二极管就会亮。例如,当温度传感器所检测到的温度高于所设定的最高温度时,所对应的发光二极管就发亮。如果有异常信号后,二极管不亮,先检查硬件电路是否正确,如果硬件电路无误后,就可以判定是软件的问题,再修改程序,进行调试。
5.2.4 键盘显示电路调试
在调试前,值得提到的是三极管的几个极的判断和数码管的a至g所对应的管脚的测试,这是十分重要的,这直接关系到此部分的成败。1、判断基极和管子类型(PNP或NPN):由于基极与发射极、基极与集电极,分别是两个PN结,它们之间的反向电阻值都很小,所以用万用表欧姆档(R×100或R×1K)测量时,先将任一表黑笔接到某一个认定的管脚上,另一表笔先后接到其余两个管脚上。如果测量得到的阻值都很大(或都很小),然后对换表笔,重复上述测量时,阻值恰好与上述相反,都很小(或都很大),则可断定所认定的管脚为基极。若不符合上述结果,应另换一个认定管脚重新测量,直至符合上述结果为止。测量时注意管脚和表笔的极性。当黑笔接在基极,红表笔分别接在其它两极时,测得的电阻值都较小,则可判定该三极管为NPN型,反之即为PNP型。2、判断集电极和发射极:判断集电极和发射极的基本原理是把三极管接成基本单管放大电路。利用测量管子的电流放大系数β的大小来判断集电极和发射极。对于常用的NPN型小功率硅管,若集电极接电源正极,发射极接电源负极,这时表针偏较大。如果电压极性反接,则表针偏转就比较小。由此即可判断出集电极和发
29 / 34
海南软件职业技术学院毕业设计(论文)
射极。另一种更可靠的办法是,当肯定被测为NPN型硅管后,将黑表笔接于一个待测的管脚,红表笔接另一个管脚,基极悬空,观察表针偏转情况,然后将黑表笔所接管脚与已断定的基极用手捏住,比较测量出的阻值变化,然后更换黑、红表笔,再观察阻值变化。如前者的变化比较大,则前者黑表笔所接管脚就是集电极,红表笔所接管脚为发射极。如为PNP管子与上述情况相反。根据上面的方法,测得所使用的三极管是PNP管,其管脚平面对向自己,管脚从左到右为e,b,c。数码管脚的测试就显得比较简单:如果是共阴极的数码管就让位选接地,然后点亮其它的管脚,通过显示结果来断定引脚是a,b,c等,位选也是拿万用表的黑表笔去探试的。如果是共阳极的话就用红表笔来探试位选,其它的与共阴极的一致。经过以上的判断,得到正确的管脚接入电路中。
具体调试步骤为:
(1)键盘是否工作正常。如果不工作,先检查键盘的接线是否正确,如果接线是正确的话,就再检查软件,看程序是否正确。
(2)当按下键盘时,数码管显示的数字是否与软件设计的一样,如果不满足要求,则继续调程序。
5.2.5 传感器电路调试
在进行传感器调试时,首先检查各个传感器的接线电路是否正确,特别是有三个脚的传感器。传感器接到ADC0809时,要接负载电阻,负载电阻的阻值大小有传感器本身决定。当四个传感器接收到各种异常信号时,如,烟雾浓度过高时,烟雾传感器就接收到这个异常信号,通过ADC0809的数据采集,送单片机处理,与设定的烟雾浓度进行比较,若烟雾浓度高于所设定浓度时,给发光二极管一个低电平,发光二极管就亮,显示报警。其他传感器的调试也是如此。当四个传感器都能接收异常信号时,说明传感器电路是正确的,调试以后就没问题了。
30 / 34