#include "stm32f4xx_hal.h" // 添加HAL库头文件 #include "main.h" /************************DA8568寄存器SR的值*****************************/ #define PrefixControlbyte 0x03//前缀控制字节 #define AddressOutA 0x0//通道A地址 #define AddressOutB 0x1//通道B地址 #define AddressOutC 0x2//通道C地址 #define AddressOutD 0x3//通道D地址 #define AddressOutE 0x4//通道E地址 #define AddressOutF 0x5//通道F地址 #define AddressOutG 0x6//通道G地址 #define AddressOutH 0x7//通道H地址 #define Featurebyte 0x0//特征字节 /*****DA8568寄存器SR的值-结尾*************************************/ /****************************DAC8568命令************************/ #define SETUP_INTERNAL_REGISTER 0 #define POWER_UP 1 #define RESET 2 /*****DAC8568命令-结尾*******************************************/ //---------------------------------------- Pin definition //---------------------------------------- Command definition #define DAC8568_EN_INTER_REF_STATIC 0x08000001 #define DAC8568_WRITE_UPDATE_SEL_DAC 0x03000000 //---------------------------------------- Reference Voltage #define DAC8568_REF_VOLTAGE 2.5 void DAC8568_Init(void); void DAC8568_Write_Update_Sel_DAC(uint32_t ChannelNum, uint32_t DACValue); // #define DAC8568_SYNC_H GPIO_SetBits(GPIOA,GPIO_Pin_15) // #define DAC8568_SYNC_L GPIO_ResetBits(GPIOA,GPIO_Pin_15) // #define DAC8568_SCLK_H GPIO_SetBits(GPIOC,GPIO_Pin_10) // #define DAC8568_SCLK_L GPIO_ResetBits(GPIOC,GPIO_Pin_10) // #define DAC8568_DIN_H GPIO_SetBits(GPIOC,GPIO_Pin_12) // #define DAC8568_DIN_L GPIO_ResetBits(GPIOC,GPIO_Pin_12) //引脚拉高拉低 #define DAC8568_CS_H HAL_GPIO_WritePin(DAC8568_CS_GPIO_Port, DAC8568_CS_Pin, GPIO_PIN_SET) #define DAC8568_CS_L HAL_GPIO_WritePin(DAC8568_CS_GPIO_Port, DAC8568_CS_Pin, GPIO_PIN_RESET) #define DAC8568_SCLK_H HAL_GPIO_WritePin(DAC8568_SCLK_GPIO_Port, DAC8568_SCLK_Pin, GPIO_PIN_SET) #define DAC8568_SCLK_L HAL_GPIO_WritePin(DAC8568_SCLK_GPIO_Port, DAC8568_SCLK_Pin, GPIO_PIN_RESET) #define DAC8568_DIN_H HAL_GPIO_WritePin(DAC8568_DIN_GPIO_Port, DAC8568_DIN_Pin, GPIO_PIN_SET) #define DAC8568_DIN_L HAL_GPIO_WritePin(DAC8568_DIN_GPIO_Port, DAC8568_DIN_Pin, GPIO_PIN_RESET) #define DAC8568_LD_H HAL_GPIO_WritePin(DAC8568_LD_GPIO_Port, DAC8568_LD_Pin, GPIO_PIN_SET) #define DAC8568_LD_L HAL_GPIO_WritePin(DAC8568_LD_GPIO_Port, DAC8568_LD_Pin, GPIO_PIN_RESET) void dac8568_init(void); void dac8568_set_voltage(unsigned char mCh,float mVol); void SPI_SendByte(uint8_t m); void DAC8568_Write_passageway(uint8_t Addressbyte, uint16_t Datashort); void DAC8568_Write_Command(uint8_t command); void dac8568_set_voltage(unsigned char mCh, float mVol); void dac8568_spi_init(void); void DAC8568_Init(void); void dac8568_output_ch0_1v5(void);