【正文】
程序的主要源代碼見 教材 《 ARM嵌入式系統(tǒng)結(jié)構(gòu)與編程》 第 326頁。將其清0 后, I 2C 繼續(xù)工作。 60 TM 60 61 TM 61 10. 2. 3 S3C44B0/S3C2410 I2C總線操作 ? 1. I2C總線接口的工作模式 ? C44B0和 S3C2410的 I2C總線接口有四種工作模式: ? 主控組件傳送模式 ? 主控組件接收模式 ? 從組件傳送模式 ? 從組件接受模式 62 TM 62 ? S3C44B0和 S3C2410的 I2C總線的開始條件和終止條件 S C LS D A開 始 條 件 終 止 條 件63 TM 63 ? 2.?dāng)?shù)據(jù)傳送格式 64 TM 64 總線數(shù)據(jù)傳輸時(shí)序 65 TM 65 10. 2. 4 S3C44B0/S3C2410 I2C專用功能寄存器 ? 1.多主控 I2C控制寄存器( IICCON) 寄存器 S 3C 44 B 0 地址 S 3C 24 10 地址 讀 / 寫 描述 復(fù)位值 IIC C O N 0x 01 D 60 00 0 0x5 4 0 00 00 0 R / W I 2 C 總線控制寄存器 0x0 X 66 TM 66 I I C C O N 位 描述 初始狀態(tài) 應(yīng)答使能 [ 7] I 2 C 總線應(yīng)答使能位 0 禁止應(yīng)答產(chǎn)生; 1 允許應(yīng)答產(chǎn)生 在發(fā)送( Tx )模式下,應(yīng)答 時(shí)使 S D A 線空閑; 在接收( Rx )模式下,應(yīng)答時(shí)將 S D A 線置低電平。 ? 一條專門的串行數(shù)據(jù)線( SDA)和一條時(shí)鐘信號(hào)線( SCL)在所有連接到 I2C總線上的主控組件和周邊設(shè)備之間進(jìn)行信息的傳送。 ? 讀操作 有三種基本操作:當(dāng)前地址讀、隨機(jī)讀和順序讀三種。 ? 寫操作 分為“字節(jié)寫”和“頁面寫”兩種操作。 56 TM 56 ? 應(yīng)答信號(hào):接收數(shù)據(jù)的組件在接收到 8bit數(shù)據(jù)后,向發(fā)送數(shù)據(jù)的 I2C器件發(fā)出特定的低電平脈沖,表示已收到數(shù)據(jù)。 51 TM 51 ? 1. I2C工作原理 ? I2C的工作原理類似于電話網(wǎng)絡(luò),各種被控制電路均并聯(lián)在這條總線上,只有撥通各自的號(hào)碼被控電路才能工作,所以每個(gè)電路和模塊都有唯一的地址。 47 TM 47 寄存器 S 3C 44 B 0 地址 S 3C 2410 地址 讀 / 寫 描述 復(fù)位值 U R XH 0 0x01D 00 0 2 4 (小端) 0x01D 00 0 2 7 (大端) 0x500 000 2 4 (小端) 0x500 000 2 7 (大端) R U A R T 通道 0 接收 緩沖寄存器 U R XH 1 0x01D 04 0 2 4 (小端) 0x01D 04 0 2 7 (大端) 0x500 040 2 4 (小端) 0x500 040 2 7 (大端) R U A R T 通道 1 接收 緩沖寄存器 U R XH2 0x500 0 8 0 2 4 (小端) 0x500 0 8 0 2 7 (大端) R U A R T 通道 2 接收 緩沖寄存器 U T X H n 位 描述 初始狀態(tài) R XD A T A [7 : 0] 8 位 接收到 的數(shù)據(jù) 48 TM 48 10. 1. 6 S3C44B0/ S3C2410 UART設(shè)計(jì)實(shí)例 ? RS232接口設(shè)計(jì) 49 TM 49 ? 軟件設(shè)計(jì) ? 串口通信的軟件設(shè)計(jì)包括硬件設(shè)備的初始化、數(shù)據(jù)發(fā)送程序與數(shù)據(jù)接收程序,其中接收可以采用中斷的方式,可以采用查詢的方式。 45 TM 45 寄存器 S 3C 44 B 0 地址 S 3C 2410 地址 讀 / 寫 描述 復(fù)位值 U T X H 0 0x01D 00 0 20 ( 小 端) 0x01D 00 0 23 ( 大 端) 0x500 000 20 (小端) 0x500 000 23 (大端) W U A R T 通道 0 發(fā)送緩沖 寄存器 U T X H 1 0x01D 04 0 20 (小端) 0x01D 04 0 23 (大端) 0x500 040 20 (小端) 0x500 040 20 (大端) W U A R T 通道 1 發(fā)送緩沖寄存器 U T X H 2 0x500 0 8 0 20 (小端) 0x500 0 8 0 20 (大端) W U A R T 通道 2 發(fā)送緩沖寄存器 U T X H n 位 描述 初始狀態(tài) T XD A T A [7 : 0 ] 8 位將要發(fā)送的數(shù)據(jù) 46 TM 46 ? 10. UART 接收緩沖寄存器 ? S3C44B0有 2個(gè) UART發(fā)送緩沖寄存器:URXH0和 URXH1。 ? S3C2410也有 2個(gè) UART調(diào)制解調(diào)器狀態(tài)寄存器: UMSTAT0和 UMSTAT1 ? 詳細(xì)信息見 教材 《 ARM嵌入式系統(tǒng)結(jié)構(gòu)與編程 》 表 109 44 TM 4