找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2451|回复: 2
收起左侧

FMD单片机硬件IIC驱动程序

[复制链接]
ID:78835 发表于 2023-5-9 19:21 | 显示全部楼层 |阅读模式
     辉芒微单片机的Deom例程写的太垃圾了,只会写一种情况,比如他们硬件IIC,只写单次发送,单次读,连续发送或者连续读的例程就懒得写了,有点像应付了事。单片机老手估计都可以搞定,新手估计很难搞定。我今天花时间重新整理了一下IIC的驱动程序,模仿了STM32的HAL的命名,使用的话直接调用就好了。(注意丛机地址是独立的,没有包括读写位,真7位地址,单片机的IIC脚要设置为输出,因为硬件IIC脚是开漏输出模式)
    uint8_t Data[2]={0};
    Data[0] = 0x38;
    Data[1] = 0x55;
    HAL_I2C_Mem_Write(I2C1, 0x50, 0x01, I2C_MEMADD_SIZE_8BIT, (uint8_t *)&Data[0], 2, 10);
    __delay_ms(10);
    HAL_I2C_Mem_Read(I2C1, 0x50,  0x01, I2C_MEMADD_SIZE_8BIT, (uint8_t *)&Data[0], 2, 10)


    HAL_I2C_Mem_Write的第一个参数是IIC选择,第二个参数是丛机地址,第三个参数是丛机内存地址,第四个参数是丛机内存地址是8位还是16位,第五个参数是数据,第六个参数是数据大小,第七个参数是等待时间,防止程序卡死。

例程是往24C02的0x01地址里面连续写入2个数据0x38和0x55,逻辑分析仪采集到的波形如下图:
51hei截图20230509185400.png

接着连续读出0x01起始地址的2个数据
51hei截图20230509185324.png

驱动成功了!
下面是程序文件(编译版本为FMDIDE_V3.1.0,适用FT61F08X,FT62F08X,FT61F0AX,FT64F0AX,_FT67F0AX ):
FT6_1_4_7_F0AX.7z (275.73 KB, 下载次数: 23)

评分

参与人数 3黑币 +107 收起 理由
hack2800 + 6
wpppmlah + 21 共享资料的黑币奖励!
admin + 80 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

ID:78835 发表于 2023-5-10 11:49 | 显示全部楼层
joyb 发表于 2023-5-10 08:38
FMD B1V6BKH是单片机吗?

B1V6BKH估计是批次号,看丝印FMD是辉芒微的logo,你就可以看下这个封装的规格书,找下VCC和GND的脚位,基本上可以找到对应的型号。
回复

使用道具 举报

ID:1064915 发表于 2023-5-10 08:38 | 显示全部楼层


FMD B1V6BKH是单片机吗?
51hei图片_20230510083417.jpg
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表