📄 vs1003.h
字号:
/********************** vs1003相关的头文件**************/
#include "stm32l1xx.h"
//vs1003相关宏定义 寄存器
#define VS_WRITE_COMMAND 0x02
#define VS_READ_COMMAND 0x03
#define SPI_MODE 0x0
#define SPI_STATUS 0x1
#define SPI_BASS 0x2
#define SPI_CLOCKF 0x3
#define SPI_DECODE_TIME 0x4
#define SPI_AUDATA 0x5
#define SPI_WRAM 0x6
#define SPI_WRAMADDR 0x7
#define SPI_HDAT0 0x8
#define SPI_HDAT1 0x9
#define SPI_AIADDR 0xa
#define SPI_VOL 0xb
#define SPI_AICTRL0 0xc
#define SPI_AICTRL1 0xd
#define SPI_AICTRL2 0xe
#define SPI_AICTRL3 0xf
//vs1003相关宏定义 接口
#define VS_RESET GPIO_Pin_0 // PA
#define VS_SO GPIO_Pin_14 // PB
#define VS_SI GPIO_Pin_15 // PB
#define VS_SCK GPIO_Pin_13 // PB
#define VS_DERQ GPIO_Pin_1 // PA
#define VS_XCS GPIO_Pin_2 // PA
#define VS_XDCS GPIO_Pin_3 // PA
#define VS_RESET_SET() GPIO_SetBits(GPIOA, VS_RESET) //RESET = 1
#define VS_RESET_RESET() GPIO_ResetBits(GPIOA, VS_RESET) //RESET = 0
#define VS_SO_SET() GPIO_SetBits(GPIOA, VS_SO) //SO = 1
#define VS_SO_RESET() GPIO_ResetBits(GPIOA, VS_SO) //SO = 0
#define VS_SI_SET() GPIO_SetBits(GPIOA, VS_SI) //SI = 1
#define VS_SI_RESET() GPIO_ResetBits(GPIOA, VS_SI) //SI = 0
#define VS_SCK_SET() GPIO_SetBits(GPIOA, VS_SCK) // SCK = 1
#define VS_SCK_RESET() GPIO_ResetBits(GPIOA, VS_SCK) // SCK = 0
#define VS_DERQ_SET() GPIO_SetBits(GPIOA, VS_DERQ) //DERQ = 1
#define VS_DERQ_RESET() GPIO_ResetBits(GPIOA, VS_DERQ) //DERQ = 0
#define VS_XCS_SET() GPIO_SetBits(GPIOA, VS_XCS) //XCS = 1
#define VS_XCS_RESET() GPIO_ResetBits(GPIOA, VS_XCS) //XCS = 0
#define VS_XDCS_SET() GPIO_SetBits(GPIOA, VS_XDCS) //XDCS = 1
#define VS_XDCS_RESET() GPIO_ResetBits(GPIOA, VS_XDCS) //XDCS = 0
#define VS_SO_STATUS() GPIO_ReadInputDataBit(GPIOA,VS_SO) //get SO status
#define VS_DERQ_STATUS() GPIO_ReadInputDataBit(GPIOA,VS_DERQ) //get DERQ status
void SPI_write_byte(uint8_t ch) ; //SPI 写字符
uint8_t SPI_read_byte(void) ; //SPI 读字符
void VS_write_reg(uint8_t add,uint8_t h_dat,uint8_t l_dat) ; //写寄存器
uint16_t VS_read_reg(uint8_t add) ; //读寄存器 返回16位值
void VS_reset(void) ; //VS 硬件复位 软件复位
void VS_init(void) ; //VS复位, 先硬件复位和再软件复位,进行相关寄存器配置
void VS_write_data(uint8_t ch) ; //写入数据
void VS_sine_test(void) ; //正弦测试
void VS_mp3_play(void) ; //播放MP3文件
void delay_ms(uint32_t time) ; //毫秒延时
void delay_us(uint32_t time) ; //微秒延时
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -