想用一个I2C 做DMA Slave收发,但是我发现这方面资料太少了
而且看ST的example都太简单了,只能说API能用而已,请帮忙想想部分可靠的架构
我的想法是,在DMACpltCallback中做状态机变化,
收发方面由I2C Master控制状态机,I2C Master先写固定字节传递Write or Read操作,
然后根据收到的信息控制状态机,在某个状态下做SlaveTransmit或者SlaveReceiver,这时候可以知道何时可以
但是这里还要考虑状态超时什么的,感觉不如Cypress的EzI2C方便使用,用户只需要提供读写内存,类似eeprom的读写方式使用
请教还有什么可靠的方式保证通信吗?
最后吐槽一下居然ST没有提供pc机上的ISP烧写工具和代码,貌似没有看到I2C的,只有一个简单的USB bridge工程
|