




已阅读5页,还剩49页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
微机原理与接口技术接口技术实验 一 实验目的 1 掌握8253A与微机的接口和编程方法2 掌握8255A与微机的接口和编程方法二 实验要求 正确连接硬件线路 掌握编程方法 三 实验仪器设备 微机1台 TPC USB实验箱 TTC 2实验系统 USB 构成 该系统由一块USB总线接口模块 一个扩展实验台及软件集成实验环境组成 USB总线模块通过USB总线电缆与PC机相连 模块与实验台之间由一条50芯扁平电缆连接 安装步骤如下 1 关上实验台电源 2 50线扁平电缆一端接USB模块的50芯插座 另一端接实验台50线插座 3 USB电缆的一端接模块的USB口 另一端接主机USB口 4 打开实验台电源 5 系统将自行检测到模块的接入 微机 TPC 2 USB 集成开发环境软件包 实验项目的查看和演示 实验三可编程定时器 计数器 1 8253 一 实验目的掌握8253的基本工作原理和编程方法 二 实验内容 1 按图3 1虚线连接电路 2 将计数器0设置为方式0 计数器初值为N N 0FH 3 用手动逐个输入单脉冲 编程使计数值在屏幕上显示 并同时用逻辑笔观察OUT0电平变化 当输入N 1个脉冲后OUT0变高电平 三 编程提示8253控制寄存器地址283H计数器0地址280H计数器1地址281HCLK0连接时钟1MHZ 8253方式0计数器实验 io8253aequ283hio8253bequ280hcodesegmentassumecs codestart moval 14h 设置8253通道0为工作方式2 二进制计数movdx io8253aoutdx almovdx io8253b 送计数初值为0FHmoval 0fhoutdx al lll inal dx 读计数初值calldisp 调显示子程序pushdxmovah 06hmovdl 0ffhint21hpopdxjzlllmovah 4chint21h 退出 dispprocnear 显示子程序pushdxandal 0fh 首先取低四位movdl alcmpdl 9 判断是否 9jlenum 若是则为 0 9 ASCII码加30Hadddl 7 否则为 A F ASCII码加37Hnum adddl 30hmovah 02h 显示int21hmovdl 0dh 加回车符int21hmovdl 0ah 加换行符int21hpopdxret 子程序返回dispendpcodeendsendstart 实验三可编程定时器 计数器 2 8253 二 实验内容按图3 2连接电路 将计数器0 计数器1分别设置为方式3 计数初值设为1000 用逻辑笔观察OUT1输出电平的变化 频率1HZ 三 编程提示1 8253控制寄存器地址283H计数器0地址280H计数器1地址281HCLK0连接时钟1MHZ 8253分频 io8253aequ280hio8253bequ281hio8253cequ283hcodesegmentassumecs codestart movdx io8253c 向8253写控制字moval 36h 使0通道为工作方式3outdx almovax 1000 写入循环计数初值1000movdx io8253aoutdx al 先写入低字节moval ahoutdx al 后写入高字节 movdx io8253cmoval 76h 设8253通道1工作方式2outdx almovax 1000 写入循环计数初值1000movdx io8253boutdx al 先写低字节moval ahoutdx al 后写高字节movah 4ch 程序退出int21hcodeendsendstart 实验三可编程定时器 计数器 8253 选作 一 实验目的掌握8253的基本工作原理和编程方法 用示波器观察不同方式下的波形 二 实验原理和内容1 按图3 3连接电路 将计数器0设置为方式3 方波 计数器设置为方式2 分频 2 实现计数器0的输出为方波 计数器1的输出是计数器0输出的分频波形 3 人机交互界面设计 实现在显示屏幕上提示输入计数器0 方波 的参数和计数器1 分频信号 的参数 如下所示 counter0 counter1 continue y n 4 实现用键盘直接输入修改程序中方波的参数和分频信号的参数 以改变方波的宽度 分频信号的周期和分频数 不需重新修改源代码 5 用示波器观察计数器0和计数器1的输出波形及其关系 并在纸上画出CLK0 OUT0 OUT1的波形 8253program datasegmentmesg0db13 10 8253progam 13 10 mesg1db13 10 counter0 mesg2db13 10 counter1 mesg3db13 10 continue y n mesg4db13 10 13 10 ThankYou 13 10 errormdb13 10 InputError counter0dw0counter1dw0dataendscodesegmentassumecs code ds datamainprocfarstart movdx segdatamovds dxmovdx offsetmesg0movah 09hint21h do subbx bxsubax axmovcounter0 0movcounter1 0 initl1 movdx offsetmesg1movah 09hint21hrd1 readcounter0movah 01 readacharint21hcmpal 13 ifenterjefdone1jmptdone1fdone1 jmpdone1tdone1 cmpal 10jefdone1cmpal 0 ifinput9errorjberrorcmpal 9 jaerrorpushaxmovax 10mulcounter0movcounter0 ax counter0 counter0 10 popaxsubbx bxmovbl alsubbl 30haddcounter0 bx counter0 counter0 inputjmprd1error movdx offseterrormmovah 09hint21hmovdl 7movah 2int21hjmpdone3tr forjmpdomovdl almovah 02hint21hmovdl 10int21hmovdl 13int21hjmpdol2 movdx offsetmesg2movah 09hint21h rd2 readcounter1movah 01int21hcmpal 13 ifenterjefdone2cmpal 10jefdone2jmptdone2fdone2 jmpdone2tdone2 cmpal 10jefdone2cmpal 0 jberrorcmpal 9 jaerrorpushaxmovax 10mulcounter1movcounter1 ax counter1 counter1 10popaxsubbx bxmovbl alsubbl 30h bh 0addcounter1 bx counter1 counter1 inputjmprd2 done1 jmpl2done2 jmpout8253 afterentertwocounters set8253anddoitdone3 movdx offsetmesg3movah 09hint21hl3 movah 07hint21hcmpal Y jetrcmpal y jetrcmpal N jequitcmpal n jequitmovdl 7movah 02hint21hjmpl3out8253 workcodemoval 00110110bmovdx 283houtdx almovax counter0 movdx 280houtdx almoval ahoutdx almoval 01110100bmovdx 283houtdx almovax counter1movdx 281houtdx almoval ahoutdx almovcx 2801delay loopdelayjmpdone3quit returntoDOSmovdx offsetmesg4movah 9int21hmovax 4c00hint21hmainendpcodeendsendstart 实验四可编程并行接口 一 8255方式0 一 实验目的掌握8255方式0的工作原理及使用方法 二 实验内容 实验电路如图4 1 C口接逻辑电平开关K0 K7 A口接LED显示电路L0 L7 编程从8255C口输入数据 再从A口输出 三 编程提示1 8255控制寄存器地址28BHA口的地址288HC口的地址28AH io8255aequ288hio8255bequ28bhio8255cequ28ahcodesegmentassumecs codestart movdx io8255b 设8255为C口输入 A口输出moval 8bhoutdx alinout movdx io8255c 从C口输入一数据inal dxmovdx io8255a 从A口输出刚才自C口outdx al 所输入的数据movdl 0ffh 判断是否有按键movah 06hint21hjzinout 若无 则继续自C口输入 A口输出movah 4ch 否则返回int21hcodeendsendstart 实验四可编程并行接口 二 8255方式0 选作 一 实验目的1 通过实验 掌握8255工作方式0以及设置A口为输出口 C口为输入口的方法 2 掌握8255三个数据端口与被测IC芯片的硬件连接方法 3 通过实验掌握用8255并行口模拟集成电路测试仪 对集成电路进行逻辑测试的方法 二 实验内容1 按图4 2连接硬件电路 以测试3 8译码器74LS138为例 2 人机交互界面设计 按照集成电路74LS138芯片的引脚图显示在屏幕上 如下所示 Y0Y1Y2Y3Y4Y5Y6Y7 74LS138 ABCG1G2A G2B TestAgain Y N 三 编程提示8255控制寄存器端口地址28BHA口的地址288HC口的地址28AH datasegmentchipdb13 10db13 10db Programtotestthechipof74LS138 13 10db13 10db13 10db 13 10db Y0Y1Y2Y3Y4Y5Y6Y7 13 10db 13 10db 74LS138 13 10db 13 10db ABCG1G2A G2B 13 10db 13 10 messdb Afteryouhaveready Pleasepressanykey mes2db TestAgain Y N InAdb0OutCdb0clldb dataends codesegmentassumecs code ds datastart movax datamovds axagain callclscallInputB OutputCTRLcode write to28Bhmovdx 28bhmoval 10001011boutdx al OutputInto288hmovdx 288hmoval InAoutdx alcallOutputCjmp1 movah 2movdh 15movdl 20int10hmovah 09leadx mes2int21hmovah 1int21hcmpal y jeagaincmpal n jeexitmovah 2movdh 15movdl 0int10hleadx cllmovah 9int21hjmpjmp1exit movah 4chint21h InputBprocnearmovah 2movbh 0movdx 0int10hmovah 09leadx chipint21hmovah 2movbh 0movdh 15movdl 10int10hmovah 09h leadx messint21hmovah 0chmoval 08hint21hwait1 movah 0Bhint21hcmpal 0jnewait1movah 2movbh 0movdh 15movdl 10int10hleadx cllmovah 9int21hmovdh 12movdl 18jmp3 pushdxmovah 2movbh 0int10hjmp4 movah 7int21hcmpal 1 jnejmp2movah 2 xchgal dlint21hmovcl 1movbl InAsalbl claddbl 1movInA bljmpjmp5jmp2 cmpal 0 jnejmp4movah 2xchgal dlint21hmovcl 1movbl InAsalbl clmovInA bljmp5 popdxadddl 5cmpdl 43jbjmp3movcl 3movbl InAsalbl clmovInA blretInputBendp clsprocnearmovah 6moval 0movch 0movcl 0movdh 24movdl 79movbh 7int10hretclsendp OutputCprocnearmovdx 28ahinal dxmovOutC almovdh 4movdl 16j pushdxmovah 2movbh 0int10hmoval OutC movbl 01handbl almovcl 1shral clmovOutC aladdbl 30hxchgbl dlmovah 2int21hpopdxadddl 4cmpdl 46jbjretOutputCendp codeendsendstart 实验五七段数码管 一 一 实验目的掌握数码管显示数字的原理二 实验内容 静态显示 按图5 1连接好电路 将8255的A口PA0 PA6分别与七段数码管的段码驱动输入端a 相连 位码驱动输入端S1接 5V 选中 S0 dp接地 关闭 编程从键盘输入一位十进制数字 0 9 在七段数码管上显示出来 三 编程提示1 实验台上的七段数码管为共阴型 段码采用同相驱动 输入端加高电平 选中的数码管亮 位码加反相驱动器 位码输入端高电平选中 5V 键盘输入数据 0 9 控制LED数码管显示 datasegmentio8255aequ288hio8255bequ28bhleddb3fh 06h 5bh 4fh 66h 6dh 7dh 07h 7fh 6fhmesg1db0dh 0ah Inputanum 0 9 otherkeyisexit 0dh 0ah dataendscodesegmentassumecs code ds datastart movax datamovds axmovdx io8255b 使8255的A口为输出方式movax 80houtdx al sss movdx offsetmesg1 显示提示信息movah 09hint21hmovah 01 从键盘接收字符int21hcmpal 0 是否小于0jlexit 若是则退出cmpal 9 是否大于9jgexit 若是则退出subal 30h 将所得字符的ASCII码减30Hmovbx offsetled bx为数码表的起始地址xlat 求出相应的段码movdx io8255a 从8255的A口输出outdx aljmpsss 转SSSexit movah 4ch 返回int21hcodeendsendstart 实验五七段数码管 二 一 实验目的掌握数码管显示数字的原理二 实验内容动态显示 按图5 2连接好电路 七段数码管段码连接不变 位码驱动输入端S1 S0接8255C口的PC1 PC0 编程在两个数码管上显示 56 三 编程提示实验台上的七段数码管为共阴型 段码采用同相驱动 输入端加高电平 选中的数码管亮 位码加反相驱动器 位码输入端高电平选中 LED数码管实验 动态显示 56 datasegmentio8255aequ28ahio8255bequ28bhio8255cequ288hleddb3fh 06h 5bh 4fh 66h 6dh 7dh 07h 7fh 6fh 段码buffer1db6 5 存放要显示的个位和十位bzdw 位码dataendscodesegmentassumecs code ds datastart movax datamovds axmovdx io8255b 将8255设为A口输出moval 80houtdx al movdi offsetbuffer1 设di为显示缓冲区loop2 movbh 02lll movbyteptrbz bhpushdidecdiadddi bzmovbl di bl为要显示的数popdimoval 0movdx io8255aoutdx almovbh 0movsi offsetled 置led数码表偏移地址为SIaddsi bx 求出对应的led数码moval byteptr si movdx io8255c 自8255A的口输出outdx almoval byteptrbz 使相应的数码管亮movdx io8255aoutdx almovcx 3000 delay loopdelay 延时movbh byteptrbzshrbh 1jnzlllmovdx 0ffhmovah 06int21hjeloop2 有键按下则退出movdx io8255amoval 0 关掉数码管显示outdx almovah 4ch 返回int21hcodeendsendstart 实验五七段数码管 三 一 实验目的掌握数码管显示数字的原理二 实验内容动态显示 选作 使用图5 2的电路 编程在两个数码管上循环显示 00 99 三 编程提示实验台上的七段数码管为共阴型 段码采用同相驱动 输入端加高电平 选中的数码管亮 位码加反相驱动器 位码输入端高电平选中 LED数码管实验 动态循环显示 00 99 datasegmentio8255aequ28ahio8255bequ28bhio8255cequ288hleddb3fh 06h 5bh 4fh 66h 6dh 7dh 07h 7fh 6fh 段码buffer1db0 0 存放要显示的十位和个位bzdw 位码dataendscodesegmentassumecs code ds datastart movax datamovds axmovdx io8255b 将8255设为A口输出moval 80houtdx al movdi offsetbuffer1 设di为显示缓冲区 loop1 movcx 0300h 循环次数loop1 movcx 030h 循环次数loop2 movbh 02lll movbyteptrbz bhpushdidecdiadddi bzmovbl di bl为要显示的数popdimovbh 0movsi offsetled 置led数码表偏移地址为SIaddsi bx 求出对应的led数码moval byteptr si movdx io8255c 自8255A的口输出outdx almoval byteptrbz 使相应的数码管亮movdx io8255aoutdx alpushcx movcx 100delay loopdelay 延时popcxmoval 00houtdx almovbh byteptrbzshrbh 1jnzllllooploop2 循环延时movax wordptr di cmpah 09jnzsetcmpal 09jnzsetmovax 0000mov di almov di 1 ahjmploop1 set movah 01int16hjneexit 有键按下则转exitmovax wordptr di incalaaamov di al al为十位mov di 1 a
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 消防设备管理知识试题及答案
- 知识图谱构建试题及答案
- 飞机机翼结构维护的试题及答案
- 中级会计考试的复习计划及试题答案
- 标准厂房项目废水处理方案设计
- 2025年建造师考试信息交流试题及答案
- 护理职业续航试题及答案规划
- 消防设施设计创新试题及答案
- 2025年跨文化交流能力在国际化体育赛事组织中的实践报告
- 2025年建造师面试策略试题及答案研究
- 《财务报表分析文献综述2200字》
- GA 53-2015爆破作业人员资格条件和管理要求
- 金属学及热处理练习题答案
- 全文《中国式现代化》解读PPT
- 证据法学试题及答案
- 2023年河南省黄泛区实业集团有限公司招聘笔试题库及答案解析
- 超声引导下针刀精准治疗膝骨关节炎课件
- 液化气站安全生产标准化评价标准
- 制糖生产工艺与煮糖整理操作课件
- 常见典型心电图诊断规培-课件
- 六年级下册英语素材全册单词表 牛津上海版
评论
0/150
提交评论