单片机控制的波形发生器的设计

2018-10-19 06:52杨凌职业技术学院机电工程分院
电子世界 2018年19期
关键词:数字信号二进制流程图

杨凌职业技术学院机电工程分院 刘 红 熊 刚

1 前言

波形发生器是一种信号源,在电力电子、自动化控制等方面有着非常广泛的应用,现代社会许许多多的仪器仪表的性能都取决于波形发生器。本文介绍一种基于单片机和DA转换芯片设计的简易波形发生器,通过运行不同的程序来产生各种波形。

图1 硬件电路图

2 电路设计

单片机采用美国ATMEL公司生产的一种低电压、高性能CMOS 8位控制器AT89C51;片内含8K字节可反复擦除的只读程序存储器(PEROM),为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。DA转换芯片采用DAC0832,其是并行输入、电流输出型的通用8位DA转换芯片,具有与单片机连接简便、控制方便、价格低廉等优点,被广泛应用于微机系统中。DAC0832每次输入数字为8位二进制数,基准电压范围为-10V~+10V;转换时间为lus;数据输入方式有直通、单缓冲、双缓冲;单一电源供电+5V~+15V;输出电流线性度可在满量程下调节;功耗为20mw。与单片机的连接电路如图1所示。

3 程序设计

锯齿波编程的设计思路是:先输出二进制最小值00H,然后按+1规律递增,当输出数据达到最大值0FFH时,再回到00H重复这一过程,程序流程图如图2所示。

图2 锯齿波程序流程图

根据流程图编制源程序:

ORG 0000H

LJMP MAIN

ORG 0100H

MAIN: MOV DPTR,#7FFFH ;指向0832的口地址

LOOP: MOV A ,#00H ;待转换的数据00H送A

LOOP1:MOVX @DPTR,A ;A 中的值送0832转换,输出对应模拟量

LCALL DELAY

INC A

CJNE A,#0FFH,LOOP1

MOV A,#00H

LJMP LOOP

DELAY:略 ;延时子程序,改变其时间参数可以改变波形发生的频率

END

(1)程序的运行结果是:程序运行后,单片机输出的二进制数在00H~0FFH范围内由小到大变化时,输出电压也将在0~5V范围内按照由小到大的规律变化。

(2)如果把产生波形输出的二进制数据以表格的形式预先存放在程序存储器中,再通过查表指令按顺序依次取出送至D/A转换器也可以得到锯齿波,同理通过编程还可以得到正弦波,这里不再说明。

(3)任何一种模拟周期信号,都可以转换成有规律的数字信号或者说有一组数字信号与之相对应。如果将某种波形对应的一个周期的数字信号预先存储在存储器中,将它取出来并通过数模转换电路转换为模拟信号,便能得到所需的波形。

4 结语

本设计以单片机为控制核心,介绍了A/D转换芯片ADC0809与51单片机的接口电路、数据传送方式和数据传送的编程方法。通过修改程序就可以输出其他波形,具有硬件结构简单、波形输出稳定、扩展性强等特点,有较高的应用价值。

引文

①孙勤江,沈彬.基于单片机的信号发生器设计[J].石油和化工设备,2014,(01):11-23.

②谢增忠.基于单片机的波形发生器的硬件设计[J].数字化用户,2013,(03):32-41.

③陈高峰,熊刚,胡启迪.单片机原理及应用[M].北京:北京大学出版社,2012.

猜你喜欢
数字信号二进制流程图
用二进制解一道高中数学联赛数论题
数字信号分析中存在的误区与解决对策
有趣的进度
二进制在竞赛题中的应用
两种数字信号浪涌保护器(SPD)测试分析
数字电子技术中的数字信号和数字电路
基于小波神经网络的数字信号调制方式识别
专利申请审批流程图
专利申请审批流程图
宁海县村级权力清单36条