基于单片机的函数信号发生器完整版汇编__键盘显示
- 格式:doc
- 大小:288.50 KB
- 文档页数:27
基于单片机和DAC0832的函数信号发生器的设计引言函数信号发生器是一种能够产生可调频率、可调振幅、可调相位和可调形状的电信号的设备。
它广泛应用于电子实验、通信、音频设备等领域。
本文介绍了一种基于单片机和DAC0832的函数信号发生器的设计方案。
单片机是一种集成电路,具有处理能力和存储能力,能够控制外围设备的工作。
DAC0832是一种数字模拟转换器,能够将数字信号转换为模拟信号。
设计原理函数信号发生器主要由脉冲发生单元、频率调节单元、振幅调节单元、相位调节单元和输出单元组成。
脉冲发生单元负责产生基础脉冲信号,频率调节单元负责调节脉冲信号的频率,振幅调节单元负责调节脉冲信号的振幅,相位调节单元负责调节脉冲信号的相位,输出单元负责将脉冲信号输出。
本设计采用了AT89C51单片机作为控制核心,DAC0832作为模拟输出芯片。
AT89C51是一种8位微控制器,具有强大的IO能力和丰富的外设接口。
DAC0832是一种8位DAC,具有较高的精度和稳定性。
设计步骤1.硬件设计硬件设计包括电路原理图的绘制和元器件的选型。
根据设计要求,确定电路中需要使用的电阻、电容、稳压器等元器件,并通过计算和选型手册选取合适的数值和型号。
2.软件设计软件设计包括单片机程序的编写和功能实现。
根据硬件设计的需求,编写控制程序,实现基础脉冲信号的生成和频率、振幅、相位的调节。
3.调试和测试将硬件组装完成后,使用示波器和信号发生器进行信号的调试和测试。
通过观察输出信号的频率、振幅、相位以及波形形状是否满足设计要求,对硬件和软件进行优化和调整。
4.功能扩展通过增加控制接口和调节电路,可以实现更多功能的拓展。
例如,通过添加旋钮、按键和显示屏等元件,实现手动调节和参数显示功能。
通过添加USB或无线通信模块,实现远程控制和数据传输。
结论本设计基于单片机和DAC0832的函数信号发生器,通过控制单片机和DAC芯片,实现了可调频率、可调振幅、可调相位和可调形状的信号输出。
┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊目录第一章绪论 (1)第二章方案设计与论证 (4)2.1方案一: (4)2.2方案二: (4)2.3方案比较 (4)第三章专用器件说明 (6)3.1 SPCE061单片机介绍 (6)3.1.1性能: (6)3.1.2 应用领域 (6)3.1.3 结构概览 (7)3.1.4通用I/O口的使用: (7)3.1.5 D/A转换 (8)3.1.6 IDE开发平台的使用 (9)3.1.7 PWM输出 (10)3.1.8 SPCE061A的时钟和定时器/计数器 (10)3.2 DM-1602显示器 (14)3.3 运算放大电路 (16)3.3.1 集成运放的电路结构和特点 (16)3.3.2 集成运放电路的组成及各部分的作用 (16)3.3.3 运算放大器电压传输特性 (17)3.3.4集成运放的主要性能指标 (18)第四章系统的硬件电路设计 (19)4.1系统框图 (19)4.2 SPCE061A基本工作电路设计 (19)4.3键盘电路设计 (20)4.4显示电路设计 (21)4.4信号输出电路设计 (22)第五章软件设计 (22)5.1主程序流程图 (22)5.2正弦波信号形成方法 (25)5.3三角波、锯齿波的形成 (26)5.4方波的形成和实现 (26)总结 (27)致谢 (28)参考文献 (29)附录1 程序 (29)第一章绪论测量仪器从宏观上可分为两大类,即激励和检测,激励仪器主要是各类信号发生器。
信号发生器按工作原理可分为:调谐信号发生器、锁相和合成信号发生器。
(1) 调谐信号发生器是由调谐振荡器构成。
传统调谐信号发生器都是由调谐振荡器和统调的调幅放大器(输出放大器)加上一些指示电路构成。
这种信号发生器结构复杂、频率范围窄,而且可靠性、稳定性较差,但其价格低廉。
随着半导体器件的发展,其性能有所改善。
(2) 锁相信号发生器是由调谐振荡器通过锁相的方法获得输出信号频率的信号发┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊生器。
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;按键控制数码管显示;;;;;;;;;;;;;;;;;;;;;;;共阳极接在PE口(PE[0..7]);;;;;;;;;;;;;;;;;;;;;;;;;;;按下按键则显示加1,显示0~F;;;;;;;;;;;;;;;;;;;;;;;;;;;2011-5-3 by 追梦;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;BIT2 EQU 0X00000004BIT6 EQU 0X00000040BIT8 EQU 0X00000100GPIOE EQU 0X40011800 ;GPIOE 地址GPIOE_CRL EQU 0X40011800 ;低配置寄存器GPIOE_CRH EQU 0X40011804 ;高配置寄存器GPIOE_ODR EQU 0X4001180C ;输出,偏移地址0Ch GPIOE_BSRR EQU 0X40011810 ;低置位,高清除偏移地址10h GPIOE_BRR EQU 0X40011814 ;清除,偏移地址14h IOPEEN EQU BIT6 ;GPIOE使能位IOPAEN EQU BIT2 ;GPIOA使能位KEY EQU BIT8 ;按键在PA.8GPIOA EQU 0X40010800GPIOA_CRH EQU 0X40010804 ;高配置寄存器GPIOA_IDR EQU 0X40010808RCC_APB2ENR EQU 0X40021018STACK_TOP EQU 0X20002000AREA RESET,CODE,READONL YDCD STACK_TOP ;MSP主堆栈指针DCD START ;复位,PC初始值ENTRY ;指示开始执行STARTLDR R1,=RCC_APB2ENRLDR R0,[R1] ;读LDR R2,=IOPEENORR R0,R2 ;改LDR R2,=IOPAENORR R0,R2 ;改STR R0,[R1] ;写,使能GPIOA,E时钟;PE[0..7] 8个引脚均设置成推挽式输出LDR R0,=0x33333333LDR R1,=GPIOE_CRLSTR R0,[R1];PA.8--KEY 浮空输入MOV R0,#0X04LDR R1,=GPIOA_CRHSTR R0,[R1]LDR R1,=GPIOE_ODRMOV R0,#0XFFSTR R0,[R1] ;初始时数码管无显示LDR R2,=GPIOA_IDR ;R2用于扫描按键LDR R5,=DPYTABLELOOPLDR R3,[R2]AND.W R3,#KEYCMP R3,#0BNE LOOPPUSH {R0}MOV R0,#10BL.W DELAY_NMS ;延时10ms用于消除抖动POP {R0}LDR R3,[R2]AND.W R3,#KEYCMP R3,#0BNE LOOPADD R4,#1CMP R4,#15BLE KEYINMOV R4,#0KEYINLDRB R0,[R5,R4]EOR R0,#0XFFSTR R0,[R1]WAIT_TO_UP ;等待按键弹起LDR R3,[R2]AND.W R3,#KEYCMP R3,#0BEQ W AIT_TO_UPB LOOP;延时R0(ms),误差((R0-1)*4+12)/8us;延时较长时,误差小于0.1%DELAY_NMSPUSH {R1} ;2个周期DELAY_NMSLOOPSUB R0,#1MOV R1,#1000DELAY_ONEUSSUB R1,#1NOPNOPNOPCMP R1,#0BNE DELAY_ONEUSCMP R0,#0BNE DELAY_NMSLOOPPOP {R1}BX LR;子程序,将R0低八位右循环移一位,高位不变ByteRor1PUSH {R1,R2,R3}LDR R3,=0XFFFFFF00LSR R1,R0,#1AND R1,#0X0000007FAND R2,R0,#0X01LSL R2,#7ORR R1,R2AND R0,R3ORR R0,R1POP {R1,R2,R3}BX LR;共阴极数码管的码表,使用时先取反DPYTABLE DCB 0X3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0X07,0X7F,0X6F,0X77,0X7C,0X39,0X5E,0X79,0X 71,'\0'END。
基于51单片机的波形发生器的设计摘要这个系统是基于AT89C51单片机的波形信号发生器。
使用AT89C51单片机作为控制核心,该系统由数字/模拟转换电路(DAC0832)、运放电路(LM324)、按键电路和8位数码管等组成。
通过按键可控制方波、三角波、正弦波的产生,并且用数码管指示其对应的频率。
这个设计方法简单、性能良好,这个系统可在多种需要低频信号的场所使用,它具有良好的实用性。
关键词:8951单片机;数字模拟转换电路;运放电路;8位数码管一、设计题目分析。
1、题目分析:基于51单片机的波形发生器设计,即由51单片机控制产生正弦波、方波、三角波等的多种波形。
图1:系统流程示意图2、题目要求:(1) 系统具有产生正弦波、三角波、方波三种周期性波形的功能。
(2) 用键盘控制上述三种波形(同周期)的生成。
(3) 系统输出波形的频率范围为1Hz~1MHz,重复频率可调,频率步进间隔≤100Hz,非正弦波的频率按照10次谐波来计算。
(4) 系统具有显示输出波形的类型、重复频率和幅度的功能。
二、波形发生器系统设计方案1、设计思路:以AT89C51单片机作为系统的控制核心,其中P0口接DAC0832作为信号输入同时进行数模转换,P1口用来接键盘,P2口接LED显示器,由程序来控制P0口产生的波形,再由按键和按键次数控制波形的种类、频率的大小,并且能够通过按键来控制波形频率值和幅度值。
由运算放大器DAC0832来实现输出电流到电压的转换,即实现数字信号到模拟信号的转换。
另外在LED上显示实时的频率值,产生的波形在示波器显示。
2、设计框图及系统介绍:图2:框图设计3、选择合适的设计方案:方案一:采用模拟分立元件或单片函数发生器就可以产生正弦波、方波、三角波,方法简单。
通过调整外部元件也可以实现输出频率的改变,但采用模拟元器件造成元件分散性太大,从而产生的频率稳定性较差、抗干扰能力低、灵活性较差、而且精度低,不能实现任意波形转换和波形运算输出等方面自主控制功能。
基于单片机的函数信号发生器Document serial number【UU89WT-UU98YT-UU8CB-UUUT-UUT108】基于51单片机的函数信号发生器设计方案利用单片机AT89C52采用程序设计方法产生锯齿波、三角波、正弦波、方波四种波形,再通过D/A转换器DAC0832将数字信号转换成模拟信号,滤波放大,最终由示波器显示出来,能产生10Hz—10kHz的波形。
通过键盘来控制四种波形的类型选择、拨码开关控制频率的变化,并通过液晶屏1602显示其各自的类型以及数值,系统大致包括信号发生部分、数/模转换部分以及液晶显示部分三部分,其中尤其对数/模转换部分和波形产生和变化部分进行详细论述。
设计要求1)、利用单片机采用软件设计方法产生四种波形2)、四种波形可通过键盘选择3)、波形频率可调4)、需显示波形的种类及其频率方案设计1 信号发生电路方案通过单片机控制D/A,输出四种波形。
此方案虽输出的波形不够稳定,抗干扰能力弱,不易调节,但此方案电路简单、成本低。
因此选用此方案。
2 单片机的选择AT89C52单片机是一种高性能8位单片微型计算机。
它把构成计算机的中央处理器CPU、存储器、寄存器、I/O接口制作在一块集成电路芯片中,从而构成较为完整的计算机、而且其价格便宜。
3 显示方案采用LCD液晶显示器1602。
其功率小,效果明显,显示编程容易控制,可以显示字母。
4 键盘方案论证采用独立式键盘。
独立式键盘具有硬件与软件相对简单的特点,其缺点是按键数量较多时,要占用大量口线。
总体系统设计该系统采用单片机作为数据处理及控制核心,由单片机完成人机界面、系统控制、信号的采集分析以及信号的处理和变换,采用按键输入,利用液晶显示电路输出数字显示的方案。
将设计任务分解为按键电路、液晶显示电路等模块。
下图为系统的总体框图:总体方框图硬件实现及单元电路设计1单片机最小系统的设计AT89C52是片内有ROM/EPROM的单片机,因此,这种芯片构成的最小系统简单﹑可靠。
智能应用1 智能任意信号发生器的设计背景在电子产品调试和测量领域,常常需要有信号种类多、精度高且频率、幅度等信号参数方便可调的信号源。
尤其随着电子、通信、网络行业的发展,频段的分布日趋密集,更要求有高精度、高可靠性的信号源。
信号发生器则是一种常用的信号源,广泛地应用于电子电路调试、通信测试、控制系统仿真和教学实验测试等领域。
但是目前的产品体积大、电路复杂、价格高,无法满足用户对成本和便携性要求高的波形发生器的需求。
本设计是以多种函数信号产生为目的,用单片机作为中央处理控制器,函数信号经数学运算解析成程序算法,直接由软件程序产生波形信号数据送给数摸转换输出,可以用来给测试电路及设备提供波形,实现智能化波形发生器的作用。
2 智能任意信号发生器的总体设计本设计是将目前信号发生器产品多而复杂的外围功能部件整合到具有模数混合功能设计的的单片机内部电路中,提高该仪器仪表的集成度和可靠性,同时降低了系统的成本,利用单片机片丰富的内部资源和功能部件增强仪器的性能,因此,该方案在提高仪器仪表可靠性、实用性及性价比方面取得非常好的效果。
利用单片机作为波形存储及控制元件,运用软件函数运算法产生多种波形,通过键盘电路控制波形,实现高精度、任意波形、便携式、智能化信号发生器。
■2.1 总体硬件设计方案及分框图介绍2.1.1 智能任意信号发生器设计方案该信号发生器的主要技术指标如下:频率范围:50Hz~10MHz;输出波形:正弦波、三角波,脉冲(占空比可调),梯形波,DC信号等;占空比调节范围:各输出波形均可在25%~75%范围内调节;输出信号幅度:10V(p-p);输出信号参考电平:-5V~+5V;输出阻抗:50Ω~100Ω。
2.1.2 分框图的简介电源:将采用AS1117等电源芯片提供单片机和外围电路的工作电压。
单片机:选用C8051F020用来将编写的程序存储在芯片中。
存储器: 单片机中的读写存储单元。
D/A:将数字信号转换成模拟信号。
电路综合实习报告课程题目:基于单片机D/A转换设计函数信号发生器摘要:以51单片机为核心设计函数信号发生器,采用程序设计方法产生正弦波,方波,三角波,方波,锯齿波,波形的频率在一定频率范围内可任意改变。
通过键盘来控制四种波形的类型选择与频率变化,并通过液晶屏1602显示其各自的类型及数值。
主要包括信号发生部分、D/A转换部分以及液晶显示部分。
关键词:D/A转换,液晶显示主要内容:1.实习原理2.实习内容1)系统设计●设计要求●方案设计(各模块设计)●软件设计流程2)通过示波器对波形种类及频率进行测试●测试说明●测试过程●测试结果3.实习的心得体会4.附录:源程序1.实习原理:●系统总体框图●主控芯片AT89S52●DAC0832的内部结构:D/A转换原理图DAC0832是双列直插式8位D/A转换器。
能完成数字量输入到模拟量(电流) 输出的转换。
其主要参数如下:分辨率为8位,转换时间为1μs,满量程误差为±1LSB,参考电压为-10V~+10V,供电电源为+5V~+15V,逻辑电平输入与TTL兼容。
DAC0832中有两级锁存器,第一级锁存器称为输入寄存器,它的允许锁存信号为ILE,第二级锁存器称为DAC寄存器,它的锁存信号也称为通道控制信号 /XFER。
●液晶屏的显示●矩阵键盘2.实习内容:1)系统设计利用AT89S52单片机采用程序设计方法产生锯齿波、正弦波、方波、三角波四种波形,再通过D/A转换器DAC0832将数字信号转换成模拟信号,滤波放大,最终由示波器显示出来,通过键盘来控制四种波形的类型选择、频率变化,最终输出显示其各自的类型以及数值。
●设计要求1)基于单片机的D/A转换用软件编程产生四种波形,分别为:锯齿波,正弦波,方波,三角波;2)通过键盘选择四种波形类型;3)波形频率可调;●方案设计论证显示方案论证:方案一:采用LED数码管。
LED数码管由8个发光二极管组成,每只数码管轮流显示各自的字符。
成都电子机械高等专科学校毕业设计说明书(论文)设计(论文)题目:低频函数信号发生器的设计专业: 应用电子技术班级:学号: 20 姓名:指导教师:摘要:信号发生器是一种常用的信号源,广泛地应用于电子电路、自动控制系统和教学实验等领域。
目前使用的信号发生器大部分是函数信号发生器,且特殊波形发生器的价格昂贵。
所以本设计使用的是AT89c51单片机构成的发生器,可产生三角波、方波、正弦波,波形的频率可用程序控制改变。
在单片机的输出端口接DAC0832进行D/A转换,再通过运放进行波形调整,最后输出波形接在示波器上显示。
本设计具有线路简单、结构紧凑、价格低廉、性能优越等优点。
关键词:信号发生器;单片机;波形调整目录第1 章绪论 (2)课题背景 (3)第2章低频信号发生器的方案研究 (3)总体方案论证与设计 (3) (4)第3 章硬件电路的设计 (4)基本原理 (5) (5)AT89C51单片机介绍 (5)D/A转换电路的设计 (7)第4 章软件设计 (10)软件总体设计 (10)程序流程图 (10)主函数流程图 (10)键盘扫描程序 (10)仿真过程 (16)结论 (19)参考文献 (19)第 1 章绪论课题背景随着电子测量及其他部门对各类信号发生器的广泛需求及电子技术的迅速发展,促使信号发生器种类增多,性能提高。
尤其随着70年代微处理器的出现,更促使信号发生器向着自动化、智能化方向发展。
现在,许多信号发生器带有微处理器,因而具备了自校、自检、自动故障诊断和自动波形形成和修正等功能,可以和控制计算机及其他测量仪器一起方便的构成自动测试系统。
当前信号发生器总的趋势是向着宽频率覆盖、低功耗、高频率精度、多功能、自动化和智能化方向发展。
在科学研究、工程教育及生产实践中,如工业过程控制、教学实验、机械振动试验、动态分析、材料试验、生物医学等领域,常常需要用到低频信号发生器。
而在我们日常生活中,以及一些科学研究中,锯齿波和正弦波、矩形波信号是常用的基本测试信号。
基于单片机函数信号发生器的设计摘要:本文设计的函数发生器采用STC89C51 单片机作为控制核心,外围采用数字/模拟转换电路(DAC0832)、运放电路(LM324)、按键和LED显示灯电路等。
电路采用AT89S51单片机和一片DAC0832数模转换器组成数字式低频信号发生器。
通过按键控制可产生方波、锯齿波、三角波、正弦波等,同时用LED 显示灯指示对应的波形。
所产生的波形幅度在一定范围内可调,波形准确并且平滑。
本文设计的函数信号发生器,它具有价格低、性能高和在低频范围内稳定性好、操作方便、体积小、耗电少等特点。
由于采用了LM324运算放大器,使其电路更加具有较高的稳定性能,性能比高。
此电路清晰,出现故障容易查找错误,操作简单、方便。
关键词:单片机;信号发生器;运放器Signal generator established on The MCU function designAbstract:Function generator of this design uses STC89C51 microcontroller as the control core, the external D/A conversion circuit (DAC0832), op amp circuit (LM324), keyboard and LED display circuit etc.. The circuit uses AT89S51 microcontroller and a DAC0832 DAC digital low frequency signal generator. Through the button control can produce Fang Bo, sawtooth wave, triangle wave, sine wave, with LED display the corresponding waveform. The wave amplitude generated can be adjusted in a certain range, accurate and smooth waveform.Function signal generator is designed in this paper, it has the characteristics of low price, high performance and low frequency range, good stability, convenient operation, small size, less power consumption etc.. Due to the adoption of the LM324 operational amplifier, the circuit stability has more high, high performance. This circuit is clear, the fault is easy to find the error, simple operation, convenient.Keywords: Single chip microcomputer;Signal generator;Operational amplifier目录第一章绪论 (1)1.1单片机概述 (1)1.2课题研究的社会实用意义及应用领域 (1)1.3 研究内容 (1)第二章单元电路的设计 (2)2.1系统设计 (2)2.1.1系统方案的比较 (2)2.1.2芯片选择模块 (2)2.2单片机模块及电源模块的设计 (3)2.2.1单片机模块 (3)2.3D/A转换模块 (3)2.4显示模块的设计 (5)第三章硬件电路的设计 (6)3.1系统框图 (6)3.2资源分配 (6)3.3最小单片机系统设计 (6)3.3.1STC89C51的引脚图 (7)3.3.2管脚说明 (8)3.3.3STC89C51的晶振及其连接方法 (10)3.3.4STC89C51的复位 (11)3.3.5芯片擦除 (11)3.4各部分电路原理 (12)3.4.1DAC0832芯片原理 (12)3.4.2LM324工作原理 (14)第四章软件设计 (15)4.1主程序流程图 (15)4.2方波程序流程图 (16)4.3三角波程序流程图 (17)4.4锯齿波程序流程图 (17)4.5 正弦波程序流程图 (18)第五章系统测试及结论 (19)5.1产生各种波形电压输出范围及频率如下: (19)5.2示波器测试的波形 (19)5.3设计与实验中应注意的问题及解决问题的措施 (20)5.3.1安装与调试 (20)5.3.2遇到的问题与解决 (20)第六章结论与心得 (22)参考文献 (23)附录1 硬件电路元件装配图 (24)附录2 模拟组装和PC板连接线图 (25)附录3 波形发生器程序 (25)第一章绪论1.1单片机概述伴随着信息技术及集成电路技术的大规模快速发展,所谓单片机就是指“CPU即中央处理器、RAM即随机存取存储器、ROM只读存储器、(I/O)即输入输出接口、定时器/计数器,串行通信接口”,和其余一些关于计算机外部电路即外围等都可以聚集在相同的一块芯片上,从而组成了单片微型计算机”[1]。