ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:103.15KB ,
资源ID:4013347      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4013347.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(矩形波正弦波三角波汇编语言设计.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

矩形波正弦波三角波汇编语言设计.docx

1、矩形波正弦波三角波汇编语言设计关于微机原理及接口技术的波形设计课程设计任务书第一章 微机应用系统课程设计的目的意义21.1 设计目的 21.1 课程在教学计划中的地位和作用2第二章 信号发生器系统软硬件设计任务32.1 设计内容及要求32.2 课程设计的要求3第三章 总体设计方案33.1 设计思想33.2 总体设计流程图 4第四章 硬件设计44.1 硬件设计概要 44.2 所用到的芯片及其各自功能说明44.3硬件电路设计系统原理图6第五章 软件设计75.1 流程图及其说明75.2 源程序及其说明8第六章软件系统的使用说明15第七章收获、体会15附录参考文献 15第一章 微机应用系统课程设计的目

2、的意义1.1设计目的通过该课程的学习使学生对微机系统有一个全面的了解、掌握常规芯片的使用方法、掌握简单微型计算机应用系统软硬的设计方法,进一步锻炼同学们在微型计算机应用方面的实际工作能力。本设计主要能够完成对制定波形的形成,可以通过输入来改变频率。此信号发生器可以很好的运用于有需要的场合。1.2 课程在教学计划中的地位和作用微型计算机原理及接口计数课程是我们测控技术专业在这个学期学的一门基础课程。通过该课程的学习使我们对微机系统有一个基本的了解、掌握常规芯片的使用方法、掌握简单微型计算机应用系统软硬的设计方法。 微机应用系统设计及综合实验是结合本学期的课程开设的一门实习,它的主要目的:通过课程

3、设计还要进一步锻炼同学们在微型计算机应用方面的实际工作能力。计算机科学在应用上得到飞速发展,因此,学习这方面的知识必须紧密联系实际:掌握这方面的知识更要强调解决实际问题的能力。同学们要着重学会面对一个实际问题,如何去自己收集资料,如何自己去学习新的知识,如何自己去制定解决问题的方案并通过实践不断地提高分析和解决问题的能力。第二章 设计任务2.1 设计内容及要求本设计综合应用D/A转换器、定时器/计数器电路,中断技术:通过PC机定时,产生:锯齿波、三角波、正弦波等模拟信号输出,信号频率可通过PC机键盘调节。2.2 课程设计要求设计要求画出电路原理图,说明工作原理,编写程序及程序流程图。第三章 总

4、体设计方案3.1 设计思想及方案论证 由于要求达到模拟信号波形发生,因此要由D/A转换芯片0832来来完成此项任务,由8253形成波形的主要做法是:先输出一个下限电平,将其保持t然后输出一个稍高的电平,在保持t,然后重复此过程,因此需要延长0832输入数据的时间间隔来改变频率。如图3-1信号发生波形图所示。0832输入的数据的延时可以通过软件完成,也可以通过硬件完成。由于实验要求输出的波的频率可以改变,且精确,所以选用硬件延时。+5v 0v 图3-1 信号发生波形图硬件延时主要由计时器8253和中断控制器8259来实现。由8253输出的方波的高低电平,来触发8259的IR0端,8259给CPU

5、中断信号,CPU中断来执行相应的中断子程序,中断子程序为向0832输出数据的程序,通过选择此程序可以产生锯齿波,方波,正弦波。由于0832产生的方波的频率可以控制,所以每次中断执行波形发生程序的时间间隔可以精确控制。以此来控制输出的波形频率。3.2总体设计方案总体的设计就是以8253定时中断,中断的子程序来执行输出,输出的信号经过信号发生器形成波形。初步设想图3-2如图所示。 图3-2 硬件简图第四章 硬件设计4.1芯片简介4.1.1可编程中断控制器8259a8259a是8086/8088系列的可编程中断控制器,8259a为28个引脚的双列直插芯片。它的主要功能是:(1)据8级优先级控制,通过

6、联级可以扩展到64级优先控制。(2)每一级中断可由程序单独屏蔽或允许。(3)可提供中断类型号传送给CPU。(4)可以通过编程选择多种不同工作方式。 引脚功能:D7-D0:双向数据线,三态,及数据总线相连。IR7-IR0:外设的中断请求信号输入端,输入,中断请求:可以是电平触发,或者边缘触发。RD:读命令信号,输入,低电平有效,用来控制数据由8259A读WR:写命令信号,输入,地点平有效,用来控制写到8259CS:片选信号,输入,通过译码器及地址总线相连INT:向CPU发出中断请求信号,输出,及CPU的INTR相连INTA:CPU给8259的中断响应信号,输入。4.1.2DAC0832:NSC公

7、司生产的DAC0832 ,是一种内部带有数据输入寄存器的8位D/A转化器,采用CMOS工艺制成,芯片内部R-2R梯形电阻网络,用于对参考电压产生的电压进行分流,完成模数转换,转换结果以一组差动电流 IOUT1IOUT2输出各引脚的功能分述如下:VREF :参考电压输入端。根据需要一定大小的电压,由于它是转换的基准,要求数值正确,稳定性好。VCC:工作电压输入端。AGAN为模拟地,DGAN为数字地。在模拟电路中,所有的模拟地要连在一起然后将模拟地,数字地连接到一个公共接地点。DI7-DI0:数据输入。可直接连接到数据总线。IOUT1IOUT2:互补的电流输出端。为了输出模拟电压,需加转换电路。4

8、.1.3 8253inter8253是一种能够完成定时和计数的芯片,8253内部有3个16位计数器通道,通过对他们编程,每个计数器可以按照6种工作方式工作,并且都可以按2或10进制格式进行计数。,最高频率为2HZ.。8253还可以用于许多其他场合,比如可作编程方波发生器,分频器等。引脚:1数据缓冲总线数据总线缓冲器是8253及系统总线相连时使用的接口电路,它由8位双相三态缓冲器构成,CPU用输入输出指令对8253进行读写操作的信息都由8位数据总线传输:(1)CPU在对8253进行初始化编程时,向他写入控制字。(2)CPU向某一计时器写入计数初值。(3)从计数器读出计数值。2读写控制逻辑读写控制

9、逻辑接受系统控制总线送来的输入信号,经由组合后形成控制信号,对各部分操作进行控制。可接受的信号有:(1)CS片选,低电平有效,由数据总线经由IO端口译码电路产生。只有CS低电平时,CPU才能对8253进行读写操作。(2)RD读信号,低电平有效,当RD位地电平时,表示CPU正在读取所选定的计数器的通道的内容。(3)WR写信号,低电平有效。当WR为低电平时,表示CPU正在将计数器初值写入所选中的通道口中,或者将控制字写入内部寄存器中。(4)A1A2 端口选择信号,改变它的值,来选择8253内三个计数器通道。如果8253和及8位数据总线的微机相连,只要将A1A0分别及地址总相联。如果系统采用的是80

10、86CPU,则数据总线为16位,传输数据时,总是将低8位数据送往偶地址,将高8位送往奇地址。3计数器8253内部包含三个完全相同俄计数器定时器通道,对3个通道的操作,完全独立的。每个通道都包含1个8位的控制字寄存器,1个16位的减寄存器,和一个锁存器,执行部件是一个16位的减法计数器。每个通道工作时,对输入到CLK引脚上的脉冲按2进制或10 进制格式进行计数。每当输入一个时钟脉冲,计数器减1,当计数器的值减为0时从,从OUT引脚输出一个脉冲信号。GATE引脚上的门控制信号,决定他是否允许计数。43硬件电路设计系统原理图图4-1硬件原理图第五章 软件设计51流程图主要进行系统初始化和外围接口芯片

11、初始化,及开中断,等待中断产生,其流程图如图5.1所示。 图5-1程序流程图52源程序及其说明data segmentsinbuf db 80h,8ch,98h,0a5h,0b0h,0bch,0c7h,0d1h db 0dah,0e2h,0eah,0f0h,0f6h,0fah,0fdh,0ffh db 0ffh,0fdh,0fah,0f6h,0f0h,0eah,0e2h,0dah db 0d1h,0c7h,0bch,0b0h,0a5h,98h,8ch,80h db 7fh,73h,67h,5ah,4fh,43h,38h,2eh db 25h,1dh,15h,0fh,09h,05h,02h,00

12、h db 00h,02h,05h,09h,0fh,15h,1dh,25h db 2eh,38h,43h,4fh,5ah,67h,73h,7fh mess1 db方 波-10dh,0ah db三角波-20dh,0ah db方 波-30dh,0ah db正弦波-30dh,0ah mess2 db输入发生频率,0dh,0ah,$ cunchu db ? jishu db ? data endsstack segment stack st dw 20 dup(?) TOP label wordstack endscode segment assume cs:code,ds:data,ss:stack,

13、es:datamain proc far mov ax,data mov ds,ax mov ax,stack mov ss,ax mov dx,8259AD0 ;初始化8259,设置为单片,上升沿触发,完全 mov al,00010011b ;非自动EOI方式 out dx,al mov dx,8259AD1 mov al,10000000b out dx,al mov al,00000001b out dx,al lea dx,mess2 ;输入频率 mov ah,09h call input mov ax,4096 ;将输入的频率计算,得出写入8253的时间数 mov bx,cx div

14、 bx mov cx,ax push cx mov dx,316h mov al,0010011b ;通道1方式字,方式0,BCD记数 out dx,al mov dx,312h pop cx mov al,cl out dx,al mov al,ch out dx,al mov dx,316h ;通道0方式字,方式0,bcd计数 mov al,00110111b out dx,al mov dx,310h mov al,16h ;16分频,以0通道作为1通道的时钟频率,其频率为0.125MHz out dx,al mov cuncu,0h ;将存储单元清零 mov jishu,0h bg:

15、lea dx,mess1 ;选择波形 mov ah,09h int 21h mov ah,08h int 21h pop ax mov ah,al cmp al,1 ;若为方波,将方波对应的子程序写入中断地址表 mov ax,0 mov es,ax mov bx,08h*4 mov ax,offset fangbo mov es:word ptrbx,ax mov ax,seg fangbo mov es:word ptrbx+2,ax cmp al,2 ;若为锯齿波,将锯齿对应的子程序写入中断地址表 mov ax,0 mov es,ax mov bx,08h*4 mov ax,offset

16、juchi mov es:word ptrbx,ax mov ax,seg juchi mov es:word ptrbx+2,ax cmp al,3 ;若为三角波,将三角对应的子程序写入中断地址表 mov ax,0 mov es,ax mov bx,08h*4 mov ax,offset sanjiao mov es:word ptrbx,ax mov ax,seg sanjiao mov es:word ptrbx+2,ax cmp al,4 ;若为正弦波,将正弦波对应的子程序写入中断地址表 mov ax,0 mov es,ax mov bx,08h*4 mov ax,offset zhe

17、ngxian mov es:word ptrbx,ax mov ax,seg zhengxian mov es:word ptrbx+2,ax stiCIR: JMP CIR retmain endp;输入数字的子程序input proc near xor dx,dx xor cx,cx mov bx,10 lea si,flag mov byte ptrsi,0 mov ah,1 int 21h cmp al,0dh je enter sub ah,ah xchg ax,cx mul bx sub cx,30h add cx,ax mov ah,1 int 21h jmp keyenter:

18、cmp flag0,0 je next neg dxnext mov word ptrdi,cx retinput end;三角波发生程序sanjiaobo proc near push ax push bx push cx push dx mov dx,228h mov al,cunchu out dx,al inc cmp al,0ffh jnz cun mov cun,0hcun : mov cun,alintreturn:pop dx pop cx pop bx pop ax eoi iretsanjiaowo endp ;锯齿波发生程序jvchibo : proc near push

19、 ax push bx push cx push dx mov dx,228h mov al,cunchu out dx,al mov cx,jishu cmp cx,0ffh jg addec: dec add cx,01h cmp cx,1feh mov cx,0h jmp cunad: inc cun : mov cun,al mov jishu,cxintreturn:pop dx pop cx pop bx pop ax eoi iretjvchibo endp ;正弦波发生程序zhengxuanbo : proc near push ax push bx push cx push

20、dx mov dx,228h mov al,cunchu OUT DX,sinbufAL mov cx,jishu cmp cx,0ffh jg addec: dec add cx,01h cmp cx,1feh mov cx,0h jmp cunad: inc cun : mov cun,al mov jishu,cxintreturn:pop dx pop cx pop bx pop ax eoi iretjvchibo endp ;方波子程序fangbo : proc near push ax push bx push cx push dx mov dx,228h mov cx,jish

21、u add cx,01h cmp cx,0ffh jmp lo mov al,0h out dx,al lo: mov al,0ff out dx,0h cmp cx,1feh jmp lo2 mov cx,0hlo2: mov jishu,cxintreturn:pop dx pop cx pop bx pop ax eoi iretjvchibo endp 第六章软件系统的使用说明 先输入要输出的频率,然后选择输出的波形,然后就可以在转换的out端得到波形。第七章收获、体会在这两周的实习中,我再次的巩固了微机课中所学的知识,了解了各种芯片的的用法,各个接口的名称,走用,学会了用protel来画硬件流程图。明白了微机系统在生产生活中最基本的用处.在两周的实习中,我也感到所学的知识不是很深,动手的能力不是很强,面对问题解决问题的能力还有待加强。总的来说,微型计算机原理及接口计数对于我以后学习,工作的影响是很大的。参考书目:1 周荷琴.微型计算机原理及接口技术.合肥:中国科学技术大学出版社,2004.122 刘全忠.汇编语言实用程序.天津:天津大学出版社,1991.6

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1