南桥杯嵌入式——ADC,DAC

软件

先设置引脚

ADC

HAL_Delay (200);
HAL_ADCEx_Calibration_Start(&hadc2,ADC_SINGLE_ENDED);
//自动校准ADC,HAL_ADCEx_Calibration_Start(ADC_HandleTypeDef *hadc, uint32_t SingleDiff)
//在HAL_ADC_Start();之前


		
ADC_ResetCalibration(ADC1);  	 //复位ADC
while(ADC_GetResetCalibrationStatus( ADC1));
ADC_StartCalibration( ADC1);  	//校准ADC
while(ADC_GetCalibrationStatus(ADC1));

ADC采集

uint16_t GetValue(void );
uint16_t GetValue() //ADC转换
{
    uint16_t ADC_value = 0;
	HAL_ADC_Start(&hadc2);					//启动ADC转换
	ADC_value = HAL_ADC_GetValue(&hadc2); 	//把获取到的值赋给ADC_value ;HAL_ADC_GetValue(ADC_HandleTypeDef *hadc);
	return ADC_value ;
}

DAC输出

先设置引脚


/* USER CODE BEGIN 2 */
void DAC_OutValue(float DAC_OutValue) //设置PA4的输出电压
{
	uint16_t value;	
	value= (4096*DAC_OutValue/3.3f);	
	HAL_DAC_SetValue(&hdac1, DAC_CHANNEL_1,DAC_ALIGN_12B_R,value);
	HAL_DAC_Start(&hdac,DAC_CHANNEL_1);//DAC通道选定
}

/* USER CODE END 2 */
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值