- #include "dac8532.h"
- #include "stm32f10x_lib.h"
- #include "stm32f10x_conf.h"
- #include "delay.h"
- #define DAC8532_PORT GPIOA
- #define DAC8532_SCL GPIO_Pin_1//SCL
- #define DAC8532_SDA GPIO_Pin_0//DIN
- #define DAC8532_SYNC GPIO_Pin_2//SYNC
- #define DAC8532_SCL_1 GPIO_SetBits(DAC8532_PORT,DAC8532_SCL)
- #define DAC8532_SCL_0 GPIO_ResetBits(DAC8532_PORT,DAC8532_SCL)
- #define DAC8532_SDA_1 GPIO_SetBits(DAC8532_PORT,DAC8532_SDA)
- #define DAC8532_SDA_0 GPIO_ResetBits(DAC8532_PORT,DAC8532_SDA)
- #define DAC8532_SYNC_1 GPIO_SetBits(DAC8532_PORT,DAC8532_SYNC)
- #define DAC8532_SYNC_0 GPIO_ResetBits(DAC8532_PORT,DAC8532_SYNC)
- void InitDAC8532GPIO(void)
- {
- GPIO_InitTypeDef GPIO_InitStructure;
- GPIO_InitStructure.GPIO_Pin = DAC8532_SCL|DAC8532_SDA|DAC8532_SYNC;
- GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
- GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
- GPIO_Init(DAC8532_PORT, &GPIO_InitStructure);
- DAC8532_SYNC_1;
- DAC8532_SCL_1;
- }
- static void WriteDAC8532Bit0(void)
- {
- DAC8532_SCL_1;
- delay_us_sys(1);//ʱ�Ӹߵ�ƽ
- DAC8532_SDA_0;//������Ч
- delay_us_sys(1);//������
- DAC8532_SCL_0;//�½���
- delay_us_sys(2);//���ݱ���
- //һ��bitΪһ������Ϊ4us�ķ���
- }
- static void WriteDAC8532Bit1(void)
- {
- DAC8532_SCL_1;
- delay_us_sys(1);//ʱ�Ӹߵ�ƽ
- DAC8532_SDA_1;//������Ч
- delay_us_sys(1);//������
- DAC8532_SCL_0;//�½���
- delay_us_sys(2);//���ݱ���
- //һ��bitΪһ������Ϊ4us�ķ���
- }
- static void WriteDAC8532Byte(u8 byteV)
- {
- int i;
- for(i=0;i<8;i++)
- {
- if((byteV&0x80)==0)
- {
- WriteDAC8532Bit0();
- }
- else
- {
- WriteDAC8532Bit1();
- }
- byteV<<=1;
- }
- }
- void WriteDAC8532(u16 val)
- {
- u8 byteH=(u8)(val>>8);
- u8 byteL=(u8)(val);
- u8 byteCtrl=0x10;
- //ͬ��λ��Ч
- delay_us_sys(1);
- DAC8532_SYNC_1;
- delay_us_sys(1);
- DAC8532_SYNC_0;
- delay_us_sys(1);
- //д�����ֽ�
- WriteDAC8532Byte(byteCtrl);
- //д���ֽ�
- WriteDAC8532Byte(byteH);
- //д���ֽ�
- WriteDAC8532Byte(byteL);
- //����
- DAC8532_SYNC_1;
- delay_us_sys(1);
- DAC8532_SCL_1;
- }
stm32-dac8532 联合开发网例程,证明DAC8532规格书中的写时序,实际是下降沿采集位信号,亲自测试8532也证明
最新推荐文章于 2023-12-02 21:25:01 发布