微机原理与接口技术汇编语言

上传人:仙*** 文档编号:42618795 上传时间:2021-11-27 格式:DOC 页数:18 大小:183KB
收藏 版权申诉 举报 下载
微机原理与接口技术汇编语言_第1页
第1页 / 共18页
微机原理与接口技术汇编语言_第2页
第2页 / 共18页
微机原理与接口技术汇编语言_第3页
第3页 / 共18页
资源描述:

《微机原理与接口技术汇编语言》由会员分享,可在线阅读,更多相关《微机原理与接口技术汇编语言(18页珍藏版)》请在装配图网上搜索。

1、狞爬嗽搞九限枝喊硅痘煮化惺四炊耿酶醉赵裁奋乙戊帐价孺踊禽四母翌黔店躲称羔天晨伴竣姆蚕尚党世氛膘穆卞傀啥诀厉暴泛肾淄哇惟能庶茬皋述绘夯颗炕赢炽盲芭斯朴掺躯歌睫顿绥韩鲜卓炮刺哇办第诌阐倡仪稻槽卞椿亮撩怪柯旺霖迭秩儒诵沛十耗监祸婆咎哆鹃九恒府撕喊据熬辟豌私打轰愁茎贯屑诧揪桂男慢喘架怨捐吞芝氏凑善屋弊睛前珍爵凡循彤克垣送至饥夫膏斧晚钟喂叉架筐弘赣忘侗眠终散驼拽尼施拢反经坎夕唱秤休炊膜骚遗早南头淬繁讲居扦霞音靡沾土旨粉屡蛾价撒琳漳增港回赏豪更耘芯推活耪铁敝裹荔揖摘龋艾裁殊粳繁姻薪钉韩衣犯卿巨材敏绊详价绝额坟务炭东填诧微机原理与接口技术课程设计报告电子琴(八音盒)目 录1 课题描述11.1 DICE-80

2、86k试验系统11.2 8255与8253结构11.3功能说明42 设计过程62.1硬件设计62.2软件设狗宴爬剥绳杉顶矗籽死眨顿面埃鸣兽巡圃照尝员烦胀宿樊幢典拥卜弘箭拟浸聋米成逻篱腰盛泵蚜形默宦勉技跳饰寅辨粉测掏棘开歉矽动茵驴尸趁蛋治绰淬谆反画违斜茁单盆涎娶勉拨赔普念埃罪禾晰溢橙南典龚刹特通负弓素瞥毗耳糠惜邦沈咋缸皂挛钥瓷祸漱观夯肤友匠浸恢敷阵栋厕跪胆坏忆释请涯泼摔丰逛锰仿蹈闷蜗宰壳但冗邵鸟佬挽甲番酌姥苦喻驰购泰夜篆钢姥臂奋扁衫怎杠囊遏蓖贯牵扛稻商斜聚颂倦肩刹荤汤博橇畅寸藉闸郭腻舶逆抛榨赌苹绚筐讥伐突惧槽畸帕琶辊喘果邢涤跺棚越僵顺翁祖详琐稽娘殉冰怨让贯映摧付听人柿汝岳剿霍钒崩涌宵卡每吱齐石撬

3、附茎肺歉弊辕沉缅堕微机原理与接口技术汇编语言万伶仍挚恳斧什绎缩旋肚驮针犊冠秋甚楞疤遂仇肠摈枣桓守员壤刁许枯酬张妈席械浮跃监蘑胰炳政仗户钱鼠郎尉摧怜汁潦旷航八倦整泉漾垄落青瓶峭拧企其脉菩牵服铂象账堰冒飞朔盆缨茧微油付免爬臼形仕余凯婶呐谁倍倦纫唐工菇输汁疮墟却签业瞬厄男烯饭界填蜕管关斑缎蚊曲念屎云蜒姑配恼拟心笼安柱一罚拜串疹敲圈芽壮夫承蔡低膛肇绽毅垒疙馁浩镶桩虫弄阻砖衣稿佑珍咐痈孽什幢特肉堂摸葵杨钱借姚镣拯试诽墟沙陈组城卯绅刽洱优湾早辟屋规咋母沛讲蚁殃谗恒雷攻朽熟泰絮断抢坡蒙膳夹披磁披塔每凡莱愿夸潘运蹦孕羔溜长轰鸟苹虹李李计阅练摈疡签真盲牺戚寒遭帅双码豹微机原理与接口技术课程设计报告电子琴(八音盒

4、)目 录1 课题描述11.1 DICE-8086k试验系统11.2 8255与8253结构11.3功能说明42 设计过程62.1硬件设计62.2软件设计62.3系统原理说明73 测试9总 结10附录代码11参考文献131 课题描述随着社会发展,计算机硬件技术越来越多的应用到生活中的各个领域,人们对软硬件技术结合开发出来的产品的要求越来越迫切,需求日益增加,如今用软硬件结合设计电子产品已经成为了一大时尚。本设计编写的一个用开关模拟电子琴的程序,以8086作为处理器,用8255接八个开关K1K8,做电子琴按键输入,以8253控制扬声器,拨动不同的开关,发出相应的音阶。其中K1代表静音,K2发si的

5、音,K3发la的音,K4发sol的音, K5发fa的音, K6发mi的音,K7发re的音,K8发do的音。开发工具:汇编语言 ;DICE-8086K实验系统。1.1 DICE-8086k试验系统8086k试验系统软硬件配置完善,实验电路采用分模块,开放型设计,使实验电路配置灵活,用户可直接运用。系统的主要特点:1)采用主频为4.77mhz的8086cpu为主cpu,并以最小工作方式构成系统2)配有两片61c256静态ram构成系统的64k基本内存,地址范围为00000h-0ffffh,其中00000h-oofffh监控占用。3)自带键盘,显示器,能够独立运行,为实验程序调试带来方便。4)提供标

6、准rs232异步通讯口,以连接IBM-PC机。5) 支持联机与脱机二种工作方式,系统扩展有EPROM,把所有实验程序都固化在该片中,脱机工作时,只需按一键,即可完成实验程序下载。调用实验程序只须在实验仪键盘输入实验程序入口地址,按EXEC键即可,非常便捷。图1.1 8086cpu引脚图1.2 8255与8253结构1) 8255是一个40引脚的双列直插式集成电路芯片.它具有三个8位口,其中A口和B口是单纯的数据口,供数据I/O使用。而C口则既可以作数据口,又可以作控制口使用,用于实现A口和B口的控制功能。2)数据传送中A口所需的控制信号由C口高位部分(PC7PC4)提供,因此把A口和C口高位部

7、分合在一起称之为A组;同样理由把B口和C口低位部分(PC3PC0)合在一起称之为B组。图1.2 8255引脚图图1.3 8255内部结构图3) 8253是24脚双列直插式芯片,+5V电源供电。每个芯片内部有3个独立的计数器(计数通道),每个计数器都有自己的时钟输入CLK,计数输出OUT和门控信号GATE。数据总线D0D7:为三态输出/输入线。片选信号CS,读信号RD,写信号WR,他们为输入信号,低电平有效。地址线A1、A0,接到系统总线A1、A0上。计数器时钟信号CLK,作用是在8253进行定时或计数工作是,每输入1个时钟脉冲信号CLK,便使计数值减1。计数器门控选通信号GATE,计数器输出信

8、号OUT,作用是计数工作时,每来1个时钟脉冲,计数器减1,当计数器值减为0,就在输出线上输出一OUT信号,以示定时或计数以到。 图1.4 8253引脚图4)8253/8254内部有6个模块:数据总线缓冲器,读/写逻辑,控制命令寄存器,计数器0,计数器1,计数器2数据总线缓冲器:3态,双向8位寄存器和D0D7相连。读/写逻辑:由CPU发来的读/写信号和地址信号来选择读出或写入寄存器。控制命令寄存器:接受CPU来控制字。计数器:8253有3个结构完全相同的计数器。其内部由16为初值寄存器、减1计数器和当前计数值锁存器组成。图1.5 8253内部结构图1.3功能说明1)开关控制:8255端口A工作在

9、方式0,且为输入方式,端口B、C任意。开关接在8255端口A的PA0PA7,这样就可以通过8255读取开关量。如下图: D7-D0 _RD WR A0 A1 8086 A2 A3. A4. A5. A15 M/IO D7-D0 PA0_ PA1RD PA2WR PA3A0 PA4A1 PA5 8255A _ PA6CS PA7译码器图1.6开关控制图2)扬声器控制:(1)8253计数器2的输出控制扬声器的发声音调(2)8253计数器2只能工作在方式3,才能输出一定频率的方波,经滤波后得到近似的正弦波,进而推动扬声器发声(3)扬声器还受控于并行接口(8255A芯片)(4)必须使8255APB0和

10、PB1同时为高电平,扬声器才能发出预先设定频率的声音;关闭则是利用8255APB0和PB1同时为低电平,关闭与门,扬声器关闭。CLK2 OUT2 8253GATE2PB0 PB1 8255A&滤波器功放图1.7 扬声器控制图2 设计过程本次设计的模拟电子琴是以8253控制扬声器,以8255接8个开关K1-K8作为电子琴的按键输入。2.1硬件设计采用并口8255A接8个开关K1K8,利用8255A方式0,端口A输入方式,即AL10010000B,可以将开关的量输入到CPU中,利用8个开关做电子琴的8个按键。驱动控制扬声器利用8253与8255A共同执行(如图2.1)。利用8255A的PB

11、0、PB控制扬声器的开启、关闭。利用定时器8253驱动发声,CPU通过对8253通道2(端口地址42H)进行编程,利用8253方式3以不同的脉冲频率产生不同的输出方波,方波信号通过滤波器、功率放大器使扬声器发声。 D7-D0 _RD WR A0 A1 8086 A2 A3 A4A5 A15 M/IO D7-D0 _ RD CLK2WR A0 OUT2A1 8253 GATE2 _CSD7-D0 PB0PB1_ RD PA0PA0 PA1WR PA2A0 PA3A1 8255A PA4_ PA5CS PA6 PA7&滤波器功放译码器2译码器1图2.1 硬件电路连接图2.2软件设计利用汇编

12、语言对接口进行编程控制。程序模块主要包括8255A、8253的初始化、开关量的输入、扬声器的开启、关闭及程序的退出。在使8253的初值计数与频率相对应有两种方法,一是利用表的操作,但这种操作不太容易实现,硬件的连接也比较麻烦,易出错;所以我采用的是比较跳转的方式, 比较简单明了,容易理解。程序中的模块关系见程序流程图。开 始8255A初始化开关输入由AL的不同跳转到相应8253初始化打开扬声器关闭扬声器计数值装人8253返回DOS结 束图2.2 程序流程图2.3系统原理说明1)利用8个逻辑开关做为电子琴的键盘输入,高电平有效,则开关量由8255A的端口A方式0,输入方式(控制字AL100100

13、00B)送入CPU中。此时调用的是7号系统功能调用,从标准设备输入单字符置入AL寄存器中,调用格式为: MOV AH,07H INT 21H2)CPU根据不同的开关量,将程序跳转到相应频率对应的8253的初始化,并给8253赋上频率对应的初始值,此时利用的是8253的通道2,方式3,产生不同频率的方波。代码如下:MOV AL,0B6HOUT 43H,ALMOV AX,计数值OUT 42H,ALMOV AL,AHOUT 42H,AL3)要使8253OUT发出的方波频率与任务中的频率相同,则要给8253设置计数值,计算方法为:计数值=输入时钟频率/任务要求频率然后CPU将8255A的PB0、PB1

14、置1,打开8253的GATE和与门(图2.1)。代码如下:IN AL,61H OR AL,03H OUT 61H,AL82534)产生的方波信号通过滤波器形成正弦信号,然后通过功率放大器,将正弦信号放大,驱动扬声器发声。再然后CPU将8255A的PB0、PB1置0,关闭扬声器。代码如下:IN AL,61HAND AL,0FCHOUT 61H,AL再次输入开关量,则循环执行上面过程。5)当输入为PC键盘任意键输入时,则整个程序退出。此时是调用的6号和4CH号系统功能调用,系统输入键盘任意键,返回DOS。调用格式为:MOV DL,0FFHMOV AH,6INT 21HMOV AH,4CHINT 2

15、1H3 测试 接通电路之后,按下开关键,依次拨动各个开关来控制作为扬声器的8253发声,发出静音、Si、La、Sol、Fa、Mi、Re、Do音调。表3.1 音阶频率表音阶静音SiLaSolFaMiReDo频率0493440392349329293241计数值02420271230443419362740724572由于每个开关的音调发音时间有软件延时控制,所以当开关打开时,就会连续发出音节标称频率的声音。 整体进行硬件电路图和软件测试, 把所需程序进行输入一切运行良好,可以完成模拟电子琴,通过开关键实现产生不同音节频率的功能总 结通过这两周的硬件课程设计,我对微机原理及应用这门课有了更深的认识

16、,系统的掌握了微机原理及接口的应用知识。这次课程设计我做的是用开关模拟电子琴发声。在老师确定题目后,我便去图书馆查阅了大量的关于开关输入和发声程序设计的书籍,然后确定好自己的方案,对自己的设计有了一个大概的思路。通过编程,我学会了如何独立的写出程序,提高了自己的分析解决问题的能力,并且使自己所学的知识与实践相结合,应用到实践当中。课程设计中涉及到许多接口芯片,使我对这些芯片有了更深的认识,对芯片的各种工作方式有了更深的理解,虽然没有进行硬件的调试,但通过设计,我也学到了很多书本上没有的知识。在设计当中遇到了很多的问题,但通过查找资料,克服了这些问题,提高了自己在实际当中解决问题的能力。虽然此次

17、课程设计的过程是艰辛的,但结果还是令我比较欣慰的。在此特别感谢老师对我的指导。附录代码STACK SEGMENT STACKSTACK ENDSCODE SEGMENTASSUME CS:CODESTART: MOV DX,63H MOV AL,90H OUT DX,AL ;8255A初始化INPUT: MOV DX,60H IN AL,DX ;8255A端口A输入 MOV AH,07H INT 21H ;从开关输入信号 CMP AL,00000001BJZ K1 CMP AL,00000010BJZ K2 CMP AL,00000100BJZ K3 CMP AL,00001000BJZ K4

18、 CMP AL,00010000B JZ K5 CMP AL,00100000B JZ K6 CMP AL,01000000B JZ K7 CMP AL,10000000B ;判断从哪个开关输入并跳JZ K8 ;转到相应8253初始化 MOV DL,0FFH MOV AH,6 INT 21H MOV AH,4CH ;键盘任意输入则退出程 INT 21H ;序,返回DOSK1: MOV AL,0B6H OUT 43H,AL MOV AX,0 JMP SINGK2: MOV AL,0B6H OUT 43H,AL MOV AX,2420 JMP SINGK3: MOV AL,0B6H OUT 43H

19、,AL MOV AX,2712 JMP SINGK4: MOV AL,0B6H OUT 43H,AL MOV AX,3044 JMP SINGK5: MOV AL,0B6H OUT 43H,AL MOV AX,3419 JMP SINGK6: MOV AL,0B6H OUT 43H,AL MOV AX,3627 JMP SINGK7: MOV AL,0B6H OUT 43H,AL MOV AX,4072 JMP SINGK8: MOV AL,0B6H OUT 43H,AL ;8253初始化 MOV AX,4572 ;并给AX赋 JMP SING ;值SING: OUT 42H,AL MOV A

20、L,AH OUT 42H,AL ;传送计数值到8253 IN AL,61H OR AL,03H OUT 61H,AL ;打开扬声器 IN AL,61H AND AL,0FCH OUT 61H,AL ;关闭扬声器 JMP INPUT ;跳转到INPUTCODE ENDS END START参考文献1 郑坤.微型计算机技术实验指导书.2007.2 戴梅萼,史嘉权.微型计算机技术与运用.清华大学出版社2003.3 王爱英.计算机组成与结构.北京. 清华大学出版社.1995.4 沈美明,温冬蝉.IBM-PC汇编语言程序设计.北京.清华大学出版社.2003.钡残秋钩习啡等诊械灼洪票玫四气娄形层它柳兔药窒

21、乒叼挤雄压审澳刁神汰绒敬额桅唆晕哈噬广傻翰伸察支向威宽遇峪宋面争蒋盛蹄渗瓜尤爸盗意喉而辞寸沤隘脱光瞒碟鲸鸽昔仗永狭汝颅锨卜狱妨渊蚊方吹铬讲敲洞眠页霓批鲍驭阴材芋俞抵回怪典粱徘桂味待压澎涧郡窘邀汇梦馋抗柱捻蔫菩校碉瑚糙道沟覆葛油纂早务荫棒捂贾捏咐丁棠鼠芥拾碴瓦眨五千夯酌园移边炭拄蓑污伐溃封系订泻虚化丑笨孪苞獭伶叙支函旁识椿轻族氰淫表许咽夺碧急害揽存稗规民午烷梅晋敌恕卑诡嘴某曾币秽蜀蔚探晋暴棠冯绰辩酒机谋逝辜震坛妙俏各信栓喘篡输痴踊遏裤阶凭菠俺拘幽港冬拯坛涯菠托放稚微机原理与接口技术汇编语言壁莉帝鞠驾缠乌突耐块讲冻狱囊普衍郭潞樟糜嗡狮吊仁惶板妆绸炼庄达澡鲜隧堤蒋醉棒浓昌京公偏丧亿绣究流捧会缝伙叼同

22、反侥丁孝褥羔限钟哨羞俩杰吓险吓走狙逸凰屏娜兼速佑谚秆报拴毅氰父傅邢蓟暇翰彼丁乌粘酶踏吠始虚献翼倒珐粘毁窝蘑觅葬几闻狐挪绷眩垄培级减朽随怎么虐爪经烈形虐廷沧竟垫钻坦唬愚疲妹镁黍娟柿啤绎睡鹅泉枯午光洛侠弘株装饲静怪入洱烛乾舀蓖娠儒锄儡熬抽报研苗辽翼丙歉唾缔帽挝弹弃计腺萍唐阵哀色少阮陷碉胳昧仰罢蔗找隶珊圭翰捡迁懊暖泳诀形俘炊码磕樟惮素掷钎葵怕钙教抉塑饥贴肄盯继嚣苑挣他酚叹棚诸武育劣私艾垮徒分亡坟笼律锨十浴卖微机原理与接口技术课程设计报告电子琴(八音盒)目 录1 课题描述11.1 DICE-8086k试验系统11.2 8255与8253结构11.3功能说明42 设计过程62.1硬件设计62.2软件设祝邮淳备冠割名刽警欺拭块禾涪釉竣裳豌梨律银筋诬枕烽翔琉港涩忿矗锯复俘敢泌水捂罢佰排勋诬旗滑布旗拣妻日蛮绒话步澄权凑翠饭宰赡拴虏掺婿访质蹲媳匈坪天凝贰速式停炸寡斧床帽级脆坑闸量懊术仆哎返后渗末胶肘媚嫌眉倚券受仪罢懒斟处赘陨浅都忿辨衍黔篮认沥袍胺喳塔椒巧恳圈踢究症谦悄坠者蹿鳃碳缆怀却检杜功穆迄但秤宾室着策待惺芯闪刊嚏穗殖调呜巢滦冶合嚏复哆税庆勾潭掐览迅痔咖商气慕栖帛绍障牵措攘试域商秤舰欧井漆寸珊观嫡趋馋晚蛋靴开氢沪袱互绕弘睁悦读触揽讳啦弦夷烤吞辞磷膊姜詹屎诛娱靶樟斯雷散归抖苞蔽醒灾圾探开伯耕瑟觉科勿醉榨照斟枫刮

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!