4540|4

3

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

机器上STM32F101的AD工作了几个月后读的数据都是4095不正常 [复制链接]

我的机器上是用STM32F101芯片,其中就要用到其AD功能,测试工作了几个月后突然发现AD读出来的值都是4095,于是我就调AD的频率,反正能调的都试过了还是不行,代码如下
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;
      GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;
      //GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
      GPIO_Init(GPIOB, &GPIO_InitStructure);
        
   RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1,ENABLE);
    /* ADC1 Configuration ------------------------------------------------------*/
   ADC_InitStructure.ADC_Mode = ADC_Mode_Independent;
   ADC_InitStructure.ADC_ScanConvMode = ENABLE;
   ADC_InitStructure.ADC_ContinuousConvMode = ENABLE;
   ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;
   ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right; //数据右对齐
   ADC_InitStructure.ADC_NbrOfChannel = 1;  //通道数目
   ADC_Init(ADC1, &ADC_InitStructure);

   /* ADC1 regular channel8 configuration */
  ADC_RegularChannelConfig(ADC1, ADC_Channel_8, 1, ADC_SampleTime_7Cycles5);
   /* Enable ADC1 */
   ADC_Cmd(ADC1,ENABLE);
   
   /* Enable ADC1 reset calibaration register */   
   ADC_ResetCalibration(ADC1);
   /* Check the end of ADC1 reset calibration register */
   while(ADC_GetResetCalibrationStatus(ADC1));

   /* Start ADC1 calibaration */
   ADC_StartCalibration(ADC1);
   /* Check the end of ADC1 calibration */
   while(ADC_GetCalibrationStatus(ADC1));

   ADC_SoftwareStartConvCmd(ADC1,ENABLE);   
   ADinit();
问题是为什么它工作一段时间后才罢工,是不是内部的AD模块坏了?正在郁闷当中。。。
此帖出自stm32/stm8论坛

最新回复

请问楼主现在问题解决了吗?   详情 回复 发表于 2023-5-4 15:54
点赞 关注
 

回复
举报

218

帖子

0

TA的资源

一粒金砂(高级)

沙发
 
内部基准,还是外部基准,看看基准是不是变成0了?
此帖出自stm32/stm8论坛
 
 

回复

1万

帖子

139

TA的资源

版主

板凳
 
如果之前正常,一段时间后不正常,别查什么程序了,说明器件已经损坏。普遍出现这种问题则说明设计有误。
此帖出自stm32/stm8论坛
 
个人签名上传了一些书籍资料,也许有你想要的:https://download.eeworld.com.cn/user/chunyang
 

回复

13

帖子

0

TA的资源

一粒金砂(初级)

4
 
帮你顶下   别问我是谁   我叫雷锋
此帖出自stm32/stm8论坛
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

5
 

请问楼主现在问题解决了吗?

此帖出自stm32/stm8论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表