共2条
1/1 1 跳转至页
44B0X,IIC 可恶的44B0X的IIC功能
问
IIC本来是个简单的接口,以前做51时用软件模拟很容易做好,但使用44B0X的IIC颇为不易:
流行的示范程序是基于中断的,不甚通用、且中断内不得不包括了延时(尽管很短)。
自己写了一个基于查询的,过程中感觉:
除了数据和地址外,44B0X的IIC只有两个寄存器,本应很容易,但在这两个寄存器中:
*。捆绑了状态和控制
*。捆绑了时序逻辑和组合逻辑(有的bit是时序逻辑)
*。捆绑了IIC功能(start,stop,rx,tx,ack不能灵活组合)
*。完全没有写清状态迁移条件,这是最最可恶的!
哪些必须程序员更改、哪些会自动更改、如何自动更改、模式转换时影响哪些状态、stop影响哪些状态...
功能是好是差就算了,能用就行,说明书实在太差了,需要猜测、试验的地方太多。
答 1: 我刚调完44b0的IIC+zlg7290真想骂
pdf流程图都有明显画错的
关键是开始的初始化(44b0要先设置成从设备那几句)
要不是看了三星读写EEPROM的例程,打死也研究不出来
流行的示范程序是基于中断的,不甚通用、且中断内不得不包括了延时(尽管很短)。
自己写了一个基于查询的,过程中感觉:
除了数据和地址外,44B0X的IIC只有两个寄存器,本应很容易,但在这两个寄存器中:
*。捆绑了状态和控制
*。捆绑了时序逻辑和组合逻辑(有的bit是时序逻辑)
*。捆绑了IIC功能(start,stop,rx,tx,ack不能灵活组合)
*。完全没有写清状态迁移条件,这是最最可恶的!
哪些必须程序员更改、哪些会自动更改、如何自动更改、模式转换时影响哪些状态、stop影响哪些状态...
功能是好是差就算了,能用就行,说明书实在太差了,需要猜测、试验的地方太多。
答 1: 我刚调完44b0的IIC+zlg7290真想骂
pdf流程图都有明显画错的
关键是开始的初始化(44b0要先设置成从设备那几句)
要不是看了三星读写EEPROM的例程,打死也研究不出来
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
【换取逻辑分析仪】自制底板并驱动ArduinoNanoRP2040ConnectLCD扩展板被打赏47分 | |
【分享评测,赢取加热台】RISC-V GCC 内嵌汇编使用被打赏38分 | |
【换取逻辑分析仪】-基于ADI单片机MAX78000的简易MP3音乐播放器被打赏48分 | |
我想要一部加热台+树莓派PICO驱动AHT10被打赏38分 | |
【换取逻辑分析仪】-硬件SPI驱动OLED屏幕被打赏36分 | |
换逻辑分析仪+上下拉与多路选择器被打赏29分 | |
Let'sdo第3期任务合集被打赏50分 | |
换逻辑分析仪+Verilog三态门被打赏27分 | |
换逻辑分析仪+Verilog多输出门被打赏24分 | |
【分享评测,赢取加热台】使用8051单片机驱动WS2812被打赏40分 |