DMA和IIC是兩種完全不同的東西。IIC是一種通訊方式、一種通訊協議,用于芯片之間或者用于板子之間等近距離的通訊。而DMA是一種控制器、單片機的片上資源,是直存儲器訪問的意思。IIC可以使用DMA進行數據傳輸。下面分別介紹。
1
IIC通訊協議介紹
IIC是芯片間常用的一種近距離通訊方式,常用的通訊速率有100Kbit/s,400Kbit/s等,具有SDA和SCL兩根線。SCL是通訊時鐘線,SDA是數據傳輸線,每個IIC設備都有一個唯一的設備地址,地址為1個字節,高七位為設備地址,低一位為讀/寫操作。其總線拓撲結構如下圖所示。
IIC通訊比較典型的應用就是AT24C04,該存儲芯片的通訊方式為IIC,只需要兩根線即可實現數據的通信,在硬件電路的設計上一般要在通訊總線上加兩個上拉電阻。如下圖所示。
2
DMA直接存儲器訪問介紹
DMA是直接存儲器訪問,不經過CPU而直接從內存存取數據的