ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:85.78KB ,
资源ID:6760885      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6760885.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(8086微机原理课程设计压力测量系统的设有硬件电路图计.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

8086微机原理课程设计压力测量系统的设有硬件电路图计.docx

1、8086微机原理课程设计压力测量系统的设有硬件电路图计序号: 课 程 设 计(微机原理及应用A) 二一一 年 七 月 八 日课程设计任务书及成绩评定课题名称 压力测控系统的设计 I、题目的目的和要求: 设计一个对压力传感器的信号进行检测并在LED数码显示器上显示压力值的系统,当压力低于30pa时,黄灯闪烁,闪烁周期为1秒。当压力高于150pa时,红灯闪烁。LED的显示内容为P=XXX。X为测试值。II、设计进度及完成情况日 期内 容7月4日查阅资料,拟定设计方案。7月5日选课程设计题目,编写程序。7月6日设计总体方案,上机调试。 7月7日整理打印设计报告。 7月8日上交设计报告并进行答辩。II

2、I、主要参考文献及资料微型计算机原理及应用 清华大学出版社 郑学坚 周斌微型计算机技术及应用清华大学出版社 史嘉权微机原理与接口技术基础与应用海洋出版社 邓振杰微机原理与接口技术实验及课程设计西南交通大学出版社 杨斌 单片机原理及接口技术 清华大学出版社 梅丽凤 王艳秋 学科部主任 (签字)、成绩评定:设计成绩: (教师填写)指导老师: (签字)二一一 年 七 月 八 日一、设计要求设计一个对压力传感器的信号进行检测并在LED数码显示器上显示压力值的系统,当压力低于30pa时,黄灯闪烁,闪烁周期为1秒。当压力高于150pa时,红灯闪烁。LED的显示内容为P=XXX。X为测试值。二.设计思想 压

3、力测试系统的设计,必然要牵涉到压力的感应与转化,所以必须要有压力传感与A/D转换器。将自然中的模拟量转化为电压信号,再转化位数字信号进行处理。一个小型的微机系统,必须要有8086cpu来进行整体的控制,将其通过8255与A/D传感器进行连接。这就是这个系统的主要框架。 而具体的应用框架则是在主要的框架上添加。要当压力低于30pa时,黄灯闪烁。当压力高于150pa时,红灯闪烁。则应添加8255。模块。通过编程来控制黄灯与红灯的亮灭情况,考虑到要进行比较,所以我用了两个比较器进行数据的比较。同时,由于灯要闪烁,闪烁周期要一秒,所以我们考虑到还要加一个8253芯片去控制。但根据个人情况,这个模块我省

4、略了。而至于LED显示,且显示内容为三位。我只在程序之中体现,而在硬件图中没有去体现。三.系统设计框图四.程序流程图五.源程序;宏定义addr_8253 equ 208ha_8253 equ addr_8253 b_8253 equ addr_8253+1hctrl_8253 equ addr_8253+3haddr_adc0809 equ 210h addr_8255 equ 200ha_8255 equ addr_8255b_8255 equ addr_8255+1hc_8255 equ addr_8255+2hctrl_8255 equ addr_8255+3h;*code segmen

5、t assume cs:code,ds:codestart: mov ax,cs mov ds,ax;* ;8253产生方形波,周期为1s,通道0 mov dx,ctrl_8253 ;设置8253控制口 mov al,3eh ;控制字00111110 00表示计时器0;11表示先读写低八位,后写读高八位; X11表示工作在模式3; 0表示二进制计数 out dx,al ;写控制字 mov dx,a_8253 ;设置计数初值(计数器0) mov ax,1000d out dx,al ;先写低八位,后写高八位 mov al,ah out dx,al ;8253产生方形波,周期为1s,通道1 mov

6、 dx,ctrl_8253 ;设置8253控制口 mov al,7eh ;控制字01111110 01表示计时器1;11表示先读写低八位,后写读高八位; X11表示工作在模式3; 0表示二进制计数 out dx,al ;写控制字 mov dx,b_8253 ;设置计数初值(计数器1) mov ax,500d out dx,al ;先写低八位,后写高八位 mov al,ah out dx,al;*;启动A/D mov dx,addr_adc0809 ;ADC0809 out dx,al ;*disp: ;8255初始化 ;A口做为段码输出,B口做为位码输出,C口低2位做为有色灯的输出 mov d

7、x,ctrl_8255 ;8255初始化 mov al,80h ;控制字 10000000 1表示方式控制字; 00端口A方式0; 0输出; 0PC7-PC4 输出; 0定义端口B为0 输出;0 PC0-PC3 输出 out dx,al ;写控制字repeat: ;初始化地址指针和位码 lea bx,TABLE ;段码表首址送bx Load effect address取有效地址,也就是取偏移地址 lea di,BUFDA ;指向缓冲区首地址 Load effect address取有效地址,也就是取偏移地址 mov cl,0dfh ;11011111b 位码,共阴极,便于从第六位开始向低位依

8、次显示next: ;显示子程序 ;输出位码 mov dx,b_8255 ;8255B口,输出位码 mov al,cl out dx,al mov al,di ;从缓冲区取段码 xlat mov dx,a_8255 ;输出段码到8255A口 out dx,al ;延迟 push cx mov cx,30hdelay: loop delay pop cx ;关LED显示 mov dx,a_8255 mov al,0 out dx,al cmp cl,11111110b ;已经显示最低位 jz convey ;显示完成 inc di ;指向下一个段码 ror cl,1 ;显示向低一位转移 jmp n

9、extconvey: ;延时,方便LED显示结果及有色灯的闪烁 cmp count,0 ;count在后面定义 jz adcall ;延时时间到,开始下一次的数据采样 dec count ;延时时间未到 jmp repeat ;*jmp convey;*;ADC0809接收模拟信号并转化为数字信号adcall: call ad mov count,0ffh ;设置下一次数据采集的时间间隔 jmp repeatTABLE: ;段码表 db 3fh;0 db 06h;1 db 5bh;2 db 4fh;3 db 66h;4 db 6dh;5 db 7dh;6 db 07h;7 db 7fh;8 d

10、b 6fh;9 db 73h;P db 48h;= db 00h;NULLBUFDA: ;显示缓冲区 db 10,11,12,12,12,0 ;初始显示P= 0 count dw 0ffh;* ad proc ;读取AD转换结果并启动AD push ax push bx push cx push dx push di mov dx,addr_adc0809 ;通道0 ;读结果 in al,dx ;数字量存放在al中 ;启动A/D out dx,al ;启动下一次的ad转换 push ax;* ;根据数字量的值判断有色灯是否要亮 cmp al,30d jb yellow ;小于30 小于则转移到

11、目标指令执行 cmp al,150d ja red ;大于150 大于则转移到目标指令执行 mov dx,ctrl_8255 ;8255控制口 push ax mov al,00h ;介于30和150之间,PC0输出低电平 out dx,al pop ax jmp red_yellow;*red: mov dx,c_8255 ;控制口 mov al,02h ;8255 PC1输出高电平 out dx,al jmp red_yellowyellow: mov dx,c_8255 ;控制口 mov al,01h ;8255 PC0输出高电平 out dx,alred_yellow: pop ax

12、mov ah,0;*;将数字量转换成十进制,方便显示 call binidec pop di pop dx pop cx pop bx pop ax retad endp;*binidec proc;将存放于AL中的数转换为十进制数存放到BUFDA中 push ax mov ah,0 ;ax=al mov bl,10 mov cx,4 ; lea di,BUFDA+5 ;指向显示缓冲区末尾binidec_next: div bl ;al:商,ah:余数 mov di,ah dec di dec cx mov ah,0 cmp al,0 jnz binidec_nextbinidec_null:

13、 mov byte ptr di,12 dec di loop binidec_null pop ax retbinidec endp;*code ends end start 六、设计心得经过一周的微机课程设计,让我对微机这一门课程有了系统的疏导。在学习这门课程是我们只是独立的讲解一些芯片的结构及用法,而通过微机课程设计,在我们在构建一个小型的微机系统时,而真正的去关注这些芯片的连接。这不但要求我们对各个芯片要有一定的了解与认知。而且要懂得怎么融会贯通。这是我在这次微机实习中体会最深的。其二,通过微机课程设计,培养了我们想问题的思维方式。以前我们想问题时总是将一些问题孤立出来去思考,而这次实

14、习,他引导我们以多维的方式去解析整个问题。在课程设计中,我们不但要理解好系统的结构,进而画出硬件连接图、而且要写出程序流程图及源程序就,这些虽然是不同的表现形式,但他们必须用统一的思想去认识。其三,通过对压力测试系统的设计,让我们更加了解了CPU8086、ADC0809、8255等芯片的用法,同时,也对汇编语言的编程有了更加深入的认识。为以后单片机的学习奠定了一定的基础。最后,我通过课程设计认知了团队合作的重要性。通过与搭档的交流,让我对有些以前不是很熟悉的内容有了提高。同时在与之合作中,让我对工程这个概念有了新的认识,因为在以后工作中我们都必须面对与团体的合作。只有在平常,我们多去与人交流。才能提升我们的这个能力。总之,一周的微机的课程设计尽管很短,但让我们受益颇多。设计硬件电路图

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1