資源簡介
采用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個文件信息
- 上一篇:GPS STC15程序,51程序
- 下一篇:基于粒子群遺傳算法的云計算任務調度研究
評論
共有 條評論