基于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显示)相关推荐

  1. 基于51单片机+DHT11温湿度+LCD1602显示

    DHT温湿度1602显示 DHT11温湿度相关介绍 DHT11产品概述 1.测量范围 2.接口说明 3.电源引脚 4.串行接口 (单线双向) 5.相关时序及代码 6. DHT11引脚说明 程序代码 m ...

  2. 基于51单片机驱动HC-SR04超声波模块(LCD1602显示)

    基于51单片机驱动HC-SR04超声波模块(LCD1602显示) 一.基本参数 二.通信时序 三.部分代码展示 四.实际效果 总结 一.基本参数 点击图片购买 HC- SR04+是一款宽电压工作的超声 ...

  3. 51单片机ADC0832模数转换+ LCD1602显示+Proteus仿真

    51单片机ADC0832模数转换+ LCD1602显示+Proteus仿真 Proteus仿真 在Proteus SP2仿真过程中发现无法读取ADC0832的数据.解决办法:在proteus安装目录下 ...

  4. 基于51单片机驱动A4988实现步进电机逆时针转动

    基于51单片机驱动A4988实现步进电机逆时针转动 一.简介 二.接线 典型接线图 实际接线 三.部分代码 引脚定义 定时器初始化 主函数 四.实验现象 五.注意事项 一.简介 A4988 是一款完全 ...

  5. 4. 51 测量空气的温度和湿度(51单片机 + DHT11温湿度 + LCD1602显示)

    51单片机 + DHT11温湿度 + LCD1602显示 DHT11温湿度相关介绍 DHT11产品概述 测量范围 接口说明 电源引脚 串行接口 (单线双向) 相关时序及代码 用代码实现上述时序图(起始 ...

  6. 2022-4-9 基于51单片机驱动直流电机(L293D)(公众号:风吹摇铃 奔赴星海)

    基于51单片机的直流电机驱动 仿真软件为Proteus8.10   编程软件为keil4 系统组成:单片机最小系统.四位共阳极数码管.三个独立按键.直流电机.L293D芯片. 系统功能:又三个按键控制 ...

  7. 基于51单片机驱动MPU6050模块(LCD1602显示)

    @TOC 一.简介 MPU-6050集成了3轴MEMS陀螺仪,3轴MEMS加速度计,以及一个可扩展的数字运动处理器DMP,可用IIC接口连接一个第三方的数字传感器.MPU-6050对陀螺仪和加速度计分 ...

  8. 基于51单片机点亮LCD1602+自定义字符

    1602有8位的数据口和4位的数据口,今天我们用到的是8位的数据口.废话不多说,直接上原理图 8位数据口一定要加上拉电阻,要不然驱动不了. 写数据和写命令的时序 清屏指令 开显示指令 显示字符的地址 ...

  9. 基于51单片机的直流电机转速显示+加速减速启停

    文章目录 前言 一.前期准备 1.功能实现思路 2.软件实现思路 二.硬件电路 1.总电路 三.软件解读 1.代码解读 2.代码 总结 前言 做了一个实战项目,这个实战项目主要是实现对直流电机转速的控 ...

最新文章

  1. Python+OpenCV 图像处理系列(4)—— 图像像素的读写、算术运算、逻辑运算及像素的统计
  2. 张一鸣:做CEO要避免理性的自负!
  3. 微信朋友圈里的十五种类型,笑死了!
  4. golang中的strings.ContainsAny
  5. Jquery中将数组转换成Json
  6. elasticsearch 客户端工具_ELK集群部署 - elasticsearch-7.9.3
  7. System variables, logging and the Execute SQL Task...(zz)
  8. 又拍云 php5月18号那,又拍云每月免费CDN空间和流量
  9. 零基础带你学习MySQL—数学函数(十四)
  10. 跳打开hdu 1208 (DP)
  11. 51Nod 1067:Bash游戏 V2(巴什博弈)
  12. smarty 对数据库的简单操作。
  13. Word 制作三线表
  14. Java版小米商城项目简介
  15. 锁定计算机后 360wifi,电脑中360路由器WiFi密码忘记了的四种解决方法
  16. 《春秋·战国》大事年表
  17. 爬取当当网评论(1)
  18. python 对文件夹下的所有图片进行重命名
  19. VSCode(Visual Studio Code)整合Git
  20. 深度强化学习——actor-critic算法(4)

热门文章

  1. 人员梯度培养_后备人才培养与梯队建设方案
  2. 计算机专业培养要求,计算机科学与技术专业人才培养目标及毕业要求(2015修订版)...
  3. 电池模组(包)充放电自动测试系统
  4. 畅捷通T3、T6服务器系统环境重装工作流程
  5. yolo-v2 翻译
  6. android java 最新判断手机号码 包含虚拟号
  7. html5文本与段落简介,认识HTML标题和段落元素
  8. 图像相关度描述 - 归一化互相关(NCC)
  9. h5的相关标签属性的详细讲解
  10. 什么是负载,什么是网站负载,什么是网站负载均衡?