1、(2) 独立设计电路,应包括单片机小系统、红外光电开关、数码管显示部分。三设计方案: 根据指导老师要求需要将两个设计题目整合到一个系统中。经过分析和查找大量的资料以及同组成员的讨论,得出以下设计方案:1. STC89C52单片机选择STC89C52单片机作为主控芯片;Atmel公司的生产的AT89C52单片机是一种低功耗/低电压、高性能的8位单片机,内部除CPU外,还包括128字节RAM,4个8位并行I/O口,5个中断优先级,2层中断嵌套中断,2个16位可编程定时计数器,片内集成4K字节可改变程序Flash存储器,具有低功耗,速度快,程序擦写方便等优点,完全满足本系统设计需要。单片机P0口作为
2、ADC0804转换数据的输入端,P2.0接ADC0804的INTR端检测数据转换是否结束。P1.0P1.3的输出信号接到译码器7447上作为数码管的显示,P1.4P1.7则作为个数码管的位选信号控制。P3口有特殊的功能,P3.6用于控制ADC0804的启动,P3.7用于控制读取ADC0804的转换结果。2. LED数码管 LED是Light Emiting Diode(发光二极管)的缩写,发光二极管是能将电信号转换为光信号的电致发光器件。由条形发光二极管组成“8”字形的LED显示器,也称数码管。七段数码管引脚图数码管使用条件:a、段及小数点上加限流电阻;b、使用电压,段:根据发光颜色决定,小数
3、点:根据发光颜色决定;c、使用电流,静态:总电流80mA,动态:平均电流4-5mA;共阴数码管实物管脚图4.选用AD590作为温度传感器。AD590工作原理及特性:(1)其输出电流是以绝对温度零度(-273)为基准,每增加1,它会增加1A输出电流,因此在室温25时,其输出电流Io=(273+25)=298A。(2)可测量范围-55至150。(3)供电电压范围+4V至+30V。精度高。(4)AD590 共有I、J、K、L、M 五档,其中M 档精度最高,在-55+150范围内,非线性误差为0.3。本次选用AD590JH,其非线形度+-1.5度测量范围-55+150。(5)AD590封装及典型电路V
4、o的值为Io乘上10K,以室温25而言,输出值为2.98V(10K298A)。量测Vo时,不可分出任何电流,否则量测值会不准。(6)由于AD590输出为电流量单片机不能直接读取,因此需要通过串联电阻将电流量转换为电压量,在由模数转换芯片AD0804将电压量转换为其对应的数字量,然后通过软件将采集到的电压量转化为温度进行显示。5、AD0804工作原理及特性:(1)AD0804引脚图(2)ADC0804 电气特性:(1) 高阻抗状态输出 (2) 分辨率:8 位(0255) (3) 存取时间:135 ms (4) 转换时间:100 ms (5) 总误差:-1+1LSB (6) 工作温度:ADC080
5、4C为0度70度;ADC0804L为-40 度85度 (7) 模拟输入电压范围:0V5V (8) 参考电压:2.5V (9) 工作电压:5V (10) 输出为三态结构 (3)AD0804引脚功能:1 (CS )引脚:Chip Select,与RD、WR 接脚的输入电压高低一起判断读取或写入与否,当其为低位准(low) 时会active。2 ( RD ) 引脚:Read。当CS 、RD 皆为低位准(low) 时,ADC0804 会将转换后的数字讯号经由DB7 DB0 输出至其它处理单元。3 (WR ) 引脚:启动转换的控制讯号。当CS 、WR 皆为低位准(low) 时ADC0804 做清除的动作
6、,系统重置。当WR 由01且CS 0 时,ADC0804 会开始转换信号,此时INTR 设定为高位准(high)。4引脚和19引脚(CLK IN、CLKR):频率输入/输出。频率输入可连接处理单元 的讯号频率范围为100 kHz 至800 kHz。而频率输出频率最大值无法大于 640KHz,一般可选用外部或内部来提供频率。若在CLK R 及CLK IN 加上电 阻及电容,则可产生ADC 工作所需的时序,其频率约为:5 ( INTR ) 引脚:中断请求。转换期间为高位准(high),等到转换完毕时INTR会变为低位准(low)告知其它的处理单元已转换完成,可读取数字数据。6引脚和7引脚(VIN(
7、+)、VIN(-):差动模拟讯号的输入端。输入电压VINVIN(+)VIN(-),通常使用单端输入,而将VIN(-)接地。8 (A GND) 引脚:模拟电压的接地端。9 (VREF2) 引脚模拟参考电压输入端。VREF 为模拟输入电压VIN 的上限值。若PIN9空接,则VIN 的上限值即为VCC。10 (D GND) 引脚数字电压的接地端。11 18 (DB7 DB0) 引脚转换后之数字数据输出端。20 (Vcc) 引脚驱动电压输入端。(4)AD0804典型接线图频率计算方法是Fck=1/(1.1*R*C)以上图为例R=10K,C=150PF则其内部转换频率是Fck=1/(101*10K*15
8、0PF)=606KHz更换不同的R,C值会有不同的转换频率,而频率越高代表速度越快。R,C的组合,务必使频率范围在100KHz1460KHz之间。(5) AD0804时序图关于AD0804的几点说明:1. 首先CS片选端拉低AD0804使能;2. 第三引脚(WR)来一个下降沿脉冲,开始进行模拟/数字信号转换;3. 转换完毕后AD0804中断输出引脚INTR将高电位将至低电位;4. 装换完成后在CS低电平期间AD0804第二引脚来一个下降沿脉冲读取AD转换结果;光电计数器采用反射式光电开关。光电开关有以下几种:_H_Q_f*_M i-V f_S 0槽型光电开关黑龙江物联网4t,s_n_L_l_C
9、&O把一个光发射器和一个接收器面对面地装在一个槽的两侧的是槽形光电。发光器能发出红外光或可见光,在无阻情况下光接收器能收到光。但当被检测物体从槽中通过时,光被遮挡,光电开关便动作。输出一个开关控制信号,切断或接通负载电流,从而完成一次控制动作。槽形开关的检测距离因为受整体结构的限制一般只有几厘米。黑龙江物联网*|_A h%Z4k_L对射型光电开关若把发光器和收光器分离开,就可使检测距离加大。由一个发光器和一个收光器组成的光电开关就称为对射分离式光电开关,简称对射式光电开关。它的检测距离可达几米乃至几十米。使用时把发光器和收光器分别装在检测物通过路径的两侧,检测物通过时阻挡光路,收光器就动作输出
10、一个开关控制信号。反光板型光电开关 黑龙江物联网;G)!P1e_d7b反光板型光电开关黑龙江物联网;P1e_d7bW;a_j,_i1 把发光器和收光器装入同一个装置内,在它的前方装一块反光板,利用反射原理完成光电控制作用的称为反光板反射式(或反射镜反射式)光电开关。正常情况下,发光器发出的光被反光板反射回来被收光器收到;一旦光路被检测物挡住,收光器收不到光时,光电开关就动作,输出一个开关控制信号。黑龙江物联网:E3_K-t U);?4s |光电开关在没有障碍物遮挡时输出为高电平,当有障碍物遮挡时输出为低电平。因此可将光电开关输出引脚接到单片机的外部中断引脚。每检测到一次物体单片机产生一次中断计
11、数值加一。黑龙江物联网_W_j%g z7扩散反射型光电开关它的检测头里也装有一个发光器和一个收光器,但前方没有反光板。正常情况下发光器发出的光收光器是找不到的。当检测物通过时挡住了光,并把光部分反射回来,收光器就收到光信号,输出一个开关信号。综合考虑本次设计采用反光板型光电开关。5.采用四位数码管显示数据。采用动态显示,数码管前两位显示整数温度,第三位显示小数点后一位,最后一位显示符号“C”,即温度符号;另外,通过开关切换,后两位还显示光电计数的数值。6.通过软件设置计数报警值。通过软件可设置逢10报警,加到99自动清0。7.按照数据手册单片机,AD590,AD0804,数码管均采用5V电源供
12、电即可,而AD590需在5.5V以上才能正常工作。四.具体实现1.系统组成框图:该数字温度计利用AD590集成温度传感器及其接口电路完成温度的测量并转换成模拟电压信号,经由模数转换器ADC0804转换成单片机能够处理的数字信号,然后送到单片机AT89C51中进行处理变换,最后将温度值显示在D4、D3、D2、D1共位七段码LED显示器上。系统以AT89C51单片机为控制核心,加上AD590测温电路、ADC模数转换电路、4位温度数据显示电路以及外围电源、时钟电路等组成。系统组成框图如下。2.原理图见附录。3.程序见附录五各部分定性说明以及定量计算:电路分析AD590的输出电流I=(273+T)A(
13、T为摄氏温度),因此量测的电压V=(273+T)A 10K= (2.73+T/100)V。为了将电压量测出来又需使输出电流I不分流出来,我们使用电压追随器其输出电压V2等于输入电压V。利用可变电阻分压,其输出电压V1需调整至2.73V。接下来我们使用差动放大器其输出Vo为 (100K/10K)(V2-V1)=T/10V。如果现在为摄氏28度,输出电压为2.8V,数码管显示内容为为“28.0C”。六调试及问题解决:1、 数码管显示的数值不停上下波动;在室内温度应该是基本恒定的,但显示温度个位也在不停地上下波动,后测得AD590处的电压基本恒定,而AD0804接收到的模拟电压量就有变化,只是没有数
14、码管波动的快;检查线路后,证明放大电路、AD0804采集电路没有任何错误。原因分析及解决:从硬件和软件两方面入手;第一、AD0804采集的数据不太稳定,可能是运放电路的原因,改进后,我们在放大电路后并未直接送给AD0804,而是经过一个电压跟随器后再送给AD0804;第二,可能是单片机送给数码管的频数太大,在软件中,改变了原来用采集16次后取平均值,就送给数码管的方法,而分两次采集,算平均值,若两次相等才送给数码管;否则,不送。这样的好处是可以滤掉不定因素对电流的改变,可以弃掉一部分AD0804转换的不合格数字量。2、 AD采集到的到的电压正确,但数码管显示的温度不正确; 放大后的电压正确,说
15、明运放电路没问题 ;单片机下了驱动数码管程序,数码管显示正确;仔细检查程序也没有错误,现在就一种可能:AD0804外围电路的问题,但外围电路我们是按郭天祥讲的基本电路连的,检查后没有任何错误。后来查了一些资料发现AD0804外围的RC振荡电路接的电容为150pF,我们接的是104电容,后改为102能正确显示温度了。刚开始电容接的太大,影响了AD的转换速率。3、 在用软件实现显示小数点,我们用80H与调用数组前的数取或,结果不仅点没显示,数码管第二位也不亮了;单片机P0口接收到的数 后来仔细一想,调用数组前的数是一个十进制数,取或没任何意义,在数码管第二位调用数组时,调用了一个新数组,重新定义了
16、段码,所有段码都能使共阴极数码管的dp亮。4、 AD590向外送的电压过低;AD590串联10K电阻供电电压为4.95V(供电电压5V由于压降减为4.95V)输出电压与理论值相差很大,测试时室温约25C输出电压理论值应为2.98V。但是实际输出只有2.72V,而且输出电压也会随AD590温度的升高而升高,但不明显;此现象不正确。多次检查电路,电路连接正确,检查不出电路有错误,又详细阅读AD590的数据手册及上网查资料,结论是AD590连接正常,讨论决定加大AD590的电压,供6V电压试验输出正常。后又发现AD590供电电压要大于5.5V才能工作正常。七心得体会: 经过将近两周的课程设计,还算成
17、功的完成了数字温度计和光电计数的设计,让我高兴的是得到了老师表扬,但更让我开心的是从一次次的错误、误差和各种错误,到克服这些知识的盲区;另外,这次设计把理论知识与实践相结合,使我们从动手的实践中体会到乐趣,学到了一些从课本上学不到的知识。刚看到这次课设题目,我懵了,根本无从下手,毕竟在课本上学的知识只停留在表层,更别提把单片机、AD0804、AD590等联系在一起,实现这么难的功能(当时是这么认为的);后来通过看书、查资料,基本搞懂了大致原理;接着分模块逐模块的击破,分为单片机基本电路(包括复位、晶振电路)、数码管模块(实现点亮)、AD590的工作原理、运放电路的连接及其工作原理和AD0804
18、外围电路及工作原理等几大模块;把这几块搞懂后,再联系在一起,忽然间觉得明白了许多,剩下的就是一些小的问题和故障调试。在本次设计的过程中,我遇到了很多的问题,虽然以前还做过这样的设计,但这次设计真的让我长进了很多。尤其是在软件方面让我有很大的进步;单片机课程设计重点就在于软件算法的设计,需要有很巧妙的程序算法,虽然以前写过几次程序,但我觉的写好一个程序并不是一件简单的事,要把每个部分的功能写好,要会灵活运用子程序,并且要记一些程序模块,经过适当的修改再结合起来,而且程序的算法要尽量简单不繁琐,这次编程的过程让我充分意识到子程序和中断程序的重要性。从这次的课程设计中,我真真正正的意识到,在以后的学
19、习中,要理论联系实际,把我们所学的理论知识用到实际当中,无论是电路的连接、器件的选择,还是单机片机的学习,程序只有在经常的写与读的过程中才能提高,这就是我在这次课程设计中的最大收获。在连接面包板电路时,要事先观察设计好每个部件的安放位置,然后根据事先画好的电路图连接电路,我们要按步骤进行有序的排列。这次用的是面包板,以后肯定是用PCB版,在焊接电路时就会更难了,不仅要有序连接还不能出错,连先前画好整个原理图很有必要。我们只有多动手实践才能把所学知识融会贯通的运用起来,实验是检验真理的唯一标准,例如:虽然AD590传感器的数据手册指出 AD590的工作电压430 V,但实际情况并不是这样,供5V电压不能正常工作;如果只是读数据手册而不动手做实物怎么可能发现这些问题的;而课程设计正是给了我们这样一个很好的机会,让我们能在实践过程中把所学知识加以验证。八参考文献:1 杨学昭,王云东,单片机原理.接口技术及应用(含C51),西安:电子科技大学出版社 ,2009年。2 康华光,电子技术基础,北京:高等教育出版社,2005年。3 郭天祥,51单片机C语言教程,北京:电子工业出版社,2009年。4 XX文库,实物温度显示图实物光电计数显示图
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1