《微机原理课程设计压力测试系统的设计.pdf》由会员分享,可在线阅读,更多相关《微机原理课程设计压力测试系统的设计.pdf(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 设计题目 压力测试系统的设计(一)设计要求 对压力传感器的信号进行检测并在 LED 数码显示器上显示压力值,当压力低于 30pa 时,黄灯闪烁,闪烁周期为 1 秒。当压力高于 150pa时,红灯闪烁。LED 的显示内容为 P=XXX。X 为测试值。设 计 思 路 压力测试系统的设计,必然要牵涉到压力的感应与转化,所以必须要有压力传感与 A/D 转换器。将自然中的模拟量转化为电压信号,再转化位数字信号进行处理。一个小型的微机系统,必须要有8086cpu 来进行整体的控制,将其通过 8255 与 A/D 传感器进行连接。这就是这个系统的主要框架。而具体的应用框架则是在主要的框架上添加。要当压力低
2、于30pa 时,黄灯闪烁。当压力高于 150pa 时,红灯闪烁。则应添加 8255 模块。通过编程来控制黄灯与红灯的亮灭情况,考虑到要进行比较,所以我用了两个比较器进行数据的比较。同时,由于灯要闪烁,闪烁周期要一秒,所以我们考虑到还要加一个 8253 芯片去控制。但根据个人情况,这个模块我省略了。而至于 LED 显示,且显示内容为三位。我只在程序之中体现,而在硬件图中没有去体现。系统设计框图 程序流程图 开始 8255 初始化 采集模拟数据 启动 AD 转化 XXX PaXXX150 PaXXX30 PaXXXPa15030 红灯闪烁 黄灯闪烁 都不亮 显示 模数转换单元ADC0809 CPU
3、中央处理器 8086 并 行 接 口 芯 片8255 大于 150Pa 红灯闪烁 小于 30Pa 黄灯闪烁 显示数字 三位数码显示管 压力传感器 源程序:CODE SEGMENT ;电椅代码段 ASSUME CS:CODE ;段分配 ORG 1000H ;起始地址 ADPORT EQU FFFOH ;定义 AD 口 IOCONPT EQU 0FF2BH ;定义 8255 控制口 IOBPT EQU 0FF29H ;定义 8255B 口 START:CALL FORMAT ;初始化 ADCON:CALL DISP ;调用 DISP 显示 ADCON1:MOV AX,00 ;启动 A/D MOV
4、DX,ADPORT OUT DX,AL MOV CX,0500H DELAY1:LOOP DELAY1 ;延时 MOV DX,ADPORT ;将通道 0 地址写入 DX IN AL,DX ;读取 A/D 转化值 PUSH AX ;输入 AX 即将 A/D 转化数据存入 AX 中 IO:MOV DX,IOCONPT ;MOV AL,10010010B OUT DX,AL MOV DX,,IOBPT IN AL,DX ;从 DX 中读入 AL,读出 A/D转化值 TEST AL,80H ;测试提取 8255PB7 口 JNZ LESS 30 ;不等 跳转 LESS 30 TEST AL 40H ;
5、测试提取 8255PB6 口 JNZ GREATER 150 ;不等跳转 GREATER 150 LESS 30:POP AX MOV DX,,IOCPT MOV AL,80H OUT DX,AL ;输出 8255PB7 口值 CALL LL1 ;显示 GREATER:POP AX MOV DX,IOCPT MOV AL,40H OUT DX,AL ;8255PB6 口值 CALL LL1 ;显示 LL1:CALL CONVERS CALL DISP JMP ADCON1 CONVERS:MOV BL,AL aam MOV BX,077DH mov DS:BX,al mov al,ah aam
6、 INC bx mov DS:Bx,al INC bx mov DS:Bx,ah RET ;通过两次校验将显示的三位数值分开进行存贮 disp:mov dx,077Fh mov ah,20h ;动态显示,是最左边的数码管亮 disp0:mov cx,00ffh mov bx,dx ;bx=077FH mov bl,ds:bx mov bh,0h push dx mov dx,0ff22h mov al,cs:bx+OFFSET DATA1 OUT DX,AL mov dx,0ff21h mov al,ah OUT DX,AL disp1:loop disp1 ;循环,延时 pop dx dec
7、 dx shr ah,01h jnz disp0 ;不为 0 转移至 disp0 mov dx,0ff22h mov al,0ffh OUT DX,AL ret ;这里 disp、disp0、disp1 的作用是为了显示三位数值,从左至右依次 的输出各位至。高三位不变,低三位进行显示 data1:db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h,0ah db 86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh FORMAT:MOV BX,0 MOV WORD PTR DS:BX+077AH,0000H ADD BX,2 MOV WORD PTR DS:BX+077AH,0009H ADD BX,2 MOV WORD PTR DS:BX+077AH,0008H ;初始化,定义六段存储空间 RET CODE ENDS