新手学dac遇到的一个问题,希望各路前辈帮帮忙看一眼

2019-08-17 02:07发布

QQ截图20170710131813.png 这是主函数, QQ截图20170710131828.png 这是头文件
dac.c dac.c 这是dac.c


下载到32芯片后,用万能表测得PA4输出直流电压很小,接近0;通过和例程的对比,我省去了外部中断和TFT LCD显示,但是下例程单片机可以输出稳定的模拟电压值,下自己的程序却无法正确输出,希望各位大佬帮忙看一下,或者给我解释一下,0.0
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
453947330
1楼-- · 2019-08-17 02:54
抱歉是我搞错了,我知道怎么解决了,谢谢论坛!
453947330
2楼-- · 2019-08-17 06:19
在dac.c里,dac2.h表示我第二次的头文件,并不是DAC2通道,在dac1——setvalue(u16 volt)函数中float temp改为float temp=volt后仍无输出
执迷
3楼-- · 2019-08-17 06:20
volt都没用到怎么传入电压值,,temp是浮点数这个程序不会出错吗
453947330
4楼-- · 2019-08-17 06:56
 精彩回答 2  元偷偷看……
453947330
5楼-- · 2019-08-17 09:59
我刚才把那个dac1——setvalue去掉了,直接同DAC_SetChannel1Data(DAC_Align_12b_R,temp);这个函数,我、用不同的temp值来测试输出发现:temp=1100,Out=0.88V;temp=2200,Out=1.78V;temp=3300,Out=2.67V。根据这个数据,可算的得Uref=2.67V,但是例程的Uref=3.3V请问这是怎么回事?
执迷
6楼-- · 2019-08-17 12:08
453947330 发表于 2017-7-10 13:47
你好,这个我看到了,然后修改了float temp=volt,temp浮点数是因为后面还要除3.3,再转换为0-3300里的一 ...

你这一大堆Temp不就输出了一个4096吗、、、4096超过4095可能会被当成1处理。。换个小点的试试

一周热门 更多>