zhouguoping

  • 2020-01-15
  • 发表了日志: STM32F030F4P6多通道ADC DMA采样数值为4095问题总结

  • 发表了主题帖: STM32F030F4P6多通道ADC DMA采样数值为4095问题总结

    本帖最后由 zhouguoping 于 2020-1-15 10:55 编辑     最近调试STM32F030F4P6多通道ADC DMA定时触发采样时,大发888新疆时时彩网址:碰到鬼了!此鬼折腾了我2天多的时间总算得出结论。     电路原理图:                                                    现象描述:     PA0,PA1外接2路模拟量,PA2,PA3当UART TTL电平使用,然后启用DMA 2通道定时器1的TRGO触发采样。第一版板子都调试成功了,第二版稍微修改了一下板子尺寸,元器件布局之类的,总之,原理上就将LED从PA4移到了PA5,其他都没有动。然后焊接板子调试,奶奶的,见鬼了!PA0接了其他传感器,PA1接了个TMP36,DMA缓存数组0的值(接其他传感器的值)正确,1的值(TMP36)为4095。     捉鬼过程:     1、测硬件,VCCA=3.28,VCC=3.28,REST=3.3V。么发现问题,因为板子元器件密度比较大,怀疑是不是底线没接好?因地线是走线加覆铜,而电源线专门走的20mil的线,么得怀疑。然后地线飞了两个线后问题依旧!     2、查代码,没发现啥问题。因使用IAR开发,FLASH的15扇区留作存参数,FLASH容量不够用了,将优化级别设置为Medium,怀疑是不是程序优化带来的问题?然后精简程序,想将优化级别改为Low,但是怎么折腾还是没达到目的,最后将串口部分功能注视掉,优化级别设置为Low,问题依旧!     3、修改代码中的怪相:将ADC_ChannelConfig(ADC1, ADC_Channel_0, ADC_SampleTime_55_5Cycles);中的ADC_SampleTime_55_5Cycles改为ADC_SampleTime_1_5Cycles,通道1的值不再是4095,但还是与外部测量的电压值对不上,比如0.8V的输入,缓存数组1里面的值是1600左右,后来发现,将通道转换时间或者是ADC的CLK调整的越高,采样值越低,越慢采样值越大。     4、因之前代码板子都是好的,并且之前的板子上的元器件已经拆到新板子上了,也就没法对比?第二天早上再搜网页,发现一网友也见过此鬼!“STM32F030的ADC严重问题”。原文连接 http://www.670.ib699.com/thread-464556-1-1.html 豁然想起也用示波器测测看,发现TMP36的信号线上叠加了一个2us的方波,而且将与电脑的RX拔掉就没了,再测RX线是5V的TTL电平,问题应该就在于这个5V的TTL电平吧?然后给5V的RX线中串接一个10K的电阻,一切正常了。这就是问题的结局。           问题回顾:      第一版用的是自制的3.3V TTL与电脑通信,故一切OK!第二版直接采用USB转232 TTL(TTL为5V电平,未测,之前不知)            疑惑:      PA4管脚的电平不对?为什么影响到了PA1?为什么么有影响到PA0?再说PA4都配置为UART管脚了,怎么又牵扯到芯片内部的模拟量的东东(当然完全没关系估计是不可能的!)?这么说来,那通信之类的干扰岂不是对模拟量影响很大?难道不是芯片的BUG?

最近访客

< 1/1 >

统计信息

已有28人来访过

  • 芯币:32
  • 好友:--
  • 主题:1
  • 回复:1
  • 课时:--
  • 资源:--

留言

你需要登录后才可以留言 登录 | 永利游戏现金直营


现在还没有留言

福彩快3投注平台开户直营网 申博太阳城管理平台游戏下载登入 永利棋牌上网导航 申博账号注册 注册就送体验金网上娱乐场
澳洲国际HG名人馆开奖 维多利亚幸运农场官网 澳门利澳娱乐场登入 手机娱乐城 技巧电子游戏 威尼斯人江西时时彩官网
申博湖南快乐十分最牛攻略 奥斯卡广东11选5最牛攻略 皇家HG名人馆时时彩软件 永利赌博游戏 申博太阳城VR彩票最牛攻略
世博娱乐登入网址 mg拉斯维加斯21点黄金桌登入 九五至尊百家乐直营登入 pt刀锋战士50条线 金冠MW电子时时彩网址