博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
笔记--STM32F407调试BQ4050--SMBUS通信
阅读量:4218 次
发布时间:2019-05-26

本文共 670 字,大约阅读时间需要 2 分钟。

  • **

    笔记–平时工作的总结

    **

    **搞单片机开发的几乎都用过IIC,而且大部分都是直接IO模拟IIC。SMBUS估计用的人就少了,第一次接触我也是懵逼的,然后百度了一下,大体意思就是SMBUS跟IIC基本一样,就是速率有点差别而已。差了一大堆资料,总结就是
    SMBUS可以用IIC的程序改,但是传输速率要根据芯片的速率做一个调整。
    本次使用的硬件是STM32F407,之所以用这个芯片完全是因为手头有这个板子可以方便调试,理论上你可以用任何可以实现IIC功能的单片机来读取BQ4050的数据。本次IIC用的硬件IIC,原因是因为参考了网上同行的调试笔记,都是硬件调通的;模拟IIC应该也可以,但是时许要搞对。
    SMBUS大体明白了,就要看BQ4050的资料了。TI官网下载资料。数据表和用户手册。全是英文,一头懵。不过不要担心,通过数据表只需要确认这款芯片的SMBUS接口和供电口是哪个,然后工资速率是什么就可以了。通过用户手册需要确认我们需要读取的内容寄存器地址、设备地址是什么就可以了。
    接下来就是硬件接线,建立工程,网上找硬件IIC的参考代码,移植到工程,调试读取数据。这里如果调试的不是很顺利,就建议找个示波器看下信号线的波形,波形不对,就别折腾了,肯定程序不对(排除硬件原因的话)。
    找了几个程序都失败了,最后找了个HAL库的例子,调试通过。所以要充分利用网络资源,能移植的就别装逼自己搞了。本次调SMBUS用时一下午,大部分时间都用来理清资料了。由于项目还需要保密,代码就不方便贴上来了, 有疑问的可以加qq363530137

调试结果

转载地址:http://trpmi.baihongyu.com/

你可能感兴趣的文章
Spring Boot异步线程池及异步编程
查看>>
日期工具:非线程安全SimpleDateFormat 和线程安全JodaTime(推荐)
查看>>
再谈StringBuilder和StringBuffer的区别
查看>>
Guava 常用工具类
查看>>
MySQL中乐观锁和悲观锁
查看>>
Java 中包装类型的比较注意事项
查看>>
Java查看字节码文件(基于JDK和IDEA)
查看>>
Java中如何存储金额的问题
查看>>
Spring 线程池定时监控
查看>>
Java 注解的原理及自定义注解
查看>>
Spring MyBatis generator自动生成配置
查看>>
java web中通过fork join来子任务拆分提高处理速度
查看>>
java面试题及答案
查看>>
常见的java查错题
查看>>
java面试题大全-代码与编程题
查看>>
java中equals和==的区别
查看>>
java中&与&&的区别
查看>>
JAVA数据类型间的相互转换
查看>>
js 操作select和option
查看>>
Java接口和Java抽象类
查看>>