基于STM32F103的多通道ads1015通讯详细实现(单个通道调试篇)

本文详细描述了使用STM32F103RC1开发中,通过I2C和SMBus与ads1015进行通信的项目过程,包括硬件连接、问题排查(如供电异常、I2C通信调试)、以及使用Keil5进行代码调试的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        在发布了单通道实现篇之后,继续整理并记录在完成项目中测试硬件、调试代码的思路。上一篇文章是我第一次在CSDN发文,没想到第一次就上了最佳新人榜。基于STM32F103RC1的多通道ads1015通讯详细实现(单个通道实现篇)http://t.csdnimg.cn/8PvAAicon-default.png?t=N7T8http://t.csdnimg.cn/8PvAA        实现篇是我对实现主机与ads1015通信的较为详细与系统的思路,而调试篇则是包含了我在实现项目过程中遇到的问题和它们的现象,我遇到这些现象后查找问题根源,解决问题的思考。

一、硬件简单介绍

        在单个通道ads1015阶段,整个模块由两块板子,一根RS232信号线,一根供电导线组成。

        第一块板子是数据采集板,一块数据采集板上附带两块ads1015,ads1015有四个ad转换通道,我们的设计是一ads1015上的两个AIN采集电压,另外两个AIN采集电流,另外数据采集板上还能连接两个mlx90614进行温度检测。ads1015与主机的通信是通过I2C协议,一块数据采集板上有两块ads1015,这就是上一篇文章中我介绍的ads1015用电阻将addr与不同的引脚连接后,可以完成对从机地址的选择。而mlx90614通过SMBus协议(SMBus是I2C协议的一个子集)与主机进行通信,为了避免太多系统资源被浪费。两块ads1015共用一根I2C总线,两块mlx90614共用一根SMBus总线,他们一起占用了RS232串口上的四个引脚(I2C_SCL、I2C_SDA、SMBus_SCL、SMBus_SDA),并通过RS232与主机进行通信。

        第二块板子是状态监测板(主机

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值