第13章 工程应用与课程设计_第1页
第13章 工程应用与课程设计_第2页
第13章 工程应用与课程设计_第3页
第13章 工程应用与课程设计_第4页
第13章 工程应用与课程设计_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第14章章 工程应用与课程设计工程应用与课程设计14.1.1 项目要求与目的 (1)项目要求:在工程应用中,常常需要进行数据采集和处理。本项目用ADC0809进行2路循环数据采集,8086CPU以中断方式读取每次采集的A/D结果,如果转换后的数字量为零,扬声器便发出频率为1000Hz的音响信号,持续时间为100ms;如果转换后的数字量大于2.5V,使发光二极管LED7闪烁;如果转换后的数字量小于等于2.5V,又将其转换为模拟电压输出,去控制直流电机转速。数据采集的工作灯用发光二极管LED0指示。(2)项目目的:了解8259A、8255、8253、ADC0809、DAC0832的工程应用设计方

2、法。掌握8086CPU与8259A、8255、8253、ADC0809、DAC0832的连线方法。掌握8259A的连线和编程方法。掌握8255的连接和编程方法。掌握8253的连接和编程方法。掌握ADC0809的连接和编程方法。掌握DAC0832的连接和编程方法。14.1 项目项目1:数据采集工程应用:数据采集工程应用14.1.2项目电路连接与说明(1)项目电路连接:如图14-1所示的粗线为要接的线。接线描述如下:8259A的片选连至地址译码处的210217插孔,8259A的IR0中断源连接至ADC0809的EOC;8255A的片选连至地址译码处的200207插孔,PB0接发光二极管LED0,P

3、C7接LED7;DAC0832的片选连至地址译码处的21821F插孔,输出AOUT连接至直流电机的输入DCIN;ADC0809的片选连至地址译码处的20820F插孔,CLOCK连接至2MHz;8253的片选连至地址译码处的220227插孔,CLK1连接至1MHz,OUT1连接至音响及合成VIN1,GATE1连接PA0。 (2)项目说明:此项目是一个综合应用项目,只有在8259A、8255、8253、ADC0809、DAC0832各芯片都能正确掌握的基础上才能进行综合应用,因此需要先复习这些芯片的连线和编程方法。在中断服务程序中,由8255A的PA0-启动8253计数通道1工作,由OUT1端输出

4、1000Hz的方波信号给扬声器驱动电路,持续100ms后停止输出。计数通道1工作于方式3(方波发生器),其门控信号GATE1由8255A的PA0控制,输出的方波信号经过驱动电路送给扬声器。计数通道1的时钟输入端CLK1接2MHz的外部时钟电路。计数通道1的计数初值应为n1=TOUT/TCLK=fCLK1/fOUT1=2106 Hz/1000Hz=2000。14.1.3项目电路原理框图项目电路原理框图如图14-1所示。电路由8086CPU、8255A芯片、8253芯片、8259A芯片、ADC0809、DAC0832和3只发光二极管LED0、LED1、LED7组成。图14-1 数据采集电路图14.

5、1.4项目程序设计(1)程序流程图数据采集程序流程图如14-2所示。图14-2 数据采集程序流程图 (2)程序清单 数据采集程序清单如下所示。 DATA SEGMENTDATA ENDS STACK SEGMENT STACKSTA DW 50 DUP(?)STACK ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK START:MOV AL,13H ; 00010011B,ICW1:边沿触发,单片,要ICW4 MOV DX,210H ; 8259地址 OUT DX,AL MOV AL,8 ; ICW2中断类型号为8 MOV DX,211H OU

6、T DX,AL MOV AL,01H ; ICW4不用缓冲方式,正常中断结束,非特殊的全嵌套方式 OUT DX,AL MOV AX,0 ; 清零 MOV DS,AX ; 数据段清零 LEA AX,INT0 ; 写8259中断程序的入口地址 MOV DS:4*8,AX ; 把中断服务程序的入口地址偏移量送中断矢量表 MOV AX,CS MOV DS:4*8+2,AX; 把中断服务程序的入口地址段地址送中断矢量表 IN AL,DX ; 读中断屏蔽寄存器IMR, AND AL,0FEH ; 屏蔽IR1IR7,允许IR0中的中断请求 OUT DX,AL MOV DX,203H ; 8255初始化 MO

7、V AL,80H ;PA口输出,PB口输出,PC口输出,方式0 OUT DX,AL MOV DX,200H ; 8255初始化 MOV AL,00H ;PA0清零(GATE1=0) OUT DX,ALMOV DX,201H ; PB口地址 MOV AL,0FEH ;PB口输出LED0亮(工作灯) OUT DX,AL NEXT:MOV BL,1 ;置通道数 MOV CX,208H ;置ADC0809的地址 AGAIN:MOV AL,0 MOV DX,CX ;ADC0809转换器IN0地址 OUT DX,AL ; 启动A/D STI ; 开中断 HLT ;等待中度 CMP BL,2 ;判断一轮循环

8、是否已完 JZ NEXT ;已经采集过一轮,从IN0重新开始 INC CX ; ADC0809的地址加1 INC BL ;否则,采集下一个IN2通道 JMP AGAIN ;转 INT0 PROC NEAR ; 8259中断程序 IN AL,DX ;读入结果,使ADC0809的OE有效 CMP AL,0 ; 判AL结果是否为零 JZ DDD ;AL=0,转报警处理 CMP AL,80H ;与2.5V比较 JBE DAC0832 ;低于等于,转D/A转换 MOV AL,00H ;大于2.5V,使DAC0832输出0V MOV DX,218H ;DAC0832地址 OUT DX,AL MOV DX,

9、202H ;PC口地址 BG1: MOV AL,7FH ;低电平LED7亮 OUT DX,AL CALL DELAY ;调延时子程序 MOV AL,0FFH ;高电平LED7灭 OUT DX,AL CALL DELAY ;调延时子程序 JMP BG2 DAC0832: MOV DX,218H ;DAC0832地址 OUT DX,AL ;把数字量转换成模拟量控制直流电机 JMP BG2 ;转返回DDD:MOV DX,200HMOV AL,01H ;8255A的PA0输出高电平,启动8253计数通道1工作OUT DX,ALMOV DX,223H ; 8253 地址MOV AL,01110111B

10、;8253计数通道1初始化:先写低8位,后写高8位OUT DX,AL ;方式3,BCD计数MOV DX,221H ; 8253计数通道1地址MOV AL,00HOUT DX,AL ;写计数初值低8位MOV AL,20HOUT DX,AL ;写计数初值高8位CALL DELAY ;延迟子程序MOV DX,200HMOV AL,00H ;8255A的PA0输出低电平,停止8253计数通道1工作OUT DX,AL BG2:MOV DX,210H MOV AL,20H ; OCW2发结束命令EOI=1 OUT DX,AL IRET INT0 ENDP DELAY PROC NEAR ; 延时子程序 P

11、USH CX ;保护现场 PUSH BXDEL100MS:MOV BL,100DEL1MS:MOV CX,374DEL1: PUSHF POPF LOOP DEL1 DEC BL JNZ DEL1MS POP BX POP CX RET14.2项目项目2:模拟交通灯控制:模拟交通灯控制14.2.1 项目要求与目的项目要求与目的 (1)项目要求:设A车道与B车道交叉组成十字路口,A是主道,B是支道,直接对车辆进行交通管理,设计要求如下所示。 用发光二极管模拟交通信号灯。正常情况下,A、B两车道轮流放行,A车道放行50s,其中5s用于警告;B车道放行30s,其中5s用于警告。 有紧急车辆通过时,按

12、下K1(用单脉冲按钮UP代替)开关使A、B车道均为红灯,禁行20s,紧急情况解除后,恢复正常控制。DELAY ENDP CODE ENDS END START 14.2.2项目电路连接与说明(1)项目电路连接:如图14-3所示的粗线为要接的线。接线描述如下:8259A的片选连至地址译码处的210217插孔,8259A的IR0中断源连接至开关UP上;8255A的片选连至地址译码处的200207插孔,PA0PA5接发光二极管LED0LED5(颜色要两绿、两黄、两红) 模拟交通信号灯。(2)项目说明:利用实验箱上的8255A电路、LED显示电路、8259电路和单脉冲发生器电路,按图14-3所示构成实

13、验电路。 正常情况下运行主程序,采用0.5秒延时子程序的反复调用来实现各种定时时间;有紧急车辆通过时,采用中断IR0执行中断服务程序。 硬件设计说明:用12只发光二极管模拟交通信号灯(实验用6只就可以),以8255A的PA口控制这12只发光二极管,由于8255带负载能力有限,因此,在PA口与发光二极管之间用74LS245(或74LS07)作驱动电路,PA口输出低电平时,信号灯亮;输出高电平时,信号灯灭。在正常情况下,A、B两车道的6只信号灯的控制状态有五种形式,即PA口控制功能及相应控制码如表14-1所示。 (2)项目目的:了解工程应用的设计方法和步骤。了解8259A、8255芯片的工程应用设

14、计方法。掌握8086CPU与8259A、8255的连线方法。掌握8259A的连线和编程方法。掌握8255的连接和编程方法。 软件设计说明:先初始化8259、8255,主程序采用查询方式定时,由CX寄存器确定调用0.5秒延时子程序的次数,从而获取交通灯的各种时间。紧急车辆出现时的中断服务程序需保护现场,然后执行相应的服务,待交通灯信号出现后延时20秒,确保紧急车辆通过交叉路口,然后,恢复现场,返回主程序。 表14-1交通信号灯与控制状态的对应关系控制状态PA口控制码PA7PA6PA5PA4PA3PA2PA1PA0未用未用B道绿灯B道黄灯B道红灯A道绿灯A道黄灯A道红灯A道放行,B道禁止F3H11

15、110011A道警告,B道禁止F5H11110101A道禁止,B道放行DEH11011110A道禁止,B道警告EEH11101110A道禁止,B道禁止F6H1111011014.2.3项目电路原理框图模拟交通灯控制电路原理框图如图14-3所示。电路由8086CPU、8255A芯片、8259A芯片和6只发光二极管LED0LED5组成 图14-3模拟交通灯控制电路图14.2.4项目程序设计(1)程序流程图模拟交通灯控制程序流程图如14-4所示。图14-4 模拟交通灯控制程序流程图 (2)程序清单 模拟交通灯控制程序清单如下所示。 DATA SEGMENTDATA ENDS STACK SEGMEN

16、T STACKSTA DW 50 DUP(?)STACK ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK START:MOV AL,13H ; 00010011B,ICW1:边沿触发,单片,要ICW4 MOV DX,210H ; 8259地址 OUT DX,AL MOV AL,8 ; ICW2中断类型号为8 MOV DX,211H OUT DX,AL MOV AL,01H ; ICW4不用缓冲方式,正常中断结束,非特殊的全嵌套方式 OUT DX,AL MOV AX,0 ; 清零 MOV DS,AX ; 数据段清零 LEA AX,INT0 ; 写

17、8259中断程序的入口地址 MOV DS:4*8,AX ; 把中断服务程序的入口地址偏移量送中断矢量表 MOV AX,CS MOV DS:4*8+2,AX; 把中断服务程序的入口地址段地址送中断矢量表 IN AL,DX ; 读中断屏蔽寄存器IMR, AND AL,0FEH ; 屏蔽IR1IR7,允许IR0中的中断请求 OUT DX,AL MOV DX,203H ; 8255初始化 MOV AL,80H ;PA口输出,方式0 OUT DX,ALLOOP1:MOV DX,200H ; 8255的PA口地址 MOV AL,0F3H ; A道绿灯放行,B道红灯禁止 OUT DX,AL MOV CX,9

18、0 ;置0.5秒循环次数(0.590=45S) DIP1: CALL DELAY ;调用0.5秒延时子程序 LOOP DIP1 ;45秒不到继续循环MOV AL,0F7H ;A绿灯熄 OUT DX,AL CALL DELAY MOV AL,0F3H ;A绿灯亮OUT DX,AL CALL DELAYMOV AL,0F7H ;A绿灯熄 OUT DX,AL CALL DELAY MOV AL,0F3H ;A绿灯亮OUT DX,AL CALL DELAYMOV AL,0F7H ;A绿灯熄 OUT DX,AL CALL DELAY MOV AL,0F3H ;A绿灯亮OUT DX,AL CALL DEL

19、AY MOV AL,0F5H ;A黄灯警告,B红灯禁止 OUT DX,AL MOV CX,04H ;置0.5秒循环次数(0.54=2S)YL1: CALL DELAY LOOP YL1 ;2秒未到继续循环 MOV AL,0DEH ;A红灯,B绿灯OUT DX,AL MOV CX,32H ;置0.5秒循环次数(0.550=25S)DIP2: CALL DELAY LOOP DIP2 ;25秒未到继续循环MOV AL,0FEH ;B绿灯熄 OUT DX,AL CALL DELAY MOV AL,0DEH ;B绿灯亮OUT DX,AL CALL DELAYMOV AL,0FEH ;B绿灯熄 OUT

20、DX,AL CALL DELAY MOV AL,0DEH ;B绿灯亮OUT DX,AL CALL DELAYMOV AL,0FEH ;B绿灯熄 OUT DX,AL CALL DELAY MOV AL,0DEH ;B绿灯亮OUT DX,AL CALL DELAYMOVAL,#0EEH ;A红灯,B黄灯OUT DX,AL MOVCX,04H ;置0.5秒循环次数(0.54=2S)YL2: CALL DELAY LOOP YL2STI ; 开中断JMP LOOP1 ;循环执行主程序 INT0 PROC NEAR ; 8259中断程序 PUSH CX PUSH AX PUSH BX MOV AL,0F

21、6H ;A、B道均为红灯 OUT DX,AL MOV CX,40 ;置0.5秒循环初值(20S) DEY0: CALL DELAY LOOP DEY0 ;20秒未到继续循环 POP BX ;弹栈恢复现场 POP AX POP CX BG2:MOV DX,210H MOV AL,20H ; OCW2发结束命令EOI=1 OUT DX,AL IRET INT0 ENDP DELAY PROC NEAR ; 延时子程序 PUSH CX ;保护现场 PUSH BXDEL500MS:MOV BH,5DEL100MS:MOV BL,100DEL1MS:MOV CX,374DEL1: PUSHF POPF

22、LOOP DEL1 DEC BL JNZ DEL1MS DEC BH JNZ DEL100MS POP BX POP CX RETDELAY ENDP CODE ENDS END START 14.3课程设计课程设计14.3.1音乐发生器音乐发生器1设计目的设计目的掌握使用定时器/计数器产生音乐信号的基本方法和音乐程序的设计方法;掌握定时/计数器的使用方法。2内容及要求内容及要求(1)利用实验箱上的8253作音乐信号发生器。(2)编制一个音乐程序,最少能提供两个歌曲的选择。3报告内容报告内容 (1)项目概述 (2)设计要求 (3)系统设计 (4)硬件设计 电路图(含必要的原理介绍) 元件清单(

23、5)软件设计 程序流程图 程序清单(含必要注释) (6)收获 (7)参考文献14.3.2 简易数码管移位显示器简易数码管移位显示器1设计目的设计目的利用微机的总线设计一个简易移位型数码管显示器;掌握数码管的显示原理及应用方法;掌握显示程序的设计。2内容及要求内容及要求(1)用七段LED在微机外设计一个4位移位型的显示器,能够显示年、月、日、时间。(2)显示驱动电路自行设计。3报告内容报告内容(1)项目概述(2)设计要求(3)系统设计(4)硬件设计 电路图(含必要的原理介绍) 元件清单(5)软件设计 程序流程图 程序清单(含必要注释) (6)收获(7)参考文献14.3.3 串行通信设计串行通信设

24、计1设计目的设计目的掌握串行通信的基本方法和通信程序设计方法;掌握8251芯片的编程方法;熟悉RS232C总线的使用及接线。2内容及要求内容及要求(1)利用PC机上RS232C串行口通信功能,选用实验箱上的8251芯片与主机组成自发自收系统,接受/发送时钟PCLK可由实验台上4MHZ分频后产生。(2)要求主机键盘上键入的字将在屏幕上显示出来。即同时通过8251发送,然后再由8251接收送主机屏幕显示出来。(3)编写数据的发送和接收程序(也可使接收回来的数比发送的数据大1),传送数据采用程序查询方式。3报告内容报告内容(1)项目概述(2)设计要求(3)系统设计(4)硬件设计 电路图(含必要的原理

25、介绍) 元件清单(5)软件设计 程序流程图 程序清单(含必要注释) (6)收获(7)参考文献14.3.4 数字密码锁数字密码锁1设计目的设计目的掌握键盘的工作原理及键盘程序的设计方法;熟悉PC总线的使用。2内容及要求内容及要求(1)设计一个数字式密码锁,由09十个数字键、开锁键及密码设置键构成(利用实验箱上的小键盘)。(2)设计编写控制程序,程序的功能要求如下:按下4位数字,再按下开锁键,若按下的4位数字与密码相符,锁自动打开(用一个绿色发光二级管点亮模拟),若按下的数字键与密码不符则认为出错,三次出错则发出报警信号启动蜂鸣器报警,并退出系统返回DOS。若想重设密码,先开锁,再按密码重设键,然

26、后输入新的4位密码,以后按新密码开锁。(3)选用8255A作小键盘及发光二极管接口,设计并实现8255A与PC机总线及键盘、发光二极管的连接。3报告内容报告内容(1)项目概述(2)设计要求(3)系统设计(4)硬件设计 电路图(含必要的原理介绍) 元件清单(5)软件设计 程序流程图 程序清单(含必要注释) (6)收获(7)参考文献14.3.5 D/A转换器设计转换器设计1设计目的设计目的了解D/A转换原理及转换程序的设计方法;掌握DAC0832芯片的编程方法及接线。2内容及要求内容及要求(1)利用DAC 0832组成一个波形发生器。(2)编写转换器程序实现以下功能。按主机键盘A产生一个锯齿波;按

27、主机键盘B产生一个三角波;按主机键盘C产生一个矩形波(使低电平宽度为高电平的4倍);按主机键盘E停止转换,等待输入;按主机键盘Q退出,返回DOS。3报告内容报告内容(1)项目概述(2)设计要求(3)系统设计(4)硬件设计 电路图(含必要的原理介绍) 元件清单(5)软件设计 程序流程图 程序清单(含必要注释) (6)收获(7)参考文献14.3.6 步进电机控制步进电机控制1、设计目的掌握步进电机控制系统的设计方法,了解步进电机的工作原理和控制程序的设计方法。2、内容及要求(1)用微机作为脉冲发生器,用8255A作脉冲分配器,B口的PB7PB5输出分别控制步进电机的A、B、C三相绕组;用两个开关设

28、置步进电机的脉冲分配方式(有单三拍、双三拍、六拍三种),再用另一个开关设置步进电机的转动方向(有正转和反转两种)。(2)编写控制步进电机能按所选择的分配方式及方向运转的程序。(3)若没有步进电机,也可用发光二级管模拟步进电机的运转(用三个发光二极管分别模拟A、B、C三绕组,灯亮,表示该灯代表的绕组通电)。3报告内容报告内容(1)项目概述(2)设计要求(3)系统设计(4)硬件设计 电路图(含必要的原理介绍) 元件清单(5)软件设计 程序流程图 程序清单(含必要注释) (6)收获(7)参考文献14.3.7 模拟交通灯控制模拟交通灯控制1、设计目的掌握8255芯片的编程方法及接线;掌握8259芯片的

29、编程方法及接线。2、内容及要求设A车道与B车道交叉组成十字路口,A是主道,B是支道,直接对车辆进行交通管理,设计要求如下所示。 用发光二极管模拟交通信号灯。正常情况下,A、B两车道轮流放行,A车道放行40s,其中5s用于警告;B车道放行20s,其中5s用于警告。 有紧急车辆通过时,按下K1(用单脉冲按钮UP代替)开关使A、B车道均为红灯,禁行15s,紧急情况解除后,恢复正常控制。3报告内容报告内容(1)项目概述(2)设计要求(3)系统设计(4)硬件设计 电路图(含必要的原理介绍) 元件清单(5)软件设计 程序流程图 程序清单(含必要注释) (6)收获(7)参考文献14.3.8 电子时钟电子时钟1设计目的设计目的进一步掌握8253定时器的使用和编程方法;进一步掌握8259中断处理程序的编程方法;进一步掌握数码显示电路的驱动方法。2内容及要求内容及要求利用实验箱的8253定时器和提供的数码显示电路,设计一个电子时钟。格式如下:XX XX XX 由左向右分别为:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论