• 大小: 830KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-16
  • 语言: 其他
  • 标签: 亲测可用  

资源简介

采用STM32编写的DAC7612驱动程序,DAC7612可以同时输出两路DA

资源截图

代码片段和文件信息

#include “sys.h“
#include “DAC7612.h“
#include “delay.h“


//DAC7612为双通道电压输出,也可以单通道输出
//控制位为第13位和第12位 A0A1
//最大输出电压4.095V
//控制方式如下:
//   A1   A0   CLK   CS   LOAD    SERIALSHIFT      DAC_A       DAC_B 
//   X    X    X     H     H      NO Change       NO Change  NO Change
//   X    X    ↑    L     H      shift one bit   NO Change  NO Change
//   L    X    X     H     L      NO Change       DAC_out    DAC_out
//   H    L    X     H     L      NO Change       DAC_out    NO Change
//   H    H    X     H     L      NO Change       NO Change  DAC_out

//控制思路:当时钟为高电平的时候传送数据,时钟从高电平向低电平转化时数据发生变化
//函数功能:DA初始化
//函数输入:无
//函数输出:无
void DAC_Init(void)
{
RCC->APB2ENR=1<<2;             //使能端口A
GPIOA->CRL&=0xFFFFF000;        //清除012端口设置
GPIOA->CRL|=0x00000333;        //使能端口012为推挽输出
GPIOA ->ODR|=7<<0;             //设置为上拉模式
}




//函数功能:将数字量转换为模拟电压输出
//函数输入: dat   //电压
//函数输入:mode   //输出模式
//函数输出:无
void  Digital(u16 datu16 mode)
{
  u16 t=0;
u16 value=0;
u16 judge=0;                  //定义判断标志位
value=dat|mode;               //设置为双通道输出模式,可以通过宏定义修改
  SCLK=1;                       //时钟拉高
LOAD=0;                       //DA使能位拉低
delay_ms(1);                  //延时
LOAD=1;                       //DA使能,开始转换
delay_ms(1);                  //延时
for(t=0;t<14;t++)             //一共14位数据
{
SCLK=1;                      //在时钟为高电平的时候读取数据
delay_ms(1);
judge=(value< if(judge)
SDI=1;
else
SDI=0;
judge=judge<<1;               //在时钟从高电平向低电平变化时数据进行变化
  SCLK=0;
delay_ms(1);

}
SCLK=1;                       //时钟拉高
delay_ms(1);                  //延时
LOAD=0;                       //DA使能位拉低,结束转换
delay_ms(1);                  //延时
}






 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-07-11 21:54  DAC7612\
     目录           0  2018-07-12 09:26  DAC7612\HARDWORK\
     目录           0  2018-07-13 10:30  DAC7612\HARDWORK\DAC7612\
     文件        2037  2018-07-13 10:30  DAC7612\HARDWORK\DAC7612\DAC7612.c
     文件         356  2018-07-13 10:30  DAC7612\HARDWORK\DAC7612\DAC7612.h
     目录           0  2018-07-13 10:30  DAC7612\OBJ\
     文件      241480  2018-07-13 10:30  DAC7612\OBJ\dac7612.crf
     文件         590  2018-07-13 10:30  DAC7612\OBJ\dac7612.d
     文件      256528  2018-07-13 10:30  DAC7612\OBJ\dac7612.o
     文件      241044  2018-07-13 10:30  DAC7612\OBJ\delay.crf
     文件         517  2018-07-13 10:30  DAC7612\OBJ\delay.d
     文件      255868  2018-07-13 10:30  DAC7612\OBJ\delay.o
     文件      241876  2018-07-13 10:30  DAC7612\OBJ\fengmingqi.axf
     文件        1613  2018-07-13 10:30  DAC7612\OBJ\fengmingqi.build_log.htm
     文件       14136  2018-07-13 10:30  DAC7612\OBJ\fengmingqi.hex
     文件       51496  2018-07-13 10:30  DAC7612\OBJ\fengmingqi.htm
     文件         368  2018-07-13 10:30  DAC7612\OBJ\fengmingqi.lnp
     文件       74245  2018-07-13 10:30  DAC7612\OBJ\fengmingqi.map
     文件         479  2018-07-12 10:58  DAC7612\OBJ\fengmingqi.sct
     文件        5283  2018-07-13 10:30  DAC7612\OBJ\fengmingqi_Target 1.dep
     文件      245677  2018-07-13 10:30  DAC7612\OBJ\main.crf
     文件         637  2018-07-13 10:30  DAC7612\OBJ\main.d
     文件      259224  2018-07-13 10:30  DAC7612\OBJ\main.o
     文件          55  2018-07-13 10:30  DAC7612\OBJ\startup_stm32f10x_hd.d
     文件       49110  2018-07-13 10:30  DAC7612\OBJ\startup_stm32f10x_hd.lst
     文件        6740  2018-07-13 10:30  DAC7612\OBJ\startup_stm32f10x_hd.o
     文件      242358  2018-07-13 10:30  DAC7612\OBJ\sys.crf
     文件         456  2018-07-13 10:30  DAC7612\OBJ\sys.d
     文件      258284  2018-07-13 10:30  DAC7612\OBJ\sys.o
     文件      245928  2018-07-13 10:30  DAC7612\OBJ\usart.crf
     文件         578  2018-07-13 10:30  DAC7612\OBJ\usart.d
............此处省略32个文件信息

评论

共有 条评论