【Follow me第二季第3期】基础任务+DAC配置生成波形及性能测试
本帖最后由 聪聪哥哥 于 2025-1-12 14:04 编辑<p>和大家分享一下,使用RA6M5的DAC的功生成波形</p>
<p>DAC基本配置过程</p>
<p>在DAC模式配置过程中,需要配置DAC的输出引脚、工作模式、分辨率、输出范围等等,</p>
<p>DAC功能的性能指标:</p>
<p>1:分辨率是模拟输出电压可被分离的等级数,n位DA分辨率一般为1/2^n。位数越高,分辨率越高。</p>
<p>2:转换速度用来描述数字量变化引起模拟量变换的转换时间,具有的指标:建立时间和转换速率。</p>
<p> A/D转换一般步骤:</p>
<p>这里配置的时候,需要结合FSP的图形化配置软件,对底层的驱动代码的开发,很方便。</p>
<p>一:FSP库配置如下:</p>
<p>这里配置P014引脚为DAC0的引脚,并且映射过去,</p>
<div style="text-align: center;"></div>
<div>设置new stack 中g-dac 的软件:配置DAC的 引脚 P014的 引脚属性</div>
<div>
<div style="text-align: center;"></div>
<p> </p>
</div>
<p>程序编写流程如下:</p>
<p>1:初始化IO口,P014 为DAC输出引脚</p>
<p>2:进入主程序编写输出不同电压的数据</p>
<p>3:为了方便调试,这里使用的系统延时的方式进行调节。</p>
<p>4:这里为了方便测试,编写正弦波的产生函数程序:</p>
<p>主程序代码如下:</p>
<pre>
<code class="language-cpp"> while (1)
{
w += (PI / 30);
if (w >= (2 * PI))
{
w = 0;
}
dac_value = (sin(w) + 1) / 2 * 4095;
R_DAC_Write(&g_dac_ctrl, (uint16_t)dac_value);
R_DAC_Start(&g_dac_ctrl);
R_BSP_SoftwareDelay(1, BSP_DELAY_UNITS_MILLISECONDS);
}</code></pre>
<p>实际效果测试如下:</p>
<div style="text-align: center;"></div>
<div>测试视频如下:</div>
<div></div>
<p> </p>
页:
[1]