基于51单片机驱动ADXL346 (LCD1602显示)
基于51单片机驱动ADXL346 (LCD1602显示)
- 一、ADXL346传感器介绍
- 1.实物图
- 2.产品说明
- 3.电气参数
- 4.通信协议
- 二、驱动代码
- 1.引脚定义
- 2.初始化函数
- 3.主函数
- 三、实验现象
- 四、总结
一、ADXL346传感器介绍
1.实物图
2.产品说明
ADXL346是一款小而薄的超低功耗3轴加速度计,分辨率 高(13位),测量范围达±16 g。数字输出数据为16位二进制补码格式,可通过SPI(3线或4线)或I2 C®数字接口访问。 ADXL346非常适合移动设备应用。它可以在倾斜检测应用 中测量静态重力加速度,还可以测量运动或冲击导致的动 态加速度。它具有高分辨率(4 mg/LSB),能够分辨不到1.0°的倾斜度变化。
3.电气参数
芯片型号:ADXL346
工作电压:3~5V
通信方式:IIC/SPI
4.通信协议
此处用的是IIC,通信时序图如下:
二、驱动代码
1.引脚定义
可在此更改引脚定义
sbit SCL=P1^0; //IIC时钟引脚定义
sbit SDA=P1^1; //IIC数据引脚定义
2.初始化函数
//初始化ADXL345,根据需要请参考pdf进行修改************************
void Init_ADXL345()
{Single_Write_ADXL345(0x31,0x0B); //测量范围,正负16g,13位模式Single_Write_ADXL345(0x2C,0x08); //速率设定为12.5 参考pdf13页Single_Write_ADXL345(0x2D,0x08); //选择电源模式 参考pdf24页Single_Write_ADXL345(0x2E,0x80); //使能 DATA_READY 中断Single_Write_ADXL345(0x1E,0x00); //X 偏移量 根据测试传感器的状态写入pdf29页Single_Write_ADXL345(0x1F,0x00); //Y 偏移量 根据测试传感器的状态写入pdf29页Single_Write_ADXL345(0x20,0x05); //Z 偏移量 根据测试传感器的状态写入pdf29页
}
3.主函数
/*********************************************************
//******主程序********
//*********************************************************/
void main()
{ uchar devid;delay(500); //上电延时 InitLcd(); //液晶初始化ADXL345Init_ADXL345(); //初始化ADXL345devid=Single_Read_ADXL345(0X00);//读出的数据为0XE5,表示正确while(1) //循环{ Multiple_Read_ADXL345(); //连续读出数据,存储在BUF中display_x(); //---------显示X轴display_y(); //---------显示Y轴display_z(); //---------显示Z轴delay(200); //延时 }
}
三、实验现象
四、总结
1.当显示无变化时检查接线是否有接触不良
2.用LCD1602显示注意引脚定义要适配对应开发板
需要完整工程的可下方留言邮箱获取
基于51单片机驱动ADXL346 (LCD1602显示)相关推荐
- 基于51单片机+DHT11温湿度+LCD1602显示
DHT温湿度1602显示 DHT11温湿度相关介绍 DHT11产品概述 1.测量范围 2.接口说明 3.电源引脚 4.串行接口 (单线双向) 5.相关时序及代码 6. DHT11引脚说明 程序代码 m ...
- 基于51单片机驱动HC-SR04超声波模块(LCD1602显示)
基于51单片机驱动HC-SR04超声波模块(LCD1602显示) 一.基本参数 二.通信时序 三.部分代码展示 四.实际效果 总结 一.基本参数 点击图片购买 HC- SR04+是一款宽电压工作的超声 ...
- 51单片机ADC0832模数转换+ LCD1602显示+Proteus仿真
51单片机ADC0832模数转换+ LCD1602显示+Proteus仿真 Proteus仿真 在Proteus SP2仿真过程中发现无法读取ADC0832的数据.解决办法:在proteus安装目录下 ...
- 基于51单片机驱动A4988实现步进电机逆时针转动
基于51单片机驱动A4988实现步进电机逆时针转动 一.简介 二.接线 典型接线图 实际接线 三.部分代码 引脚定义 定时器初始化 主函数 四.实验现象 五.注意事项 一.简介 A4988 是一款完全 ...
- 4. 51 测量空气的温度和湿度(51单片机 + DHT11温湿度 + LCD1602显示)
51单片机 + DHT11温湿度 + LCD1602显示 DHT11温湿度相关介绍 DHT11产品概述 测量范围 接口说明 电源引脚 串行接口 (单线双向) 相关时序及代码 用代码实现上述时序图(起始 ...
- 2022-4-9 基于51单片机驱动直流电机(L293D)(公众号:风吹摇铃 奔赴星海)
基于51单片机的直流电机驱动 仿真软件为Proteus8.10 编程软件为keil4 系统组成:单片机最小系统.四位共阳极数码管.三个独立按键.直流电机.L293D芯片. 系统功能:又三个按键控制 ...
- 基于51单片机驱动MPU6050模块(LCD1602显示)
@TOC 一.简介 MPU-6050集成了3轴MEMS陀螺仪,3轴MEMS加速度计,以及一个可扩展的数字运动处理器DMP,可用IIC接口连接一个第三方的数字传感器.MPU-6050对陀螺仪和加速度计分 ...
- 基于51单片机点亮LCD1602+自定义字符
1602有8位的数据口和4位的数据口,今天我们用到的是8位的数据口.废话不多说,直接上原理图 8位数据口一定要加上拉电阻,要不然驱动不了. 写数据和写命令的时序 清屏指令 开显示指令 显示字符的地址 ...
- 基于51单片机的直流电机转速显示+加速减速启停
文章目录 前言 一.前期准备 1.功能实现思路 2.软件实现思路 二.硬件电路 1.总电路 三.软件解读 1.代码解读 2.代码 总结 前言 做了一个实战项目,这个实战项目主要是实现对直流电机转速的控 ...
最新文章
- Python+OpenCV 图像处理系列(4)—— 图像像素的读写、算术运算、逻辑运算及像素的统计
- 张一鸣:做CEO要避免理性的自负!
- 微信朋友圈里的十五种类型,笑死了!
- golang中的strings.ContainsAny
- Jquery中将数组转换成Json
- elasticsearch 客户端工具_ELK集群部署 - elasticsearch-7.9.3
- System variables, logging and the Execute SQL Task...(zz)
- 又拍云 php5月18号那,又拍云每月免费CDN空间和流量
- 零基础带你学习MySQL—数学函数(十四)
- 跳打开hdu 1208 (DP)
- 51Nod 1067:Bash游戏 V2(巴什博弈)
- smarty 对数据库的简单操作。
- Word 制作三线表
- Java版小米商城项目简介
- 锁定计算机后 360wifi,电脑中360路由器WiFi密码忘记了的四种解决方法
- 《春秋·战国》大事年表
- 爬取当当网评论(1)
- python 对文件夹下的所有图片进行重命名
- VSCode(Visual Studio Code)整合Git
- 深度强化学习——actor-critic算法(4)