当前位置: 首页 > news >正文

C51_AH3144霍尔传感器

文章目录

  • 一、霍尔传感器
    • 1、霍尔传感器分类
    • 2、AH3144:
  • 二、代码实例
    • 1、查询方式(物体计数)
    • 2、外部中 断方式(电机测速)
    • 3、实例现象

一、霍尔传感器

霍尔传感器是一种基于霍尔效应的磁敏传感器,可用于检测磁场强度、物体位置、转速等场景,在 51 单片机项目中应用广泛(如电机测速、接近开关、行程检测)。

1、霍尔传感器分类

2、AH3144:

AH3144是一款数字式单极霍尔开关集成电路,主要用于磁感应检测和位置控制。
引脚:

二、代码实例

1、查询方式(物体计数)

#include<reg52.h>#include"LCD1602.h"#include<intrins.h>// 定义引脚sbit Hall_OUT=P1^0;// 霍尔传感器输出连接P1.0sbit LED=P2^1;// LED指示灯,用于显示检测状态unsignedintcount=0;// 计数变量voidDelay_ms(unsignedintms){// 毫秒级延时函数unsignedinti,j;for(i=ms;i>0;i--)for(j=110;j>0;j--);}voidmain(void){LED=1;// 初始LED熄灭LCD_Init();while(1){if(Hall_OUT==0){// 检测到磁场(物体靠近)Delay_ms(20);// 消抖延时if(Hall_OUT==0){count++;// 计数加1LED=0;// LED点亮while(Hall_OUT==0);// 等待物体离开LED=1;// LED熄灭}}LCD_ShowSignedNum(1,1,count,3);//将计数显示到LCD1602}}

2、外部中 断方式(电机测速)

#include<reg52.h>#include"LCD1602.h"#include<intrins.h>// 定义引脚sbit Hall_OUT=P3^2;// 霍尔输出连接P3.2(外部中断0引脚)sbit LED=P1^1;unsignedintcount=0;// 中断计数unsignedintrpm=0;// 转速(转/分钟)unsignedchartime_flag=0;// 计时标志// 定时器0初始化(100ms定时)voidTimer0_Init(void){TMOD|=0x01;// 定时器0工作模式1(16位定时器)TH0=0x4C;// 初值设置,11.0592MHz晶振,定时100msTL0=0x00;ET0=1;// 使能定时器0中断TR0=1;// 启动定时器0EA=1;// 开启总中断}// 外部中断0初始化voidInt0_Init(void){IT0=1;// 下降沿触发中断(磁场靠近时,OUT从高变低)EX0=1;// 使能外部中断0EA=1;// 开启总中断}// 外部中断0服务函数(检测到磁铁时执行)voidInt0_Service()interrupt0{count++;// 计数加1}// 定时器0服务函数(100ms定时)voidTimer0_Service()interrupt1{TH0=0x4C;TL0=0x00;time_flag++;if(time_flag==10){// 累计1秒time_flag=0;rpm=count*60;// 转速 = 每秒计数 * 60(假设转轴1个磁铁)count=0;// 清零计数LED=~LED;// LED闪烁,指示程序运行}}voidmain(void){Timer0_Init();Int0_Init();LCD_Init();while(1){// 可在此处将rpm值通过串口发送到上位机显示LCD_ShowSignedNum(1,1,rpm,3);}}

3、实例现象

http://www.gsyq.cn/news/89209.html

相关文章:

  • 16 位 SAR ADC 逐次逼近型 ADC 模拟集成电路设计探秘
  • 5 分钟快速入门 Gitlab CI/CD
  • 【题解】Luogu P13885 [蓝桥杯 2023 省 Java/Python A] 反异或 01 串
  • 【笔记】Manacher
  • 电动汽车永磁同步电机的电磁设计与最优控制探索
  • 【题解】Luogu B4185 [中山市赛 2024/科大国创杯小学组 2023] 倍数子串/子串
  • 5 分钟快速入门 Github Actions
  • 虚函数虚表
  • 已有析音法
  • 告别排版困境!AI 写作到发布全自动化的完整方案
  • Docker 两大基石:Namespace 和 Cgroups
  • 9、Eclipse集成开发环境:C/C++开发全流程指南
  • Python银行客户数据流失预测SMOTE平衡数据实现神经网络、SVM、决策树、随机森林与超参数调优|附代码数据
  • 享搭提醒助手:数据变动实时预警,运营者业务状态“尽在掌握”
  • 26 avl树(下)
  • openvela——动态管理日志输出通道及其实现原理
  • 连接2026:十款远程控制软件真实力横评与选择指南
  • 可以把 Windows 从 C盘迁移到 SSD 吗?
  • Draco 3D压缩终极指南:如何高效处理大型3D模型文件
  • Overleaf插件定制实战指南:3分钟搞定编辑器功能优化
  • 15、Linux 系统下的邮件与即时通讯使用指南
  • javet 的使用
  • 数据分析工具对比:SPSS vs Tableau vs DataEase
  • 【OTA】自动化测试方案
  • 哪些文件夹里的文件是可以安全删除的?比如Temp、Download这些?
  • SuperDesign:在IDE中唤醒你的设计创造力
  • Stop-motion-OBJ:Blender网格序列动画导入终极指南
  • typescript - 11.高级类型
  • 20、Linux 系统软件更新与安装全攻略
  • JPA多對多關係時 JSON 序列化解决方案