版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、中北大学信息商务学院课程设计说明书 学生姓名:李 雅学号: 10050644X06 学生姓名:梁钧兰学号: 10050644X10 学生姓名:任 媛学号: 10050644X12 学院: 信息与通信工程 专业: 电子信息工程 题目: 专业综合实践之单片机部分: 用单片机实现波形发生器 指导教师: 王浩全 职称: 教授 2014 年 1 月 10 日中北大学课程设计任务书2013/2014 学年第 1 学期 学院: 信息与通信工程 专业: 电子信息工程 学生姓名:李 雅学号:10050644X06 学生姓名:梁钧兰学号:10050644X10 学生姓名:任 媛学号:10050644X12 课程设
2、计题目:专业综合实践之单片机部分: 用单片机实现波形发生器 起迄日期: 2013年12 月30 日2014年1月 10 日课程设计地点: 5院楼 201,510 实验室 指导教师: 王浩全 下达任务书日期: 2013 年 12 月30日课程设计任务书1设计目的:本课程设计主要针对电子信息工程专业课程体系设置的要求,安排的一种综合性的课程设计。一方面为了培养学生在查阅资料、复习、学习知识的基础上,进行包括机、电系统的设计、计算、仿真、编程、调试等多个环节的综合能力培养;另一方面,也是对学生进行毕业设计前的一次大型练兵,进一步培养学生独立地分析、解决实际问题的实际能力。另外还培养学生用专业的、简洁
3、的文字,清晰的图表来表达自己设计思想的能力。2设计内容和要求(包括原始数据、技术参数、条件、设计要求等):单片机选用89C51通过功能选择可以实现阶梯波、正弦波和三角波的输出3设计工作任务及工作量的要求包括课程设计计算说明书(论文)、图纸、实物样品等:(1)提供核心器件的工作原理与应用介绍;(2)提供用Protel设计的电路原理图,印刷板电路图;(3)提供用Multisim、MaxPlus、Proteus、Medwin、KeilC等软件对电路的仿真、编程与分析;(4)提供符合规定要求的课程设计说明书;(5)提供参考文献不少于15篇,且必须是相关的参考文献;课程设计任务书4主要参考文献:1 张毅
4、坤. 单片微型计算机原理及应用.西安电子科技大学出版社,19982 余锡存, 曹国华.单片机原理及接口技术.西安电子科技大学出版社,20003 吴黎明, 王桂棠,洪添胜等.单片机原理及应用技术.科学出版社,20054 韩克, 柳秀山等. 电子技能与 EDA 技术.暨南大学出版社, 20045 周润景, 张丽娜. 基于PROTEUS的电路及单片机系统设计与仿真.航空航天大学出版社, 20066 李俊谟.单片机中级教程北京航空航天大学出版社,20067 胡宴如模拟电子技术高等教育出版社,2004 8 李朝青.单片机原理及接口技术(修订版).北京:北京航空航天大学出版社,19989 李广弟.单片机基
5、础.北京:北京航空航天大学出版社,199210 何立民.单片机应用技术大全.北京:北京航空航天大学出版社,199411 朱定华,戴汝平等.单片微机原理与应用.北京交通大学出版社,清华大学出版社12 彭介华.电子技术课程设计指导.北京:高等教育出版社,199713 江思敏,陈明. Protel电路设计教程.北京:清华大学出版社14 彭楚武.微计原理与接口技术.长沙:湖南大学出版社15 张毅刚,彭喜源,谭晓昀,曲春波.MCS-51单片机应用设计.哈尔滨:哈尔滨工业大学出版社,19975设计成果形式及要求:(1)电路原理图、程序、仿真结果、PCB图;(2)课程设计说明书;6工作计划及进度:2013年
6、12月 30 日 2014年1 月 1 日:查阅资料;2014年:1 月 2 日 1 月 7 日:方案设计、实验验证;1 月8日 1 月 9 日:完成课程设计说明书;1 月 10 日:答辩。系主任审查意见:签字:年月日目录一引言6二 设计目的7三课题设计的内容71 实验原理72 实验内容72.1 系统硬件设计7 2.2 系统各个模块的8 2.2.1 单片机系统模块82.2.2 晶振时钟模块102.2.3 复位电路模块112.2.4 运用Protues软件模拟示波器进行仿真12四设计过程及数据131 信号发生器程序流程图132 硬件连线图133 系统波形控制的实现过程134 三角波的实现过程14
7、5 正弦波的实现过程156 阶梯波的实现过程17五 实验结果与分析181 实验现象、数据记录18六 设计总结与体会19七 参考文献19一引言波形发生器是一种常用的信号源,广泛地应用于电子电路、自动控制系统和教学实验等领域。例如在通信、广播、电视系统中都需要射频发射,这就需要信号发生器,在工业、农业、生物医学等领域内,如高频感应加热、熔炼、淬火、超声诊断、核磁共振图像等,都需要功率或大或小、频率或高过低的信号。在现代社会中,自动化技术早已渗透到社会生产的各个领域中,高精度、宽频率、高稳定性的信号发生器对于所属整体系统的性能改善和提高起着至关重要的作用。多波形的函数信号发生器是电子实验室的基础设备
8、之一,目前各类学校广泛使用的是标准产品,虽然功能齐全,性能指标高,但是价格昂贵,本文所研究的信号发生器采用单片机和DAC0832结合起来,通过数字电子电路向模拟电路转化,该系统虽然性能指标不如标准产品,但是它体积小,成本低,便于携带等特点,亦可作为电子随身设备之一。本次创新性实验将由AT89C51单片机和DAC0832数模转换器构成波形发生器,此波形发生器可产生方波、三角波、锯齿波、梯形波、阶梯波等多种波形,波形的幅值可以用程序进行改变,并可根据需要选择单极性输出,具有线路简单、结构紧凑、价格低廉、性能优越等优点。在本设计的基础上,加上按键用来更改不同波形之间的切换,实现不同波形的输出。二设计
9、目的本课程设计主要针对电子信息工程专业课程体系设置的要求,安排的一种综合性的课程设计。一方面为了培养学生在查阅资料、复习、学习知识的基础上,进行包括机、电系统的设计、计算、仿真、编程、调试等多个环节的综合能力培养;另一方面,也是对学生进行毕业设计前的一次大型练兵,进一步培养学生独立地分析、解决实际问题的实际能力。另外还培养学生用专业的、简洁的文字,清晰的图表来表达自己设计思想的能力。三课题设计的内容1 实验原理波形的产生是通过AT89C51单片机执行某一波形发生程序,向DAC0832转换器的输入端按一定的规律发生数据,从而在D/A转换电路的输出端得到相应的电压波形。AT89C51单片机的最小系
10、统有三种联接方式。一种是两级缓冲器型,即输入数据经过两级缓冲器型,即输入数据经过两级缓冲器后,送D/A转换电路。第二种是单级缓冲器型,输入数据经输入寄存器直接送入DAC寄存器,然后送D/A转换电路。第三种是两个缓冲器直通,输入数据直接送D/A转换电路进行转换,本设计采用单缓冲方式。此次实验设计由硬件设计和软件设计两部分组成,硬件部分利用proteus软件进行模拟仿真验证设计的正确性并产生不同波形,软件设计将利用汇编语言进行编程,通过Protues软件进行编译调试仿真,通过模拟示波器观察输出波形。实验原理框图如下所示:2 实验内容(1)单片机选用89C51。(2)通过功能选择可以实现阶梯波、正弦
11、波和三角波的输出。2.1 系统硬件设计本系统提供了三种不同的波形输出,通过三个按键控制相应的三角波、正弦波和阶梯波。每次只能有一个键按下,没有按键按下时没有波形产生,按键输入信号给单片机,单片机对按键的情况进行处理,例如第一个按键按下时,系统需要产生一个三角波,那么单片机循环输出0和1,那么通过DAC0832就通过运放循环输出高低电平,这样系统就能够输出三角波,同样的道理,正弦波和阶梯波的产生也可以采用相似的道理。本设计的硬件系统分为三个模块:单片机系统模块,DA转换模块,软件设计模块。2.2 系统各个模块的设计2.2.1 单片机系统模块(1)配置l 一个8位CPU,片内振荡器l 并行I/O口
12、,32根I/O口线l 一个串行口l 两个定时/计数器l 4K Byte 的 ROM l 128 Byte 的 RAMl 5个中断源,两个中断优先级l 可寻址64KB外部数据存储器空间单片机内部结构图如下所示:图单片机内部结构图(2)单片机管脚图及管脚功能介绍单片机管脚图如下:图 AT89C51单片机管脚图及并行口分布VCC:供电电压。GND:接地。P0口:P0口为一个8位漏极开路双向I/O口,每脚可吸收8TTL门电流。P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,
13、P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输
14、出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:管脚 备选功能P3.0 RXD (串行输入口)P3.1 TXD (串行输出口)P3.2 /INT0 (外部中断0)P3.3 /INT1
15、(外部中断1)P3.4 T0 (定时器0外部输入)P3.5 T1 (定时器1外部输入)P3.6 /WR (外部数据存储器写选通)P3.7 /RD (外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个A
16、LE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引
17、脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。2.2.2 晶振时钟模块单片机的工作过程是:取一条指令、译码、进行微操作,再取一条指令、译码、进行微操作,这样自动的、一步一步的由微操作依序完成相应的指令规定的功能。各指令的微操作在时间上有严格的次序,这种微操作的时间次序称作时序。AT89C51单片机的时钟信号通常由两种方式产生。一是内部时钟方式,二是外部时钟方式。内部时钟方式如图2.2-3(a)所示。只要在单片机的XT
18、AL1和XTAL2引脚外接晶振即可。图中,电容C1和C2的作用是稳定频率和快速起振,电容值在5-30pF,典型值为30pF。晶振CYS的震荡频率要小于12MHz,典型值6MHz、12MHz或11.0592MHz。外部时钟方式是把外部已有的时钟信号引入到单片机内,如图2.2-3(b)所示。此方式用于多片AT89C51单片机同时工作,并要求各单片机同步运行的场合图 89C51单片机时钟方式实际应用中通常采用外接晶振的内部时钟方式,晶振的频率高一些时可以提高指令的执行速度,但相应的功耗和噪声也会增加,在满足系统功能的前提下,应选择低一些的晶振频率。当系统要与PC机通信时,应选择11.0592MHz的
19、晶振,这样便于将波特率设定为标称值。2.2.3 复位电路模块复位是使单片机或系统中的其他部件处于某种确定的厨师状态。单片机的工作就是从复位开始的。当AT89C51的RST引脚加高电平复位信号(保持2个以上机器周期)时,单片机内部就执行复位操作。复位信号变低时,单片机开始执行程序。实际操作中,复位操作有两种基本形式:一种是上电复位,另一种是上电与按键均有效的复位,如图2.2-4(a)所示图 单片机复位电路上电复位要求接通电源后,单片机自动实现复位操作。常用的上电复位电路如图2.2-4(a)所示,上电瞬间RST引脚获得高电平,随着电容C1的充电,RST引脚的高电平将逐渐下降。RST引脚的高电平只要
20、能保持足够的时间(2个机器周期),单片机就可以进行复位操作。该电路的典型的电阻和电容参数为:晶振:12MHz时,C1为10uF,R1为8.2K;晶振为6MHz时,C1为22uF,R1为1K,本电路选用C1为1nF,R1为10K, R2为10K。按键与上电均有效的复位电路如图2.2-4(b)所示,上电复位原理与图2.2-4(a)相同,另外在单片机运行期间,还可以利用按键完成复位操作。晶振为6MHz时,R2为200。实际应用中如果单片机断电后,有可能在较短的时间内再次加电,可以在R1上并接一个放电二极管,这样可以有效的提高此种情况下复位的可能性。2.2.4 运用Protues软件模拟示波器进行仿真
21、 概述:Protues软件是英国Labcenter electronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC1
22、0/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多种编译。功能特点:丰富的器件库:超过27000种元器件,可方便地创建新元件;智能的器件搜索:通过模糊搜索可以快速定位所需要的器件;智能化的连线功能:自动连线功能使连接导线简单快捷,大大缩短绘图时间;支持总线结构:使用总线器件和总线布线使电路设计简明清晰;可输出高质量图纸:通过个性化设置,可以生成印刷质量的BMP图纸,可以方便地供WORD、POWERPOINT等多种文档使用。
23、(1)Protues可提供的仿真元器件资源:仿真数字和模拟、交流和直流等数千种元器件,有30多个元件库。 (2)Protues可提供的仿真仪表资源:示波器、逻辑分析仪、虚拟终端、SPI调试器、I2C调试器、信号发生器、模式发生器、交直流电压表、交直流电流表。理论上同一种仪器可以在一个电路中随意的调用。(3)除了现实存在的仪器外,Protues还提供了一个图形显示功能,可以将线路上变化的信号,以图形的方式实时地显示出来,其作用与示波器相似,但功能更多。这些虚拟仪器仪表具有理想的参数指标,例如极高的输入阻抗、极低的输出阻抗。这些都尽可能减少了仪器对测量结果的影响。 (4)Protues可提供的调试
24、手段 Protues提供了比较丰富的测试信号用于电路的测试。这些测试信号包括模拟信号和数字信号。软件仿真:支持当前的主流单片机,如51系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列、68000系列等。 (1)、提供软件调试功能。 (2)、提供丰富的外围接口器件及其仿真。RAM,ROM,键盘,马达,LED,LCD,AD/DA,部分SPI器件,部分IIC器件。这样很接近实际。在训练学生时,可以选择不同的方案,这样更利于培养学生。 (3)、提供丰富的虚拟仪器,利用虚拟仪器在仿真过程中可以测量外围电路的特性,培养学生实际硬件的调试能力。四设计过程及数据1 信
25、号发生器程序流程图2 硬件连线图3系统波形控制的实现过程要实现的各种波形通过开关的切换过程的流程图如下,通过开关状态进行选择:P1.0为0则输出三角波,P1.1为0输出正弦波,P1.2为0输出阶梯波。4 三角波的实现过程三角波的实现是设置一个初值,然后进行加数,同样是加到某个数之后再进行减数,减到初值之后就再返回到先前的操作。此程序输入的VREF的电压是5V,因此该波形输出的最大频率是初值为00H和最终值为0FFH,且步数为1,这样输出的波形是最大的。程序流程图如下图所示:给A设置初值MOV DPTR,#07FFFHMOVX DPTR,AA加1判断A是否已满?否是A减1判断是否等于初值?是开始
26、否三角波发生子程序如下: MOV DPTR,#7FFFH ; 设置D/A转换器的端口地址 L1:MOV R7,#00H ;A清零 MOV A,R7 L2: MOVX DPTR,A ;写外部存储器 NOP ;延时 NOP NOP INC A ;A加1 JNZ L1 ;不等与零则转L1 L3: MOVX DPTR,A ;写外部存储器5正弦波的实现过程正弦波的实现则相对比较复杂,因为正弦波的实现是输出各个点的值就行了,可是各个点值则要通过正弦函数来求出。输出的数据刚好是256个数据,这样则可以直接相加就行了正弦波发生子程序如下: MOV DPTR,#SINTAB ;正弦表写入内部RAM6DH-7FH
27、 MOV R0,#6DHLOOP: CLR A MOVC A,A+DPTR MOV R0,A INC DPTR INC R0 CJNE R0,#80H,LOOP MOV DPTR,#7FFFH ;设置D/A转换器的端口地址 MOV R0,#6DH ;设置正弦表指针LOOP1: MOV A,R0 ;查表 MOVX DPTR,A ;D/A转换 ACALL DELAY ;延时,等待转换结束 DEC R0 ;正弦表位移量增量 CJNE R0 #6DH,LOOP1 ;第一象限输出完?LOOP2: MOV A,R0 ;查表 MOVX DPTR,A ;D/A转换 ALCALL DELAY ;延时,等待转换结
28、束 DEC R0 ;正弦表位移量减量 CJNE R0 #6DH,LOOP2 ;第二象限输出完?LOOP3: MOV A,R0 ;查表 CPLA ;表值取反 MOVX DPTR,A ;D/A转换 ACLALL DELAY ;延时,等待转换结束 INC R0 ;正弦表位移量增量 CJNE R0,#7FH,LOOP3 ;第三象限输出完?LOOP4:MOV A,R0 ;查表 CPL A ;表值取反 MOVX DPTR,A ;D/A转换 ALCALL DELAY ;延时,等待转换结束 DEC R0 ;正弦表位移量减量 CJNE R0,#6DH,LOOP4 ;第四象限输出完? SJMP LOOP1DELA
29、Y:MOV R7,#200 ; 延时50ms DEL1:MOVR6,#123 NOP DEL2:DJNZ R6,DEL2 DJNZ R7,DEL1 RETSINTAB: DB 7FH,89H,94H,9FH,0AAH,0B4H,0C8H,0D1H,0D9H DB 0E0H,0E7H,0EDH,0F2H,0F7H,0FAH,0FCH,OFEH,0FFHEND6 阶梯波的实现过程阶梯波的实现过程是首先定义一个初值然后进行加法操作,加的步数的多少则根据要求的频率来进行。然后加到某个数之后就再重新设置为初值,再重复执行刚刚的操作,如此循环下去。在本程序中初值为00H.最大值为OFFH。流程图如下图所示。阶梯形波的发生子程序如下:JTB: MOV A,#0 MOV R1,#0AH LP: MOVX DPTR,A ACALL DELAY2 DJNZ R1,NEXT SJMPJTB NEXT: ADD A,#10 JBP1.4,START SJMPLPDELAY2: MOV 31H,#0FFH D2: DJNZ 31H,D2 RET五实验结果与分析1 实验现象、数据记录(1)、利用Keil软件进行编程调试(2)、利用Protues软件进行原理图绘制及波形仿真l 三角波的调试对三角波进行调试,调试过程如下图:l 正弦波波的调试对正弦波进行调试,调试过程如下图:l
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 47169-2026烟花爆竹喷花
- 2026年无人航空物流模式压降经营成本超30%
- 2026年PCR材料在新能源车轻量化部件与5G电磁屏蔽中的应用前景
- 2026年金融机构大模型应用战略规划编制指南
- 2026届浙江省新世纪学校初三月考试题(五)生物试题试卷含解析
- 2026年新疆昌吉州奇台县初三综合练习化学试题卷(三模)含解析
- 2026年山西省运城市新绛县市级名校中考化学试题一模考试试题含解析
- 2026年老年人陷入以房养老骗局典型案例抵押理财高息诱惑风险警示
- 湖北省襄阳市保康县2026年初三五月适应性考试化学试题文试卷含解析
- 2026届福建省晋江市安海片区初三一诊练习一化学试题含解析
- 氯化工艺考试题及答案(100题)
- 蛋白质能量营养障碍(儿科学)
- 苏少版美术六下《头饰和帽子》教案设计
- 初高中音标衔接课含发音单词学案-初高中英语衔接
- DB11-1134-2014高压电力用户安全用电规范
- QC成果提高预埋套管的安装质量
- 真空炉操作规程
- 物理竞赛大纲(新)
- 混凝土基本知识简介_PPT
- (高清版)建筑地面工程防滑技术规程JGJ_T 331-2014
- 数学教学目标的设定
评论
0/150
提交评论