<!-- /* Font Definitions */ @font-face {font-family:宋体; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-alt:SimSun; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;} @font-face {font-family:"/@宋体"; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-parent:""; margin:0cm; margin-bottom:.0001pt; text-align:justify; text-justify:inter-ideograph; mso-pagination:none; font-size:10.5pt; mso-bidi-font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:宋体; mso-font-kerning:1.0pt;} p {mso-margin-top-alt:auto; margin-right:0cm; mso-margin-bottom-alt:auto; margin-left:0cm; mso-pagination:widow-orphan; font-size:12.0pt; font-family:宋体; mso-bidi-font-family:宋体;} /* Page Definitions */ @page {mso-page-border-surround-header:no; mso-page-border-surround-footer:no;} @page Section1 {size:595.3pt 841.9pt; margin:72.0pt 90.0pt 72.0pt 90.0pt; mso-header-margin:42.55pt; mso-footer-margin:49.6pt; mso-paper-source:0; layout-grid:15.6pt;} div.Section1 {page:Section1;} -->
s3c2410支持multi-master IIC总线串行接口;通过SDA(serial data line)和SCL(serial clock line)两个单行线(bi-direction),在总线的Master(主设备)和Slave(从设备)间进行数据读写操作;以下寄存器时IIC操作必须配置的:
IICCON:控制寄存器
IICSTAT:控制和状态寄存器
IICDS:Tx/Rx数据移位寄存器
IICADD:地址寄存器
IIC总线接口: S3c2410 IIC 总线接口可以工作在4种模式下:Master发送模式, Master接收模式, Slave发送模式, Slave接收模式.
当IIC总线空闲时,SDA和SCL线都保持高电平; 在SCL保持高电平情况下,SDA从高电平跳变到低电平启动一个"开始"信号,表示传输开始; 在SCL保持高电平情况下, SDA从低电平跳变到高电平跳变启动一个"结束"信号,表示传输结束;"开始"和"结束"信号都有Maser设备产生.主设备在产生"开始"信号发送第一个字节,该第一字节为:bit0~bit6表示要与其通讯的Slave的地址,bit7代表读写("0"表示读,"1"表示写);总线上传输的数据都以字节为单位,传输时都是首先传输MSB(most-significant bit),并在每个字节传输完毕后接收接收方发送的ACK bit;
“开始”和”结束”条件:当IIC总线不可用情况下, s3c2410处于Slave; 也就是说, 接口在发现”开始”条件前,其是处于Slave模式的.当接口转换到Master模式后, 既可以在SCL产生时钟信号并在SDA线上传输数据.
数据传输格式:SDA上的数据传输以8bit为单位;在一次传输过程中可传输的字节数是不受限制的;但是每次传输过程都是:1)主设备在”开始”信号后发送从设备地址.2)接收方在收到数据后发送ACK bit;具体格式如下: