剧透是什么意思| ast什么意思| 海参为什么越小越贵| 刀个刀个刀刀那是什么刀| 什么是多囊| 为什么身份证后面有个x| 教师节唱什么歌| 皮肤黑穿什么颜色的衣服显白| hpv18阳性是什么意思| 始于初见止于终老是什么意思| 重楼别名叫什么| 口腔溃疡是什么样子| 67年的羊是什么命| 部长是什么级别| 枸杞配什么壮阳| 喝豆腐脑有什么好处和坏处| 鬼最怕什么颜色| 榴莲为什么苦| 毫米后面的单位是什么| 葡萄糖为什么叫葡萄糖| 量贩式ktv是什么意思| 丹田是什么意思| 过人之处是什么意思| 分野是什么意思| 咖啡有什么好处| xxoo是什么意思| 今年为什么有两个6月| 五常法指的是什么| 心火旺失眠吃什么药| 直接胆红素是什么| 谷雨是什么季节| 竹勿念什么| 女人什么时候绝经正常| 拉屎是绿色的是什么原因| 腋下发黑是什么原因| 身上长白点是什么原因| 呕吐挂什么科| 谢谢谬赞是什么意思| 什么牌子的氨糖最好| 认贼作父是什么意思| 梦见蛇预示着什么| 嗜是什么意思| 县纪委副书记什么级别| 怀孕尿液是什么颜色| 血象是指什么| 假冒警察什么罪怎么判| 单方精油和复方精油有什么区别| 检查胃镜需要提前做什么准备| 什么药可以流产| 过敏性鼻炎喝什么茶好| 蓝颜知己什么意思| 颇负什么什么| 白鸡蛋是什么鸡下的蛋| 5岁属什么生肖| 胰腺占位是什么意思| 丙氨酸氨基转移酶高是什么意思| 艾灸有什么好处| 国家为什么重视合肥| 缺心眼是什么意思| 坐月子送什么礼物好| 兔子的耳朵有什么作用| 什么茶| 叫姑姑是什么关系| 性激素是什么| 12月14是什么星座| 半胱氨酸是什么| 豫州是现在的什么地方| 桃花是什么颜色的| 你最想做什么| 阴阳失调是什么意思| 日本人为什么喜欢喝冰水| 冰瓷棉是什么面料| 血糖高的人吃什么主食| peni是什么意思| 为什么会尿道感染| 动脉血是什么颜色| 离退休是什么意思| 伶牙俐齿是什么生肖| 月经期吃什么好| 菊花有什么颜色| 惹上官司是犯了什么煞| 血小板低吃什么好补| 火龙果是什么颜色| 舟可是什么字| 男性前列腺炎吃什么药| 秋刀鱼在中国叫什么鱼| 两个圈的皮带是什么牌子| 混社会的人一般干什么| 女人做什么好| 桃字五行属什么| 什么是辟谷| 甲亢吃什么药好| ieg是什么意思| 监督是什么意思| 散粉和粉饼有什么区别| 什么东西解酒| 洺字五行属什么| 点状钙化是什么意思| 怀孕天数从什么时候算起| 五月十四号是什么情人节| 吃什么可以补肾| pe什么材质| 梦到蛇是什么意思周公解梦| 今日什么冲什么生肖| 搬家当天有什么讲究| 大蒜泡酒治什么病| qq邮箱的格式是什么| 降压药什么时候吃好| 拉肚子吃什么水果好| 膝盖积液挂什么科| 灰配什么颜色好看| 认知障碍是什么意思| 鲫鱼喜欢吃什么| 我还能做什么| 肺门不大是什么意思| 为什么会胀气| 1976年五行属什么| 湿疹吃什么药好| 肠炎是什么原因引起的| 家族史是什么意思| 什么什么为笑| 大盘是什么意思| 猫咖是什么| 头发爱出油是什么原因| 月经血黑是什么原因| 孕妇梦见小蛇是什么意思| 刘邦和刘备什么关系| 木耳菜是什么菜| 伪娘是什么意思| 尿频是什么原因造成的| 了解是什么意思| 白牌车是什么身份| 尿痛吃什么药效果最好| 来月经有异味什么原因| 桑叶泡水喝有什么好处| 肾囊性灶是什么意思| 三头六臂指什么生肖| 孕妇喝什么水好| 打黄体酮针有什么副作用| 九价疫苗是什么| 百合和什么一起煮可以治失眠| hpv66阳性是什么意思| 什么手机电池最耐用| 牙龈经常发炎是什么原因| 妊娠纹是什么| 三月四号什么星座| 神经官能症挂什么科| 脂肪肝用什么药物治疗| 几天不大便是什么原因| 对冲是什么意思| cct是什么意思| 鳄鱼吃什么| 小孩睡觉出汗是什么原因| 辅食是什么意思| 可吸收线是什么颜色| pigeon是什么牌子自行车| 孩子打嗝是什么原因| 春宵一刻值千金什么意思| holly是什么意思| 下午17点是什么时辰| 命大是什么意思| 兰芝属于什么档次| 油脂旺盛是什么原因| l是什么单位| 医生为什么喜欢开地塞米松| 洁身自爱是什么意思| 日加匀念什么| 排骨和什么菜搭配最好| 七月七日是什么日子| 为什么不敢挖雍正陵墓| 50岁掉牙齿是什么原因| 程字五行属什么| 什么什么和谐| 什么耳朵| 1999年属兔是什么命| 水变成冰为什么体积变大| 气泡水是什么| 吃什么能提高记忆力| 窦性心动过速吃什么药| 词又被称为什么| 肠系膜淋巴结炎吃什么药最有效| 油菜籽什么时间种| 虎头什么尾| 下水是什么意思| 锋字五行属什么| 男人吃什么| 口腔溃疡吃什么药好的快| 什么是hpv感染| 出圈是什么意思| 氯化钾是什么东西| 韶关有什么特产| 2022年是属什么| 血压低吃什么补血| 牙疼有什么好办法| 中央民族大学什么档次| 簋是什么意思| 火葬场是什么生肖| 尿尿泡沫多是什么原因| 什么是白虎| 甘草是什么| 手心发痒是什么原因| 尿蛋白高是什么意思| 公测是什么意思| 血红蛋白偏低吃什么补| 眉梢有痣代表什么| 东陵玉是什么玉| 鸡蛋炒什么菜好吃| petct是什么| 笔记本电脑什么品牌好| 什么图强| 坚持是什么意思| 狂犬疫苗什么时候打| 吃四方是什么生肖| 分家是什么意思| 李白字什么号什么| 匡威属于什么档次| 事物指的是什么| 断眉有什么说法| 偏光和非偏光有什么区别| 太阳穴胀痛是什么原因| 灬是什么意思| 人体最长的骨头是什么| 系统性红斑狼疮不能吃什么| 贻笑大方什么意思| 两重天什么意思| gap是什么档次的牌子| 5年生存率是什么意思| sapphire手表什么牌子| 蚊子讨厌什么气味| 脸霜什么牌子的好| 事不过三是什么意思| ck香水属于什么档次| 疱疹用什么药可以根治| 肝郁气滞吃什么药好| 什么是纤维| 不来月经是什么原因| 三项规定内容是什么| 什么回大什么| 朝鲜面是什么原料做的| 什么生| 鱼腥草是什么| 先天性巨结肠有什么症状| 发瘟是什么意思| 聘书是什么| lof什么意思| 五常是什么| 高良姜是什么姜| 角化型脚气用什么药最好| 国际章是什么意思| 网线长什么样| 9月16日是什么星座| 梦见抽血是什么预兆| 吃什么水果对心脏有好处| 脚背痛什么原因引起的| 结甲是什么意思| 小孩为什么经常流鼻血| 冬虫夏草是什么东西| 小孩记忆力差是什么原因| 脑供血不足做什么检查| 手抖是什么病的预兆| 美业是什么行业| 经期不能吃什么水果| 盆腔积液是什么原因造成的| 羊肉馅饺子放什么菜| 百度
这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 ? 论坛首页 ? 嵌入式开发 ? STM32 ? 【原创】WL01涡流传感器数据不稳定问题--from小H

共19条 1/2 1 2 跳转至

【原创】WL01涡流传感器数据不稳定问题--from小H

工程师
2025-08-04 20:23:05     打赏
百度 当时这个孩子已经面朝湖底一动不动,情况万分危急,该老师立即向同伴大声呼救。

WL01涡流传感器工作原理:根据法拉第电磁感应原理,块状金属导体置于变化的磁场中或在磁场中作切割磁力线运动时(与金属是否块状无关,且切割不变化的磁场时无涡流),导体内将产生呈涡旋状的感应电流,此电流叫电涡流,以上现象称为电涡流效应。而根据电涡流效应制成的传感器称为电涡流式传感器。

WL01涡流传感器经常被用作硬币测量,因为不同面值硬币的大小和材质不同,从而涡流传感器读取的AD值不同,根据每种硬币AD值的不同范围,可以对不同面值的硬币进行区分。

1.jpg

在利用涡流传感器对金属进行测量时,经常会出现AD值测量错误,同一枚硬币利用不同的涡流传感器测到的AD值不一样等问题。

 

首先,虽然WL01涡流传感器的制作方法都是一样的,均由金属导体制成,但是由于不同的金属导体之间并不完全相同,所以在对同一枚硬币进行测量时,不同的涡流传感器测量到的值存在一些差异。

 

其次,不同环境的磁场不同,在不同磁场下的涡流传感器测量到的AD值也可能存在差异,所以在利用测量到的AD值进行代码编写时,最好是将这些AD值进行宏定义,在不同的环境下只需要去更改这些宏,就能使程序在不同环境下运行。

下面附上STM32对AD值进行采集的头文件代码:

#ifndef __ADC_H
#define  __ADC_H
 
 
#include "stm32f10x.h"
 
// ADC 编号选择
// 可以是 ADC1/2,如果使用ADC3,中断相关的要改成ADC3的
#define    ADC_APBxClock_FUN             RCC_APB2PeriphClockCmd
#define    ADCx                          ADC2
#define    ADC_CLK                       RCC_APB2Periph_ADC2
 
// ADC GPIO宏定义
// 注意:用作ADC采集的IO必须没有复用,否则采集电压会有影响
#define    ADC_GPIO_APBxClock_FUN        RCC_APB2PeriphClockCmd
#define    ADC_GPIO_CLK                  RCC_APB2Periph_GPIOC 
#define    ADC_PORT                      GPIOC
#define    ADC_PIN                       GPIO_Pin_1
// ADC 通道宏定义
#define    ADC_CHANNEL                   ADC_Channel_11
 
// ADC 中断相关宏定义
#define    ADC_IRQ                       ADC1_2_IRQn
#define    ADC_IRQHandler                ADC1_2_IRQHandler
 
//#define    ADC_IRQ                       ADC3_IRQn
//#define    ADC_IRQHandler                ADC3_IRQHandler
 
 
void ADCx_Init(void);
u16  Get_Adc(u8 ch);                            //获得某个通道值
u16 Get_Adc_Average(u8 ch,u8 times);//得到某个通道10次采样的平均值      
#endif /* __ADC_H */
 
 
 
#include "bsp_adc.h"
 
__IO uint16_t ADC_ConvertedValue;
 
 
/**
  * @brief  ADC GPIO 初始化
  * @param  无
  * @retval 无
  */
static void ADCx_GPIO_Config(void)
{
       GPIO_InitTypeDef GPIO_InitStructure;
      
       // 打开 ADC IO端口时钟
       ADC_GPIO_APBxClock_FUN ( ADC_GPIO_CLK, ENABLE );
      
       // 配置 ADC IO 引脚模式
       // 必须为模拟输入
       GPIO_InitStructure.GPIO_Pin = ADC_PIN;
       GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;
      
       // 初始化 ADC IO
       GPIO_Init(ADC_PORT, &GPIO_InitStructure);                       
}
 
/**
  * @brief  配置ADC工作模式
  * @param  无
  * @retval 无
  */
static void ADCx_Mode_Config(void)
{
       ADC_InitTypeDef ADC_InitStructure;
 
       // 打开ADC时钟
       ADC_APBxClock_FUN ( ADC_CLK, ENABLE );
      
       // ADC 模式配置
       // 只使用一个ADC,属于独立模式
       ADC_InitStructure.ADC_Mode = ADC_Mode_Independent;
      
       // 禁止扫描模式,多通道才要,单通道不需要
       ADC_InitStructure.ADC_ScanConvMode = DISABLE ;
 
       // 连续转换模式
       ADC_InitStructure.ADC_ContinuousConvMode = ENABLE;
 
       // 不用外部触发转换,软件开启即可
       ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;
 
       // 转换结果右对齐
       ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;
      
       // 转换通道1个
       ADC_InitStructure.ADC_NbrOfChannel = 1;   
             
       // 初始化ADC
       ADC_Init(ADCx, &ADC_InitStructure);
      
       // 配置ADC时钟为PCLK2的8分频,即9MHz
       RCC_ADCCLKConfig(RCC_PCLK2_Div8);
      
       // 配置 ADC 通道转换顺序和采样时间
       ADC_RegularChannelConfig(ADCx, ADC_CHANNEL, 1,
                                ADC_SampleTime_55Cycles5);
      
       // ADC 转换结束产生中断,在中断服务程序中读取转换值
       ADC_ITConfig(ADCx, ADC_IT_EOC, ENABLE);
      
       // 开启ADC ,并开始转换
       ADC_Cmd(ADCx, ENABLE);
      
       // 初始化ADC 校准寄存器 
       ADC_ResetCalibration(ADCx);
       // 等待校准寄存器初始化完成
       while(ADC_GetResetCalibrationStatus(ADCx));
      
       // ADC开始校准
       ADC_StartCalibration(ADCx);
       // 等待校准完成
       while(ADC_GetCalibrationStatus(ADCx));
      
       // 由于没有采用外部触发,所以使用软件触发ADC转换
       ADC_SoftwareStartConvCmd(ADCx, ENABLE);
}
 
static void ADC_NVIC_Config(void)
{
  NVIC_InitTypeDef NVIC_InitStructure;
       // 优先级分组
       NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
 
  // 配置中断优先级
  NVIC_InitStructure.NVIC_IRQChannel = ADC_IRQ;
  NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1;
  NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;
  NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
  NVIC_Init(&NVIC_InitStructure);
}
 
u16 Get_Adc(u8 ch)  
{
       //设置转换序列                 
       ADC1->SQR3&=0XFFFFFFE0;//规则序列1 通道ch
       ADC1->SQR3|=ch;                                    
       ADC1->CR2|=1<<22;       //启动规则转换通道
       while(!(ADC1->SR&1<<1));//等待转换结束            
       return ADC1->DR;             //返回adc值
}
u16 Get_Adc_Average(u8 ch,u8 times)
{
       int n = 1000;
       u32 temp_val=0;
       u8 t;
       for(t=0;t<times;t++)
       {
              temp_val+=Get_Adc(ch);
              while(n--);
       }
       return temp_val/times;
}
void ADCx_Init(void)
{
       ADCx_GPIO_Config();
       ADCx_Mode_Config();
       ADC_NVIC_Config();
}
/*********************************************END OF FILE**********************/




院士
2025-08-04 23:19:01     打赏
2楼

感谢分享


专家
2025-08-04 00:08:15     打赏
3楼

感谢楼主分享


专家
2025-08-04 01:35:27     打赏
4楼

感谢楼主的分享,很实用了。


高工
2025-08-04 04:06:46     打赏
5楼

感谢楼主的分享,很实用了。


专家
2025-08-04 06:56:44     打赏
6楼

感谢分享


专家
2025-08-04 08:00:17     打赏
7楼

感谢分享


高工
2025-08-04 08:49:18     打赏
8楼

谢谢分享


专家
2025-08-04 08:58:01     打赏
9楼

感谢楼主分享


专家
2025-08-04 09:02:19     打赏
10楼

感谢楼主分享


共19条 1/2 1 2 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]
花牛是什么 梦见买棺材是什么征兆 卓诗尼牌子是什么档次 怙恃是什么意思 手足口病吃什么食物
2月15日是什么星座 肛门里面有个肉疙瘩是什么 手脚发胀是什么前兆 埋线是什么意思 甲功能5项检查是查的什么
打喷嚏很臭是什么原因 柯基犬为什么要断尾巴 腰椎间盘突出吃什么好 肿脚是什么原因引起的 眉头下方有痣代表什么
71年出生属什么生肖 什么玉最好有灵性养人 羊可以加什么偏旁 来大姨妈肚子疼是什么原因 阴茎硬度不够吃什么好
什么叫肽hcv9jop5ns9r.cn 幼犬可以吃什么hcv9jop1ns4r.cn 窈窕淑女是什么意思hcv7jop4ns8r.cn 牙龈萎缩吃什么药见效快hcv9jop5ns6r.cn 什么是相向而行hcv9jop3ns4r.cn
尿毒症是什么原因引起的hcv8jop8ns6r.cn 医生为什么会建议竖切jasonfriends.com 嘌呤是什么意思hebeidezhi.com 不明原因发烧挂什么科hcv9jop0ns1r.cn 吴佳尼为什么嫁马景涛tiangongnft.com
青枝骨折是什么意思xinjiangjialails.com 舌苔发白吃什么药hcv8jop7ns2r.cn 西安香烟有什么牌子hcv7jop7ns1r.cn 海龟吃什么hcv8jop7ns8r.cn 双侧乳腺腺病是什么意思jiuxinfghf.com
白细胞酯酶弱阳性是什么意思hcv8jop4ns1r.cn 吃什么对肝脏有好处能养肝bjcbxg.com 什么中华hcv8jop0ns5r.cn 头疼吃什么hcv8jop1ns4r.cn 白芷有什么作用hcv8jop1ns6r.cn
百度