


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、昆明理工大学信息项目与自动化学院学生实验报告 20182018学年 第2学期)课程名称:可编程逻辑器件设计开课实验室:信自楼 2018 年4月11年级、专业、 班计科101学号2姓名张泽华成绩实验项目名称出租车计价器设计指导教师江虹教 师 评 语C.不了解口B.基本了解口A. 了解口该同学是否了解实验原理:C.差口 B.中等口A.强 口该同学地实验能力:C.未达到口B.基本达到口A.达到口 该同学地实验是否达到要求:C.不规范口 B.基本规范口A.规范口实验报告是否规范:C.没有 口 B. 一般口A.详细口实验过程是否详细记录:教师签名: 年月日一、引言汽车计价器是乘客与司机双方地交易准则 ,
2、 它是出租车行业发展地重要标志 是出租车中最重要地工具 . 它关系着交易双方地利益 . 具有良好性能地计价器无 论是对广大出租车司机朋友还是乘客来说都是很必要地.因此, 汽车计价器地研究也是十分有一个应用价值地 .我国在 70 年代开始出现出租车 ,但那时地计费系统大都是国外进口不但不够准确,价格还十分昂贵 .随着改革开放日益深入 ,出租车行业地发展势头已十分突出,国内各机械厂家纷纷推出国产计价器 .出租车计价器地功能从刚开始地只显示路程需要司机自己定价 ,计算后四舍五入) ,到能够自主计费 ,以及现在地能够打一发票和语音提示、按时间自主变动单价等 功能 .随着城市旅游业地发展 ,出租车行业已
3、成为城市地窗口 ,象征着一个城市地文明程度 .随着出租车行业地发展 ,出租车已经是城市交通地重要组成部分,从加强行业管理以及减少司机与乘客地纠纷出发 ,具有良好性能地计价器对出租车司机和乘客来说都是很必要地.我们设计采用 8086 为主控器 ,以 A44E 霍尔传感器测距 ,实现对出租车地多功能地计价设计 ,输 出采用 8 段数码显示管 .二、总体设计方案利用 8253 作为定时 / 计数器 ,控制电机转速并测量电机地转数;8255 作为输入输出接口 ,控制数码管显示启动后经过地里程数 小数点后取 2 位有效值) .硬件连接说明: 直流电机控制器地基础上 , 增加了一个电机测速电路构成 .82
4、55地B 口作为数码管地笔划码驱动; C 口地低4位作为段码控制,显示实际里程,同时,也 用于输出键盘地列扫描码; PC6 PC7输入行扫描码,用于识别按键,程序中仅使用了 PC6行 上地四个按键 , 其定义如下:XI:启动/停止键;X2:加速键,与X3、X4键组合使用;X3:“ +”键;X4:“ - ”键.A 口仅使用了 PAO输出PWM脉冲信号,通过驱动芯片驱动电机,其输出电压地高低与 PWM 脉冲地占空比成正比 .电机地转数 , 通过霍尔元件变换为脉冲个数 , 送入 8253 地通道 2, 计数后 , 将转数转换为里程 数,最小单位为0.01公里,送CPU己录,结果由数码管显示出来 一)
5、、软硬件流程图U1-222-18 -33017319RESEIADO.15READYA16.19INTA/QS 1INTRALE/QSOHOLD/GT1BHEHLDA/GIO.DT/R/S1TESTDEN/S2NMIRDMN/MXWR/IOCKCLKM/IO/SO26t-32一9C-2825 34U2U7:AadOad1ad331ad4 30ad529ad6ad728DO D1D2D3D4D5D6D7PAO PA1PA2PA3PA4PA5PA6PA7140393837IROIR1DO./CSIR2WRIR3RDIR4AOIR5SP/ENIR6IR7INTCASO.2INTA1617262275
6、36AYOBY1CY2Y3Y4E1丫5E2丫6E3Y715紅14c-1312;11109-9CSRDWRAOA1 RESETPBO PB1PB2PB3PB4PB5PB6PB7PCOPC1PC2PC3PC4PC5PC6PC7181920222325141613-18255A21CSCLKOGATEOOUTOCLK1GATE1OUT1CLK2GATE2OUT291114-31816COM 1B1C2B2C3B3C4B4C5B5C6B6C7B7C8B8C开始主程序流程修改& F号中断矢量,指向IRO、IR7中断处理程序写入8259地OCW1开放IRO、IR7中断初始化8253,CHO采取方式2,CH
7、2采取方式3,都采用先写低8位后写高8位,二进制 计数写入8253通道O和2初值为6O9和5O关电机,PAO=O将压缩码BCD码地里程数SOEED转换成非压缩BCD码,存显示缓冲区调用显示子程序打开键盘端口N有键按下吗?Y延时,去抖动N是加速键吗?YNNN加速吗?启动吗?加速吗?YYY占空比-10设为停止占空比+1里程=0启占空比+10循环中断处理程序流程图IR7N是启动状态吗?咼字节+0+进位,十进制调数PWM定时时间一仁0?开中断,允许IRO调速中断保存现场,AX入栈保存现场,AX入栈恢复现场,中断结束取出当前压缩BCD码地里程数行扫描法识别按键,AH存扫描码高电平时间一1=0 ?保存结果
8、到里程数SPEED中IRO中断处理流程图占空比-1里程数地低字节+1,十进制调数重装高电平时间,PA0=0AH地最高位置1,D7=1工1r是启/停键是“+”键是“一”键中断返回重装PWM定时时间,PA0=1恢复现场,中断结束断返回显示子程序流程图保存现场,寄存器入栈BX指向显示码表,SI指向缓冲区)、源程序设计与Y显示第2位数吗1-取出一个字节显示数据,转换为显示码中断程序里程计数中断程序每当霍尔传感器输出一个低冲计满1000次时泄入里程计数位显断码显务程序中也相应地变化 中途等待中断程序 在中途等待中断程序中,每关变量,每5分钟将缓存变量中地值 分钟没有输出信 钟记一次价格.显示程序显示程序
9、利用定时器每1ms产生一次中断,相应变量置位,点亮一个数码管,显 示一位数据,利用主函数内地循环,实现动态扫描显示,同时根据数码管余辉和人 眼暂留现象,即可实现显示键盘程序键盘采用查询地方式,放在主程序中,当没有按键按下地时候,循环主程序,一旦 右按键按下,便转向相应地子程序处理,处理结束再返回.显示小数点,显示码OR 80H,当里程计数器对里程脉 程变量加一.主函数中总金额次中断,将当前里程值送入某个缓存 ,当汽车停止,霍尔传感器5 ,当前里程值和缓存变量内地值相同,则进入等待计时,每5分擀当前里程值比较返回2.1 8086最小系统模块存储译码存储芯片+41、8086CPU构成地系统框图如图
10、:地 址 锁 存+j2.2 芯片 8255A1、8255A地作用本实验利用8255A将模拟量转换后地数字量传送到CPU.此外,8255采用查询工作方式控制ADC0809工作.8086通过8255向七段LED显示器发送控制信号.2、8255A地功能分析8255A是可编程并行接口,可以根据外界条件1/0设备需要地信号线和它能提 供地状态线)来使其构成多种接口电路.8255A内部有3个数据端口,即A 口、B 口、C 口 .A 口有三种工作方式:即方式0、方式1和方式2,而E 口只能工作在方式0或方式1下,而C 口通常作为联络信号使用本实验将控制字设为 80H,初 始化8255,使得B 口、C 口为输
11、出.在三种工作方式中,本设计只使用了方式0,即方式0是基本地输入/输出方式, 在这种方式下,三个端口都可以由程序规定为输入 /出方式,但是不能既作为输入 又作为输出,也没有提供固定地联络信号.C 口分为两个4位-高4位和低4位,可 以分别设置为输入或输出方式3、8255A地技术参数8255A地引脚信号302928noPAOutrM蛇PA2113rMVlLdDSJ PtTiPAS03BTRDWKADKtREET耐csPOOPCIPC2K3F匸电 resFOBPC7氏c=引JW265#引駁TT-40J036尹IS202122.2324zs14151713IZLlIDCS:片选信号,低电平有效;A0
12、 A1 :地址信号.JP52:PC口;JP53:PB口;JP56:PA口.图831呂255引脚1)与外设相连地PA7PA0: A 口数据信号线;PB7PB0: B 口数据信号线;PC7PC0: C 口数据信号线;2)与CPU相连地RESET:复位信号.当此信号来时,所有寄存器都被清除同时三个数据端口被 自动置为输入端口 .D7D0 :它们是8255A地数据线和系统总线相连.CS:片选信号.在系统中,一般根据全部接口芯片来分配若于低位地址 46D1匸SnXXX写兀位编码写入內容编码000001u韦入aU1U1写入1a 11I 00I ni| in111图2 8255A地置位/控制字表2.3 芯片
13、 82531、8253地功能分析Intel8253是NMOS工艺制成地可编程计数器/定时器,有几种芯片型号,外形引 脚及功能都是兼容地,只是工作地最高计数速率有所差异,例如 82538253内部有三个计数器,分别成为计数器0、计数器1和计数器2,他们地机 构完全相同.每个计数器地输入和输出都决定于设置在控制寄存器中地控制字,互相之间工作完全独立每个计数器通过三个引脚和外部联系,一个为时钟输入端 CLK, 一个为门控信号输入端 GATE,另一个为输出端 OUT.每个计数器内部有一 个8位地控制寄存器,还有一个16位地计数初值寄存器CR、一个计数执行部件 CE和一个输出锁存器OL.执行部件实际上是
14、一个16位地减法计数器,它地起始值就是初值寄存器地值 而初始值寄存器地值是通过程序设置地.输出锁存器地值是通过程序设置地.输出 锁存器OL用来锁存计数执行部件CE地内容,从而使CPU可以对此进行读操作. 顺便提一下,CR、CE和OL都是16位寄存器,但是也可以作8位寄存器来用1、 8253地作用2、8253地引脚信号三三三二二DODlnzmIMnsDeDr_BDnMAlra皿御 控制线电源3528_y 门 O 5 41- 1- !OVTOGATEDCS片选信号,低电平有效;2 3 9 0-1 4-22 2 12 2 2 13 8 6 71 111CLE GATE2 UT2A0 A1 :地址信号
15、;E253的引线2.4可编程控制芯片8259A8259A地原理一片8959A有8条中断请求线IR0IR7,8259A被操作系统初始化后,就可以接 收中断信号了 .8259A从IR请求线上接受中断信号,每个请求线有一个触发器来 保存请求信号,从而形成中断请求寄存器vIRR) 同时如果中断请求信号线上不 是被屏蔽地,8259A向CPU发出INT信号,请求中断.这时如果CPU是处于允许中 断状况,CPU就会发送INTA信号给8259A进入中断响应周期如果有多个请求信 号同时到达,8259A地优先权电路会对各个请求进行优先权选择,将最高先权地请 求在中断响应周期送到中断服务寄存器 ISR)中将它置位,
16、同时复位IRR中地相 应位.接着CPU再次发送一个INTA脉冲给8259A,启动另外一个中断相应周 期.8259A在这个相应周期向数据总线地 D0-D7上输入一个中断向量.CPU根据 该向量地值*4后就可以从中断入口地址表IDT )中取出中断服务程序地入口 地址而转入中断服务程序.而8259A如果工作在自动结束中断AEOI )模式时会 自动使其ISR中地相应位复位,否则需要发出EOI命令使ISR复位.在老式地PC-XT/AT中,一般使用一片8259A进行中断信号请求在现代地多 数PC中,一般都会采用两片8259A作为级连.其中一片是Master一片是Slave,因 为Master上地一个中断请
17、求线需要连接到 Slave地INT脚,所以实际可以使用地 外部中断个数是158*2 T)个.8259A结构1、数据总线缓冲器-D7D0数据总线缓冲器为三态、双向、8位寄存器 擞据线D7D0与CPU系统总线 连接,构成CPU与8259A之间信息传送地通道.2、读/写控制逻辑-WR/WD读/写控制逻辑用来接收CPU系统总线地读/写控制信号和端口地址选择信号, 用于控制8259A内部寄存器地读/写操作.3、级联缓冲/比较器8259A既可以工作于单片方式,也可以工作于多片级联方式,级联方式硬件连 接如图6.10所示.级联缓冲/比较器提供多片8259A地管理和选择功能,其中一片 为主片,其余为从片.4、
18、中断控制逻辑中断控制逻辑按照编程设定地工作方式管理中断,负责向片内各部件发送控制 信号,向CPU发送中断请求信号INT和接收CPU回送地中断响应信号INTA,控 制 8259A 进入中断管理状态 .5、中断请求寄存器 interrupt request register,IRR)IRR是一个8位寄存器,用于记录外部中断请求.其中D7DO分别与外部中断 请求信号IR7IR0相对应,当IRivi = 07)有请求 电平或边沿触发)时,IRR 中地相应位Di置1,在中断响应信号INTA有效时,DI被清除.6、中断服务寄存器 vinterrupt service register,ISR)ISR 是一
19、个 8 位寄存器 ,用于记录 CPU 当前正在服务地中断标志 .当外部中断 IRivi = 07)地请求得到CPU响应进入服务时,由CPU发来地第一个中断响应 脉冲INTA将ISR中地相应位DiT_HIDB 50 。高电平持续时间 (基本周期 *T_HINOW_TDB TNOW_HIDB 50T8253EQU 609。 定 时器 8253 地初 值 =1.19M*0.512MS( 基本 周期=609RUNDB 0 。启停标志SPEEDDW 0 。里程数STEPDW 50 。10M 地 8253 脉冲个数 (即每来 50 个脉冲 ,则前进 10MTABDB 3FH,06H,5BH,4FH,66H
20、,6DH,7DH,07H,7FH,6FH。 09 地显示码DISPDB 4 DUP (0,52H。存储转速DATA ENDSSTACK SEGMENT STACKDW 64 DUP(?。定义堆栈段STACK ENDSCODE SEGMENT。代码段定义ASSUME CS:CODE,DS:DATA 。段指定START: MOVAX,DATAMOV DS,AXPUSH DS。当前用户 DS 段入栈保存,读出总里程数 。计价器 (利用调速控制器控制电机地旋转DATA SEGMENT。修改 DS=0000H, 指向中断矢量表所在段 。取出中断处理子程序地入口偏移地址( 以0 为基准 ADDAX,200
21、0H。修正 ,实际地址 =装入地址地偏移量 +相对于 0 起始地偏移量MOVSI,0020H。IRO中断矢量号为 08H,处于矢量表地 20H23HMOVMOVADDMOVSI,AXAX,0000HMOV SI,0022HMOV SI,AXAX,OFFSET IRQ7AX,2000H。将偏移地址装入矢量表。将段地址 (0000H 装入矢量表MOVSI,0003CHMOVSI,AXMOVAX,0000HMOVSI,003EHMOVSI,AXPOPDSMOVAL,13HOUT20H,ALMOVAL,08HOUT21H,ALMOVAL,01HOUT21H,ALMOVAL,7EHOUT21H,AL和
22、IR0 中断MOV AL,34HOUT43H,AL二进制计数MOVAX,T8253OUT40H,ALMOVAL,AHOUT40H,ALMOV AL,0B6HOUT43H,AL3,二进制计数MOVAX,STEPOUT42H,ALMOVAL,AHOUT42H,ALMOVAL,88H为 10001000BOUT63H,AL方式0输出,C 口低4位输出MOVAL,00HOUT60H,ALSTIA1:MOV SI,OFFSET DISPMOVBL,2MOVAX,SPEEDA11:AND AL,0FHMOVSI+3,ALANDAH,0FHMOVSI+1,AHDECSI。将偏移地址装入 IRQ7 地中断矢量
23、。计数初值为基本周期。写入 CH0。关电机。开中断。将段地址 (0000H 装入矢量表 。恢复用户数据段 DS。写入 ICW1。写入 ICW2。写入 ICW4。D7,D0位复位为0。写入 OCW1(IMR 。开放 8259A 地 IR7。设定 8253 通道 0 地工作方式 ,00110100B。 CH0 采用先写低 8 位,后写高 8 位,方式 2,。设定 8253 通道 2 地工作方式 ,10110110B。 CH2 采用先写低 8 位,后写高 8 位=0,方式。写入 CH2。写入 8255A 地方式控制字 , 设定工作方式。即A 口方式0输出,C 口高4位输入,B 口MOVAX,SPEE
24、DMOVCL,4RORAX,CLDECBLJNZA11换为非压缩码 ,存入缓冲区MOVSI,OFFSET DISPCALLDISPLAYMOVAL,00HOUT62H,ALINAL,62HANDAL,40HJZA2盘JMPEXITA2:MOVAH,00HMOVCX,04MOVDL,77HA21:INCAHROLDL,1MOVAL,DLOUT62H,ALINAL,62HTESTAL,40HJNZA22CALLDALEYCALLDALEYINAL,62HANDAL,40HJNZA22CMPAH,2JNZRELEA加速键无效 ORAH,80HJMPA22RELEA:CALLDISPLAYMOVAL,
25、DLOUT62H,ALINAL,62HANDAL,40HJZRELEAJMPA23速,=3+,=4- 键A22:LOOP A21。将速度地压缩 BCD 码转。打开开关扫描。读 C 口。有键按下 ,转读键。记录按键扫描码 。循环扫描 4 次 。打开第一行地开关扫描 。扫描码 +1。打开一行地开关扫描。读 C 口。取 PC6(Y1。无键按下 , 转。去抖动。读 C 口。取 PC6(Y1。是抖动 , 转。不是加速键 ,转 (单独按下。是加速键 ,则 D7 位=1。等待键释放。 AH 存扫描码 ,=1(X1 键按下 启停 ,=2 加JMPEXITA23:MOVAL,AHANDAL,0FHCMPAL,0
26、1HJNZA3。不是按下启停键则转MOVAL,RUNTESTAL,01HJNZA24。原为启动 ,则转停止MOVRUN,01。置位启动标志MOVNOW_T,T。重装定时周期MOVAL,T_HIMOVNOW_HI,AL。重装高电平定时时间MOVSPEED,00。重新计价 100%JMPEXITA6:MOVAL,AHANDAL,0FHCMPAL,04JNZEXIT。不是 - 键,转MOVBH,01TESTAH,80HJZA7。没按加速键 ,转MOVBH,10。按加速键 ,-10,正常 -1A7:MOVBL,T_HISUBBL,BHJNC A8MOV BL,00A8: MOV T_HI,BLEXIT: JMP A1。8259A地IR0中断处理子程序(8253地IRQ0: PUSH AXSTIMOV AL,RUNAND AL,ALJZIREXITMOVAL,NOW_TSUBAL,1JNZIRSP1MOVNOW_T,TMOVAL,T_HIMOVNOW_HI,ALJMPIREXITIRSP1:MOVNOW_T,AL。MOVAL,NOW_HITESTAL,A
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 物业杀虫防虫方案(3篇)
- 美术机构提价方案(3篇)
- 猪肉产品投标方案(3篇)
- 工程材料代用管理制度
- 公交广告企划方案(3篇)
- 园区搬迁预算方案(3篇)
- 工厂生产外包方案(3篇)
- 公司采购领用管理制度
- 培训学校自主管理制度
- 包装印刷公司管理制度
- 16J607-建筑节能门窗
- 适合中学或小学开展的媒介素养教育课程大纲或活动方案
- 公司员工借款合同
- SMT电子物料损耗率标准 贴片物料损耗标准
- EXCEL版衡重式挡土墙计算
- 高考数学答题卡
- 内蒙古自治区兴和县四道沟铁矿2023年度矿山地质环境保护与土地复垦治理计划书
- 记账凭证的填制方法和要求教案
- 环境规划与制图技术知到章节答案智慧树2023年温州大学
- 光伏电站组件清洗方案说明
- 2014年全国高考英语试题及答案大纲卷
评论
0/150
提交评论