但对于这个 这ACK的操作 有点模糊,所以想求证一下:
在流程图里面可以看到,在每次SDA is shifted to IICDS.后都要到ACK period and then
interrupt is pending. 这个过程是不是 在每次1个Bytes的数据传递过后,slave device 发送ack信号给 CPU,然后 IICCON 里面的Interrupt pending flag 被标记, 此时应该是1 ,状态应该是: Interrupt is pending (when read) 。然后当给IICDS 写入下一Bytes的数据之后,如果要继续发送数据给从设备,只要 clear this bit as 0, 就可以resume the operation,。之后SDA is shifted to IICDS. 然后 循环进行,知道 软件判断 是否要停止/