2022-08-14 10:29:05 +08:00
|
|
|
|
/******************************************************************************************************************************************
|
|
|
|
|
* 文件名称: SWM341_dac.c
|
|
|
|
|
* 功能说明: SWM341单片机的DAC模块驱动库
|
|
|
|
|
* 技术支持: http://www.synwit.com.cn/e/tool/gbook/?bid=1
|
|
|
|
|
* 注意事项:
|
|
|
|
|
* 版本日期: V1.1.0 2017年10月25日
|
|
|
|
|
* 升级记录:
|
|
|
|
|
*
|
|
|
|
|
*
|
|
|
|
|
*******************************************************************************************************************************************
|
|
|
|
|
* @attention
|
|
|
|
|
*
|
|
|
|
|
* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS WITH CODING INFORMATION
|
|
|
|
|
* REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. AS A RESULT, SYNWIT SHALL NOT BE HELD LIABLE
|
|
|
|
|
* FOR ANY DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE CONTENT
|
|
|
|
|
* OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING INFORMATION CONTAINED HEREIN IN CONN-
|
|
|
|
|
* -ECTION WITH THEIR PRODUCTS.
|
|
|
|
|
*
|
|
|
|
|
* COPYRIGHT 2012 Synwit Technology
|
|
|
|
|
*******************************************************************************************************************************************/
|
|
|
|
|
#include "SWM341.h"
|
|
|
|
|
#include "SWM341_dac.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/******************************************************************************************************************************************
|
|
|
|
|
* 函数名称: DAC_Init()
|
|
|
|
|
* 功能说明: DAC 初始化
|
|
|
|
|
* 输 入: DAC_TypeDef * DACx 指定要被设置的DAC接口,有效值包括DAC
|
|
|
|
|
* uint32_t format 数据格式,可取值DAC_FORMAT_LSB12B、DAC_FORMAT_MSB12B、DAC_FORMAT_8B
|
|
|
|
|
* 输 出: 无
|
|
|
|
|
* 注意事项: 无
|
|
|
|
|
******************************************************************************************************************************************/
|
|
|
|
|
void DAC_Init(DAC_TypeDef * DACx, uint32_t format)
|
|
|
|
|
{
|
|
|
|
|
switch((uint32_t)DACx)
|
|
|
|
|
{
|
|
|
|
|
case ((uint32_t)DAC):
|
|
|
|
|
SYS->CLKEN1 |= (0x01 << SYS_CLKEN1_DAC_Pos);
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
2023-12-12 18:23:12 +08:00
|
|
|
|
SYS->DACCR &= ~SYS_DACCR_VRADJ_Msk;
|
|
|
|
|
SYS->DACCR |= ((SYS->BACKUP[2] & 0x1F) << SYS_DACCR_VRADJ_Pos);
|
|
|
|
|
|
2022-08-14 10:29:05 +08:00
|
|
|
|
DACx->CR = (format << DAC_CR_DHRFMT_Pos);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/******************************************************************************************************************************************
|
|
|
|
|
* 函数名称: DAC_Open()
|
|
|
|
|
* 功能说明: DAC 开启
|
|
|
|
|
* 输 入: DAC_TypeDef * DACx 指定要被设置的DAC接口,有效值包括DAC
|
|
|
|
|
* 输 出: 无
|
|
|
|
|
* 注意事项: 无
|
|
|
|
|
******************************************************************************************************************************************/
|
|
|
|
|
void DAC_Open(DAC_TypeDef * DACx)
|
|
|
|
|
{
|
2023-12-12 18:23:12 +08:00
|
|
|
|
DACx->CR |= (1 << DAC_CR_EN_Pos);
|
2022-08-14 10:29:05 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/******************************************************************************************************************************************
|
2023-12-12 18:23:12 +08:00
|
|
|
|
* 函数名称: DAC_Close()
|
2022-08-14 10:29:05 +08:00
|
|
|
|
* 功能说明: DAC 关闭
|
|
|
|
|
* 输 入: DAC_TypeDef * DACx 指定要被设置的DAC接口,有效值包括DAC
|
|
|
|
|
* 输 出: 无
|
|
|
|
|
* 注意事项: 无
|
|
|
|
|
******************************************************************************************************************************************/
|
|
|
|
|
void DAC_Close(DAC_TypeDef * DACx)
|
|
|
|
|
{
|
|
|
|
|
DACx->CR &= ~DAC_CR_EN_Msk;
|
|
|
|
|
}
|