课程设计报告正弦波设计_第1页
课程设计报告正弦波设计_第2页
课程设计报告正弦波设计_第3页
课程设计报告正弦波设计_第4页
课程设计报告正弦波设计_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

1、微微机机原原理理与与接接口口技技术术课程设计报告书课程设计报告书1.引言引言.21.1.背景和编写目的.21.2.参考资料.21.3.术语与缩写.22.硬件设计硬件设计.32.1.at89c52 模块:.32.2.硬件电路设计原理.52.3.硬件电路设计:.63.软件编程软件编程.74.系统仿真调试系统仿真调试.95.总结总结.96.参考文献参考文献.101. 引言引言1.1. 背景和背景和编写目的编写目的微机原理与接口技术是一门关于计算机与输入输出技术的课程,任何一个计算机系统都是一个复杂的整体,学习计算机原理是要涉及到整体的每一部分。讨论某一部分原理时又要涉及到其它部分的工作原理。这样一来

2、,不仅不能在短时间内较深入理解计算机的工作原理,而且也很难孤立地理解某一部分的工作原理。所以,在学习接口技术的过程中必须将所有所学的知识综合起来,系统的解决某一问题 该门课程的学习思维方法也和其它课程不同,该课程偏重于工程思维,具体地说,在了解了微处理器各种芯片的功能和外部特性以后,剩下额是如何将它们用于实际系统中,其创造性劳动在于如何用计算机的有关技术和厂家提供的各种芯片,设计实用的电路和系统,再配上相应的应用程序,完成各种实际应用项目。主要是应用内容包括微型计算机体系结构、8086 微处理器和指令系统、汇编语言设计以及单片机的应用。微型计算机各个组成部分介绍等内容以便使我们对微机原理中的基

3、本概念有较深入的了解,能够系统地掌握微型计算机的结构 8086 微处理器和指令系统、汇编语言程序设计方法、微机系统的接口电路设计及编程方法等,并具有综合运用所学知识分析问题和解决问题的能力。该设计在设计时采用数模转换器即 d/a 转换器。而计算机处理后的结果也必须通过数模转换器即 d/a 转换器转换成模拟量。该设计能用 protues 7 仿真软件能顺利仿真出正弦波。1.2. 参考资料参考资料微型计算机原理及应用(第三版) ;微机原理与接口技术课程设计;mcs-51/52 单片机原理与应用;数字电子技术基础(第五版)1.3. 术语与缩写术语与缩写正弦波输出,dac0832 数摸转换,at89c

4、52 单片机,嵌入式,protues 软件仿真2. 硬件设计硬件设计本设计本以 8086cpu 为核心,8255a 等并行接口,拓展相应的接口单元,由于对仿真软件功能不熟悉,一些芯片无法找到,导致功能无法实现,最后小组一直讨论用单片机at89c52 代替 8086 及相应芯片完成本设计。2.1. at89c52 模块:模块:at89c52 是一个低电压,高性能 coms 8 位单片机,片内含 8k bytes 的可反复擦写的 flash 只读程序存储器和 256 bytes 的随机存取数据存储器(ram),器件采用 atmel 公司的高密度、非易失性存储技术生产,兼容标准 mcs-51 指令系

5、统,片内置通用 8 位中央处理器和 flash 存储单元,at89c52 单片机在电子行业中有着广泛的应用。 atc89c52 单片机主要引脚及其功能:p p0 0 口口:p0 口是一组 8 位漏极开路型双向 i/o 口, 也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8 个 ttl 逻辑门电路,对端口 p0 写“1”时,可作为高阻抗输入端用。 在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8 位)和数据总线复用,在访问期间激活内部上拉电阻 。在 flash 编程时,p0 口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。p p1 1 口

6、口:p1 是一个带内部上拉电阻的 8 位双向 i/o 口, p1 的输出缓冲级可驱动(吸收或输出电流) 4 个 ttl 逻辑门电路。对端口写 “1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(iil)。at89c51 不同之处是, p1.0 和 p1.1 还可分别作为定时 /计数器 2 的外部计数输入( p1.0/t2)和输入(p1.1/t2ex)。p1.0 和 p1.1 的第二功能引脚号功能特性p1.0t2,时钟输出p1.1t2ex(定时/计数器 2)p p2 2 口口:p2 是一个带有内部上拉电阻的 8

7、 位双向 i/o 口,p2 的输出缓冲级可驱动(吸收或输出电流) 4 个 ttl 逻辑门电路。对端口 p2 写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(iil)。 在访问外部程序存储器或 16 位地址的外部数据存储器(例如执行movx dptr 指令)时,p2 口送出高 8 位地址数据。在访问 8 位地址的外部数据存储器(如执行 movx ri 指令)时, p2 口输出 p2 锁存器的内容。flash 编程或校验时, p2 亦接收高位地址和一些控制信号。p p3 3 口口:p3 口是一组带有内部上拉

8、电阻的 8 位双向 i/o 口。p3 口输出缓冲级可驱动(吸收或输出电流) 4 个 ttl 逻辑门电路。对 p3 口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的p3 口将用上拉电阻输出电流( iil)。p3 口除了作为一般的 i/o 口线外,更重要的用途是它的第二功 能 p3 口还接收一些用于 flash 闪速存储器编程和程序校验的控制信号。r re et t:复位输入,当振荡器工作时, rst 引脚出现两个机器周期以上高电平将使单片机复位。a al le e/ /p pr ro og g:当访问外部程序存储器或数据存储器时, ale(地址锁存允许)输出脉冲用于锁存

9、地址的低 8 位字节。一般情况下, ale 仍以时钟振荡频率的1/6 输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ale 脉冲。对 flash 存储器编程期间,该引脚还用于输入编程脉冲( prog)。如有必要,可通过对特殊功能寄存器( sfr)区中的 8eh 单元的 d0 位置位,可禁止 ale 操作。该位置位后,只有一 条 movx 和 movc 指令才能将 ale 激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ale 禁止位无效。p ps se en n:程序储存允许( psen)输出是外部程序存储器的读选通信号,当a

10、t89c52 由外部程序存储器取指令(或数据)时,每个机器周期两次psen 有效,即输出两个脉冲。在此期间,当访问外部数据存储器,将跳过两次psen 信号。ea/vpp:外部访问允许。欲使 cpu 仅访问外部程序存储器(地址为0000hffffh) ,ea 端必须保持低电平(接地)。需注意的是:如果加密位 lb1 被编程,复位时内部会锁存 ea 端状态。如 ea 端为高电平(接 vcc 端) ,cpu 则执行内部程序存储器中的指令。 flash 存储器编程时,该引脚加上 +12v 的编程允许电源 vpp,当然这必须是该器件是使用 12v 编程电压 vpp。 xtal1:振荡器反相放大器的及内部

11、时钟发生器的输入端。 xtal2:振荡器反相放大器的输出端。2.2. 硬件电路设计原理硬件电路设计原理波形的产生是通过 at89c52 执行某一波形发生程序,将所产生的数字信号传向 dac0832 转换器,转换器的输入端按一定的规律发生数据,从而在 d/a 转换电路的输出端得到相应的电压波形。波形发生器是一种常用的信号源,广泛地应用于电子电路、自动控制系统和教学实验等领域。2.3. 硬件电路设计:硬件电路设计:对于 8086 来说,产生正弦波硬件构架如下图所示:我们采用 at89c52 单片机来完成该实验,于是相应的硬件构架如下图:dac0832 是电流型输出,所以在应用时应该外接一个运放器使

12、其成为电压输出,仿真模拟图如下:8284clk80868255adac0832at89c52dac0832i/o 设备3. 软件编软件编程程有了相应的硬件基础,现在我们针对所要完成的功能进行相应的软件编程。我们要输出一个正弦波,采用最简单的方法,就是将正弦波的经过计算然后存入一个数组,做成一张正弦波表,然后再将这些值依次输出,形成一系列的点,从而形成一个正弦波。由硬件图看出,地址为:ffffh。软件流程如下: n yc 源代码如下:#include unsigned int i,t=0 xffff;code unsigned char sin128=64,67,70,73,76,79,82,8

13、5,88,91,94,96,99,102,104,106,109,111,113,115,117,118,120,121,123,124,125,126,126,127,127,127,127,127,127,127,126,126,125,124,123,121,120,118,117,115,113,111,109,106,104,102,99,96,94,91,88,85,82,79,76,73,70,67,64,60,57,54,51,48,45,42,39,36,33,31,28,25,23,21,18,16,14,12,10,9,7,6,4,3,2,1,1,0,0,0,0,0,0,

14、0,1,1,2,3,4,6,7,9,10,12,14,16,18,21,23,25,28,31,33,36,39,42,45,48,51,54,57,60;main()while(1)程序开始赋值正弦波采样点i=0p1=sinii+1i=128?if(+i=128)i=0;p1=sini;到此,设计的软件和硬件系统全部设计完毕。4. 系统仿真调试系统仿真调试对系统仿真,我们用的是 proteus 7 professional 软件进行仿真实验,将各部分硬件按图连接好,然后将程序代码导入,运行之后,结果如下图所示: 正弦波输出图输出的正弦波和我们预想一样,所以整个设计完成。5. 总结总结这次课程

15、设计对于不是熟练接口的人来说是小菜一碟,但是对于我们初学者来说还是比较困难呢,主要的困难来自对硬件设计的各引脚的连接和对实现程序的设计。功夫不负有心人,经过 3 个人的合作和努力,我们最后对实验的原理有了清晰的认识。通过实验,我们对接口有了一定程度的了解,对于类似的设计,个人感觉重要的还是对于硬件的程序的设计,针对不同的功能用不同的算法实现,这也是可编程芯片的一个优势,在不改动硬件的情况下,可用软件方法来实现不同功能。总之,这次课程设计对于我们有很大的帮助,通过课程设计,我更加深入地理解了,微机原理课程上讲到的各种芯片的功能,以及引脚的作用,同时加深了对于主要芯片的应用的认识,对于接口的设计重要的是理论与实际相结合,这也是接口这门课程的一个特殊之处只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论 ,然后通过实践反复检验理论,才是真正的知识,才能提高自己的实际动手能力和独立思考的能力。而且在做课程设计的过程中,不仅是考验自己所学的微机原理

温馨提示

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

评论

0/150

提交评论