- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机科学与技术系
微机原理与接口技术
课程设计报告
2007~2008 学年第2学期
课程 微机原理与接口技术 课程设计名称 检测与报警系统的设计与开发 学生姓名 学号 专业班级 指导教师
2009 年 2 月
一、题义分析与解决方案
1. 题义需求分析
设计并开发能检测模拟信号,并能产生报警信号的系统。其具体要求是:
(1)能对输入的0—5V的模拟电压信号进行检测。
(2)能判断所检测的信号是否越界。
(3)若信号越界则进行声(PC机扬声器)、光(发光二极管)报警。
说明:其界限值是自行设定的(2.5V),其所对应的数字量为((2.5/5)*255=127.5=80H),事先将其存储在某寄存器或存储单元中。
根据题目要求进行以下几点分析:
输入的电压值是模拟信号,而检测的值只能为数字信号。因此对0—5V的模拟电压信号进行检测前,要利用A/D转换器(ADC0809)将模拟量转换为数字量。
(2)因为要对信号进行越界检测,因此需要利用二进制逻辑开关开关自行设定越界的界限量。
(3)假如出现越界,需要产生声、光报警,从而起到提示作用。光可以利用发光二极管,声可以利用PC扬声器。
2. 解决问题方法及思路
(1)硬件部分
ADC0809模数转换器一片(用于将采集的模拟信号转换成数字信号)
可编程并行接口芯片8255一片
逻辑开关电路板一片(用于设置界限值)
发光二极管一只(用于报警时产生光)
PC扬声器一个(用于报警声音提示)
七段LED显示器(用于显示电压值以及界限值)
8086通过8255同ADC0809相连,由电位器将模拟量送入ADC0809,并由8255采用查询工作方式控制ADC0809工作。8086通过8255向报警系统(扬声器、发光二极管)以及七段LED显示器发送控制信号。
(2)软件部分
首先对8255进行初始化设置,设置8255的工作方式和端口地址,然后启动ADC0809的程序进行模/数转换,通过ADC0809信道0将输入的0—5V的模拟电压信号转换成数字信号并将其保存在AH寄存器中,比较AH的值与事先保存在AL寄存器(二进制开关输入的界限值)中的值,若小于则继续采集信号并通过七段LED显示器显示输入值和界限值,若大于或等于则将分别与二极管和扬声器相连的PC6,PC7端口置位(置低电平有效),进行报警并同样通过LED显示,再经过延时后再进行复位重新进行模拟信号的转换。
二、硬件设计
ADC0809模数转换器
1.1 ADC0809的作用:
众所周知,CPU能应用的只能是数字量。而本设计中的输入电压为模拟信号,因此需要ADC0809进行模数转换,将采样电压转换为数字信号。
1.2 ADC0809的功能分析
模/数转换是指通过一定的电路将模拟量转变为数字量,由于模拟量是连续的,而数字量是离散的,所以,一般在某个范围中的模拟量对应于某一数字量,这就是说,在A/D转换时,模拟量和数字量之间并不是一一对应的关系。
即从理论上,有一个转换精度的问题,转换精度反映了A/D 转换器的实际输出接近理想输出的精确程度,A/D转换的精度通常是用数字量的最低有效位(LSB)来表示的,设数字量的最低度有效位于对应于模拟量△,这时,我们称△为数字量的最低有效位的当量,ADC0809采用的是逐位逼近A/D转换,逐位逼近A/D转换时,也用D/A转换器的输出电压来驱动运算放大器的反相端,不同的是用逐位式进行转换时,要用一个逐位逼近寄存器存放转换好的数字量,转换结束时,将数字量送到缓冲寄存器中,当启动信号由高电平变为低电平时,逐位逼近寄存清零,这时D/A转换器输出电压V0也为0,当启动信号变为高电平时,转换开始。
同时,逐位逼近寄存进行计数。逐位逼近寄存器工作是从最高位开始,通过设置试探值来计数,在第一个时钟脉冲时,控制电路反最高位送到逐位逼近寄存器,使它输出为1000 0000,则D/A转换器输出电压V0为满量程值128/255,若V0大于Vi,则作为比较器的运算放大器的输出成为低电平,控制电路据此清除逐位逼近寄存器中的最高位;若V0小于Vi,则比较器输出高电平,控制电路使最高位的1保留下来,如果最高位被保留,则值1000 0000下一个时钟脉冲使次高位D6为1,于是逐位逼近寄存器值为1100 0000,V0为满量程值192/255。
此后,若V0大于Vi,则比较器输出低电平,从而使次高位D6复位,如果V0小于Vi,则比较器输出高电平,从而保留高位D6为1,再下一个时钟脉冲D5置1,比较……直到D0为1,再与输入电压比较,经N次比较,寄存器中得到的值就是转换后的数据,转换以后,控制电路送出一个低电平作为结束信号,这个信号的下降沿将逐位逼近寄存器中的数字量送入缓冲寄存器,从而得到数字量输出。
1.3 ADC0809的
文档评论(0)