STM32CubeMx DAC DMA 出力 + 正弦波表示 + ADC 取得 + SeriaPlot グラフィカル シリアル ポートの使用 (波形を確認するためのオシロスコープとして)

原理は大まかに言うと、たとえば、抵抗器のグループを制御するスイッチが多数あり、スイッチを操作して対応する電圧値を取得します。

通常のDAC:

 

 

 

 

 

DMA DAC は方形波を生成します。

 

 

 

 

 

 

 

 

 

電圧変換は浮動小数点0~3.3Vを直接入力可能

void dac_send(float V)
{
	int Send_V;
	Send_V=(int)(V*4095/3.3);
	HAL_DAC_SetValue(&hdac,DAC_CHANNEL_1,DAC_ALIGN_12B_R,Send_V);
}

DMA adc dac 機能と通常の DAC スタート機能 

HAL_ADC_Start_DMA(&hadc1,(uint32_t*)adc_buff,1);
HAL_TIM_Base_Start(&htim6);
//HAL_DAC_Start(&hdac,DAC_CHANNEL_1);
HAL_DAC_Start_DMA(&hdac,DAC_CHANNEL_1,(uint32_t*)Sine12bit,100,DAC_ALIGN_12B_R);

おすすめ

転載: blog.csdn.net/weixin_63163242/article/details/132045693