小弟最近要用I2C控制一个芯片,好像很简单,主要就是照着Datasheet去修改相应的寄存器而已, 问题就在于它一个操作要通过修改几个寄存器的值来实现,举个例子,单复位就要两步: 先发送80 00 80 00 再发送80 00 00 00 刚开始打算建一个数组作为发送buffer,发一次就填一次数组,然后调用一次底层发送程序,但是这样写下来,整个程序满眼都是简单的一堆"写数组,发送,再写数组,再发送...."的代码,自己看着都流汗. 然后想把类似复位这样基本不变的命令建成表,循环调用发送的,又遇到许多值是要适时改变的,根本无法满足. 实在没有办法了,上21ic来寻求帮助,谁能给我个思路,这个程序应该怎样去组织比较好啊??多谢了! |