收藏 分销(赏)

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

上传人:精*** 文档编号:2798658 上传时间:2024-06-06 格式:DOC 页数:17 大小:508.54KB
下载 相关 举报
微机原理专业课程设计压力测量系统的设有硬件电路图计.doc_第1页
第1页 / 共17页
微机原理专业课程设计压力测量系统的设有硬件电路图计.doc_第2页
第2页 / 共17页
点击查看更多>>
资源描述
序号: 课 程 设 计 (微机原理及应用A) 二○一一 年 七 月 八 日 课程设计任务书及成绩评估 课题名称 压力测控系统设计 I、题目目和规定: 设计一种对压力传感器信号进行检测并在LED数码显示屏上显示压力值系统,当压力低于30pa时,黄灯闪烁,闪烁周期为1秒。当压力高于150pa时,红灯闪烁。LED显示内容为P=XXX。X为测试值。 II、设计进度及完毕状况 日 期 内 容 7月4日 查阅资料,拟定设计方案。 7月5日 选课程设计题目,编写程序。 7月6日 设计总体方案,上机调试。 7月7日 整顿打印设计报告。 7月8日 上交设计报告并进行答辩。 III、重要参照文献及资料 《微型计算机原理及应用》 清华大学出版社 郑学坚 周斌 《微型计算机技术及应用》清华大学出版社 史嘉权 《微机原理与接口技术基本与应用》海洋出版社 邓振杰 《微机原理与接口技术实验及课程设计》西南交通大学出版社 杨斌 《单片机原理及接口技术》 清华大学出版社 梅丽凤 王艳秋 学科部主任 (签字) Ⅵ、成绩评估: 设计成绩: (教师填写) 指引教师: (签字) 二○一一 年 七 月 八 日 一、设计规定 设计一种对压力传感器信号进行检测并在LED数码显示屏上显示压力值系统,当压力低于30pa时,黄灯闪烁,闪烁周期为1秒。当压力高于150pa时,红灯闪烁。LED显示内容为P=XXX。X为测试值。 二.设计思想 压力测试系统设计,必然要牵涉到压力感应与转化,因此必要要有压力传感与A/D转换器。将自然中模仿量转化为电压信号,再转化位数字信号进行解决。一种小型微机系统,必要要有8086cpu来进行整体控制,将其通过8255与A/D传感器进行连接。这就是这个系统重要框架。 而详细应用框架则是在重要框架上添加。要当压力低于30pa时,黄灯闪烁。当压力高于150pa时,红灯闪烁。则应添加8255。模块。通过编程来控制黄灯与红灯亮灭状况,考虑到要进行比较,因此我用了两个比较器进行数据比较。同步,由于灯要闪烁,闪烁周期要一秒,因此咱们考虑到还要加一种8253芯片去控制。但依照个人状况,这个模块我省略了。而至于LED显示,且显示内容为三位。我只在程序之中体现,而在硬件图中没有去体现。 三.系统设计框图 模数转换单元ADC0809 CPU中央解决器 8086 并行接口芯片8255 不不大于150Pa 红灯闪烁 不大于30Pa 黄灯闪烁 显示数字 三位数码显示管 压力传感器 四.程序流程图 开始 8255初始化 采集模仿数据 启动AD转化 XXX 红灯闪烁 黄灯闪烁 都不亮 显示 五.源程序 ;宏定义 addr_8253 equ 208h a_8253 equ addr_8253 b_8253 equ addr_8253+1h ctrl_8253 equ addr_8253+3h addr_adc0809 equ 210h addr_8255 equ 200h a_8255 equ addr_8255 b_8255 equ addr_8255+1h c_8255 equ addr_8255+2h ctrl_8255 equ addr_8255+3h ;****************************************** code segment assume cs:code,ds:code start: 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 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 dx,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 位码,共阴极,便于从第六位开始向低位依次显示 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,30h delay: 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 next convey: ;延时,以便LED显示成果及有色灯闪烁 cmp count,0 ;count在背面定义 jz adcall ;延时时间到,开始下一次数据采样 dec count ;延时时间未到 jmp repeat ;******************jmp convey ;****************************************** ;ADC0809接受模仿信号并转化为数字信号 adcall: call ad mov count,0ffh ;设立下一次数据采集时间间隔 jmp repeat TABLE: ;段码表 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 db 6fh;9 db 73h;P db 48h;= db 00h;NULL BUFDA: ;显示缓冲区 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 不大于则转移到目的指令执行 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_yellow yellow: mov dx,c_8255 ;控制口 mov al,01h ;8255 PC0输出高电平 out dx,al red_yellow: pop ax mov ah,0 ;****************************************** ;将数字量转换成十进制,以便显示 call binidec pop di pop dx pop cx pop bx pop ax ret ad 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_next binidec_null: mov byte ptr [di],12 dec di loop binidec_null pop ax ret binidec endp ;****************************************** code ends end start 六、设计心得 通过一周微机课程设计,让我对微机这一门课程有了系统疏导。在学习这门课程是咱们只是独立解说某些芯片构造及用法,而通过微机课程设计,在咱们在构建一种小型微机系统时,而真正去关注这些芯片连接。这不但规定咱们对各个芯片要有一定理解与认知。并且要懂得怎么融会贯通。这是我在这次微机实习中体会最深。其二,通过微机课程设计,培养了咱们想问题思维方式。此前咱们想问题时总是将某些问题孤立出来去思考,而这次实习,她引导咱们以多维方式去解析整个问题。在课程设计中,咱们不但要理解好系统构造,进而画出硬件连接图、并且要写出程序流程图及源程序就,这些虽然是不同体现形式,但她们必要用统一思想去结识。其三,通过对压力测试系统设计,让咱们更加理解了CPU8086、ADC0809、8255等芯片用法,同步,也对汇编语言编程有了更加进一步结识。为后来单片机学习奠定了一定基本。最后,我通过课程设计认知了团队合伙重要性。通过与搭档交流,让我对有些此前不是很熟悉内容有了提高。同步在与之合伙中,让我对工程这个概念有了新结识,由于在后来工作中咱们都必要面对与团队合伙。只有在寻常,咱们多去与人交流。才干提高咱们这个能力。总之,一周微机课程设计尽管很短,但让咱们受益颇多。 设计硬件电路图
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服