標(biāo)題:
STM32+AD9833的信號(hào)發(fā)生器程序(4X4鍵盤(pán)控制)
[打印本頁(yè)]
作者:
苦撐a
時(shí)間:
2020-12-19 08:38
標(biāo)題:
STM32+AD9833的信號(hào)發(fā)生器程序(4X4鍵盤(pán)控制)
硬件資源:
1,AD9833
2,OLED顯示屏
3,4*4矩陣鍵盤(pán)
◆硬件連接:
OLED顯示屏------>stm32大黃板
VCC------>VCC
GND------>GND
SCL------>PB6
SDA------>PB7
AD9833信號(hào)發(fā)生器------>stm32大黃板
VCC------>VCC
GND------>GND
FSY------>PB10
CLK------>PB11
DAT------>PA12
CSP------>A11
4*4矩陣鍵盤(pán)
PA0-PA7
◆實(shí)驗(yàn)現(xiàn)象:
通過(guò)按鍵控制產(chǎn)生正弦波、方波、三角波,頻率和幅值可通過(guò)按鍵輸入數(shù)字設(shè)置
單片機(jī)源程序如下:
#include "key.h"
#include "delay.h"
#include "sys.h"
#include "5110.h"
#include "math.h"
#include <stdlib.h>
#include "ad9833.h"
#include "source.h"
#include "oled.h"
#define CLK BIT_ADDR(GPIOA_ODR_Addr,10)
extern u32 freq;
extern u32 ampli;
int main(void)
{
u8 flag;
u8 keyval=0;
SystemInit();
delay_init();
AD9833_Init_GPIO();
OLED_Init();
OLED_Clear();
// LCD_set_XY(0,0);
// LCD_write_str("Signal");
// LCD_set_XY(0,1);
// LCD_write_str(" Generator");
// LCD_set_XY(0,3);
// LCD_write_str("Sin");
// LCD_set_XY(0,4);
// LCD_write_str("Square");
// LCD_set_XY(0,5);
// LCD_write_str("Sawtooth");
OLED_ShowString(0,0,"SIGNAL CREATER",24);
OLED_ShowString(0,3,"Sin",24);
OLED_ShowString(0,4,"Square",24);
OLED_ShowString(0,5,"Sawtooth",24);
delay_ms(200);
while(1)
{
keyval=HL_Scan();
switch(keyval)
{
case 13:
flag=1;
break;
case 14:
flag=2;
break;
case 15:
flag=3;
break;
}
source_creat(flag);
flag=0;
}
}
復(fù)制代碼
所有資料51hei提供下載:
AD9833(4X4鍵盤(pán)控制).7z
(194.59 KB, 下載次數(shù): 69)
2020-12-19 15:19 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1