基于51单片机的函数发生器设计

一.硬件方案

此函数信号发生器是基于单片机AT89C51设计而成的,能够产生频率范围在0Hz---535Hz的锯齿波、正弦波、三角波、矩形波四种波形,并且能够通过液晶屏1602显示各自的波形类型以及频率数值。电路主要由51单片机+最小系统+DA0832模数转换模块+运放模块+LED指示灯+按键模块;

二.设计功能

(1)LCD1602液晶显示波形种类和频率值(10-100HZ)。可产生正弦波、锯齿波、三角波、矩形波。

(2)按键设置波形种类和设定频率步进值。

(3)通过电位器器改变振幅(0V-3.5V稳定)。

(4)有四个指示灯分别指示发出的是哪种波形,方便明了。

三.设计原理图

(1)原理图主要采用AD软件进行设计,如图:

(2)Protues仿真图如下:

四.软件设计

主程序源码

c 复制代码
void main()					 //主函数
{	
	init_lcd();
	m=65536-(150000/pinlv);
	a=m/256;
	b=m%256;
	initclock();
	led0=0;
	while(1)
	{
		if(h==0)
		{
			keyscan();
		//	display();
		}
		 
		bujinjiance();

		switch(boxing)
		{
			case 0 : P1=sin[u]; break;
			case 1 : P1=juxing[u]; break;
			case 2 : P1=sanjiao[u]; break;
			case 3 : P1=juchi[u]; break;
		}
	}
}
void T0_time()interrupt 1		   //定时器
{
	TH0=a;
	TL0=b;
	u++;
	if(u>=64)
	u=0;
}

资料链接:https://pan.baidu.com/s/1Hbobp6qM0UzS0RvwStO2KA?pwd=5sjp

相关推荐
CV金科3 小时前
蓝桥杯—STM32G431RBT6(IIC通信--EEPROM(AT24C02)存储器进行通信)
stm32·单片机·嵌入式硬件·算法·蓝桥杯
嵌入式详谈5 小时前
基于STM32的智能风扇控制系统设计
stm32·单片机·嵌入式硬件
小小怪大梦想5 小时前
RTC实时时钟
stm32·单片机·嵌入式硬件
水饺编程9 小时前
【英特尔IA-32架构软件开发者开发手册第3卷:系统编程指南】2001年版翻译,1-2
linux·嵌入式硬件·fpga开发
电子科技圈9 小时前
IAR全面支持国科环宇AS32X系列RISC-V车规MCU
人工智能·嵌入式硬件·mcu·编辑器
SZPU领跑10 小时前
第十二届蓝桥杯嵌入式省赛程序设计题解析(基于HAL库)(第一套)
stm32·单片机·算法·职场和发展·蓝桥杯
逢生博客10 小时前
Rust 语言开发 ESP32C3 并在 Wokwi 电子模拟器上运行(esp-hal 非标准库、LCD1602、I2C)
开发语言·后端·嵌入式硬件·rust
Tlog嵌入式13 小时前
蓝桥杯【物联网】零基础到国奖之路:十六. 扩展模块之矩阵按键
arm开发·stm32·单片机·mcu·物联网·蓝桥杯·iot
打地基的小白13 小时前
UART通信—基于江科大源码基础进行的改进和解析
单片机·嵌入式硬件·uart通信·代码详解
黄小美32114 小时前
STM32(五)GPIO输入硬件电路及C语言知识复习
stm32·单片机·嵌入式硬件