[求助] STM32F767的DAC输出的问题

flyriz   2020-11-26 15:36 楼主

大家好,碰到一个很奇怪的问题:如上图,STM32F767的两上管脚配置成两个DAC的输出,现在一个DAC(P51)可以正常输出,另一个DAC(P50)输出异常,一直为低电平。将P50配置成IO口输出高电平,则又正常了。引脚后面的线路已经全部断开了,可以排除是后端电路的影响。且程序在另外4片板子上都没有问题,基本也可以排除程序的问题。VREF+,VDDA,VSSA都量过了,是正常的。芯片也换过两片。请教下大家,还有其他的什么原因吗?

QQ五笔截图未命名.jpg

本帖最后由 flyriz 于 2020-11-26 16:20 编辑
学如春起之苗,不见其增,日有所长;

回复评论 (17)

芯片换过,显然芯片都恰好损坏的可能性极低。在别的板子上正常,仅在特定的板子上不正常,如果你说的“别的板子”与故障板的设计相同,那确实可以排除程序问题。在后端电路断开的情况下问题依旧,那么只剩下PCB问题了。仔细检查故障DAC通路的PCB局部,不过你前面又说配置成IO是正常的,不知你配置成什么模式,如果是推挽输出的高电平,那PCB有局部轻微短路问题确实可能维持得住。不过这种情况应该能测出仅仅是输出幅值降低,不该是为0才对。所以,基于存在矛盾,怀疑你说的“在别的4块板子上正常”的说法,板子确实一样么?程序确实一样么?

上传了一些书籍资料,也许有你想要的:https://download.eeworld.com.cn/user/chunyang
点赞 (1) 2020-11-26 18:15

只是偶然现象还是必然现象,如果只是偶然现象那可能是芯片内部在某种情况下异常了。

点赞  2020-11-26 21:04
引用: chunyang 发表于 2020-11-26 18:15 芯片换过,显然芯片都恰好损坏的可能性极低。在别的板子上正常,仅在特定的板子上不正常,如果你说的&ldquo ...

板子是相同的一批,程序也是一样的,不过程序的算法有加密,需要根据每一个芯片的ID生成一个密钥输入到代码里,算法才能运行。

学如春起之苗,不见其增,日有所长;
点赞  2020-11-26 22:29
引用: flyriz 发表于 2020-11-26 22:29 板子是相同的一批,程序也是一样的,不过程序的算法有加密,需要根据每一个芯片的ID生成一个密钥输入到代 ...

那建议你在故障板上先运行一个测试代码,仅包含DAC输出部分就可以,不如设置一个数值,然后令DAC输出该数值,再测DAC的输出电压。

上传了一些书籍资料,也许有你想要的:https://download.eeworld.com.cn/user/chunyang
点赞  2020-11-26 23:44
引用: chunyang 发表于 2020-11-26 23:44 那建议你在故障板上先运行一个测试代码,仅包含DAC输出部分就可以,不如设置一个数值,然后令DAC输出该数 ...

试过了,也不行的。大佬还有什么建议吗?

学如春起之苗,不见其增,日有所长;
点赞  2020-11-27 08:50

记得以前弄dac时候用万用表量电压不正常,后来加一级跟随就好了,你先换示波器测一下看看是不是输出阻抗大的原因.

点赞 (1) 2020-11-27 11:47
引用: flyriz 发表于 2020-11-27 08:50 试过了,也不行的。大佬还有什么建议吗?

前面已说过,先仔细检查PCB,排除局部轻微短路问题,但你没有说清配置成IO输出正常的测试情况,故怀疑是代码问题。除此无它。

上传了一些书籍资料,也许有你想要的:https://download.eeworld.com.cn/user/chunyang
点赞  2020-11-27 15:13
引用: huo_hu 发表于 2020-11-27 11:47 记得以前弄dac时候用万用表量电压不正常,后来加一级跟随就好了,你先换示波器测一下看看是不是输出阻抗大的 ...

不会是这个原因,因为楼主说了其他板子正常,另外一路DAC也正常,显然不会用不同的测量方式,故而可以排除。

上传了一些书籍资料,也许有你想要的:https://download.eeworld.com.cn/user/chunyang
点赞  2020-11-27 15:15

这个太奇怪了,八成是焊接问题

点赞  2020-11-27 20:10

换一个通道试试输出。如果输出正确,且确信焊接没问题,找一下芯片的errata看看有没有什么特别的地方。

默认摸鱼,再摸鱼。2022、9、28
点赞  2020-11-29 11:42

另外4块板子DAC(P50)都好着,只有这一块不正常?那楼上说的没问题,肯定焊接造成的了。如果不是这个意思,那屏蔽掉DAC(P51),代码里只保留DAC(P50)呢

点赞  2020-11-30 09:34

@数码小叶 @freebsder  @chunyang

问题找到了,是挂在MCU上的一个EEPROM的问题,换掉之后就好了。

学如春起之苗,不见其增,日有所长;
点赞  2020-11-30 15:03
引用: flyriz 发表于 2020-11-30 15:03 @数码小叶 @freebsder  @chunyang 问题找到了,是挂在MCU上的一个EEPROM的问题,换掉之后就好 ...

那说明是存储器导致的程序问题,前面的判断不错。

上传了一些书籍资料,也许有你想要的:https://download.eeworld.com.cn/user/chunyang
点赞  2020-11-30 18:10
引用: flyriz 发表于 2020-11-30 15:03 @数码小叶 @freebsder  @chunyang 问题找到了,是挂在MCU上的一个EEPROM的问题,换掉之后就好 ...

eeprom怎么会影响dac输出?咋接的线?

默认摸鱼,再摸鱼。2022、9、28
点赞  2020-12-1 15:21
引用: freebsder 发表于 2020-12-1 15:21 eeprom怎么会影响dac输出?咋接的线?

就是正常的接线。

学如春起之苗,不见其增,日有所长;
点赞  2020-12-4 11:51
引用: flyriz 发表于 2020-12-4 11:51 就是正常的接线。

那就不知道啥意思了。eeprom按正常来说不会影响dac

默认摸鱼,再摸鱼。2022、9、28
点赞  2020-12-6 22:10

我也觉得 外接的eeprom 不会影响DAC

生活就是油盐酱醋再加一点糖,快活就是一天到晚乐呵呵的忙 =================================== 做一个简单的人,踏实而务实,不沉溺幻想,不庸人自扰
点赞  2020-12-15 09:11
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复