钻石会员
主题
回帖0
积分18480
阅读权限50
注册时间2012-12-12
最后登录1970-1-1
在线时间 小时
|
感谢 “老白 ”以烧板子的代价对DP50开机出现高电压烧板的提出问题,晚上下班回家立即检测了代码,终于在一个不起眼的地方找到了问题:
原来,对于DAC初始化,抄了一段官方给的代码:
//DAC
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4|GPIO_Pin_5;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_Init(GPIOA, &GPIO_InitStructure);
GPIO_SetBits(GPIOA,GPIO_Pin_4);
GPIO_SetBits(GPIOA,GPIO_Pin_5);
本也没注意,其实问题就在最后2行,不知道这段代码为什么要执行:
GPIO_SetBits(GPIOA,GPIO_Pin_4);
GPIO_SetBits(GPIOA,GPIO_Pin_5);
这2句代码的意思是键DAC输出的端口按普通IO口输出高电平,结果相当于DAC输出了3.3V,3R33的电压指向最高电压
看来,写STM32重别的地方找来的代码还要仔细阅读才行;
再次向大家表示歉意,请立即升级到版本1.7,
1.7以前的版本用户,切记不要挂着负载启动电源,按代码的逻辑,此时高压将持续1s以上,估计就会烧东西了,升级到1.7后,仍会有一个电压毛刺,但是只会持续10ms左右,这个时间,连个LED都烧不了,切切!!!!
升级网站:http://stm32.sinaapp.com/dp50/
|
|