第9章硬件結(jié)構(gòu)與關(guān)鍵技術(shù)分析_第1頁(yè)
第9章硬件結(jié)構(gòu)與關(guān)鍵技術(shù)分析_第2頁(yè)
第9章硬件結(jié)構(gòu)與關(guān)鍵技術(shù)分析_第3頁(yè)
第9章硬件結(jié)構(gòu)與關(guān)鍵技術(shù)分析_第4頁(yè)
第9章硬件結(jié)構(gòu)與關(guān)鍵技術(shù)分析_第5頁(yè)
已閱讀5頁(yè),還剩63頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1TM第第9章章S3C44B0/S3C2410硬件結(jié)構(gòu)硬件結(jié)構(gòu)與關(guān)鍵技術(shù)分析與關(guān)鍵技術(shù)分析S3C44B0是基于是基于ARM7TDMI架構(gòu)的,架構(gòu)的,S3C2410是基于是基于ARM920T架構(gòu)的。當(dāng)前,這架構(gòu)的。當(dāng)前,這兩款芯片在嵌入式開(kāi)發(fā)領(lǐng)域廣泛應(yīng)用。本章兩款芯片在嵌入式開(kāi)發(fā)領(lǐng)域廣泛應(yīng)用。本章主要介紹主要介紹S3C44B0和和S3C2410的硬件資源和的硬件資源和整體架構(gòu),對(duì)其存儲(chǔ)控制器、整體架構(gòu),對(duì)其存儲(chǔ)控制器、NAND Flash控控制原理、時(shí)鐘電源管理、通用制原理、時(shí)鐘電源管理、通用I/O接口和中斷接口和中斷控制器作了詳細(xì)介紹,并通過(guò)一定的實(shí)例來(lái)控制器作了詳細(xì)介紹,并通過(guò)一定的實(shí)例來(lái)加

2、深讀者對(duì)關(guān)鍵技術(shù)的理解。加深讀者對(duì)關(guān)鍵技術(shù)的理解。2TM2內(nèi)容提要內(nèi)容提要91 處理器簡(jiǎn)介處理器簡(jiǎn)介92S3C44B0/ S3C2410存儲(chǔ)控制器存儲(chǔ)控制器93S3C2410 NAND Flash控制器控制器94 S3C44B0/ S3C2410時(shí)鐘電源管理時(shí)鐘電源管理95 S3C44B0/ S3C2410通用通用 I/O端口端口96 S3C44B0/S3C2410中斷機(jī)制中斷機(jī)制3TM394 S3C44B0/ S3C2410時(shí)鐘電源管理時(shí)鐘電源管理nS3C44B0的電源管理有五種模式:正常模式,低速模式,的電源管理有五種模式:正常模式,低速模式,空閑模式,停止模式和空閑模式,停止模式和LCD

3、的的SL空閑模式。空閑模式。 nS3C2410的電源管理模塊有四種活動(dòng)模式:正常模式,低速的電源管理模塊有四種活動(dòng)模式:正常模式,低速模式,休眠模式和斷電模式。模式,休眠模式和斷電模式。 4TM4941 S3C44B0/ S3C2410時(shí)鐘管理時(shí)鐘管理 n1時(shí)鐘結(jié)構(gòu):時(shí)鐘結(jié)構(gòu):nS3C44B0的時(shí)鐘發(fā)生器模塊的時(shí)鐘發(fā)生器模塊 5TM5nS3C2410的時(shí)鐘發(fā)生器模塊的時(shí)鐘發(fā)生器模塊 n見(jiàn)教材見(jiàn)教材ARM嵌入式系統(tǒng)結(jié)構(gòu)與編程嵌入式系統(tǒng)結(jié)構(gòu)與編程第第241頁(yè)頁(yè)9-206TM6n2時(shí)鐘源的選擇:時(shí)鐘源的選擇:n控制模式引腳(控制模式引腳(OM3和和OM2)與)與S3C44B0/S3C2410時(shí)鐘源時(shí)

4、鐘源選擇的結(jié)合關(guān)系如表選擇的結(jié)合關(guān)系如表9-18所示。所示。OM3:2狀態(tài)通過(guò)查閱狀態(tài)通過(guò)查閱OM3和和OM2引腳在引腳在nRESET上升沿時(shí)的值內(nèi)部鎖存的。上升沿時(shí)的值內(nèi)部鎖存的。7TM78TM8n3PLL(鎖相環(huán))(鎖相環(huán))n內(nèi)置時(shí)鐘發(fā)生器的內(nèi)置時(shí)鐘發(fā)生器的S3C44B0 PLL/ S3C2410MPLL是一個(gè)以是一個(gè)以頻率與相位輸入信號(hào)的基準(zhǔn)的同步輸出信號(hào)的電路。頻率與相位輸入信號(hào)的基準(zhǔn)的同步輸出信號(hào)的電路。 9TM9n4上電復(fù)位:上電復(fù)位:n晶振開(kāi)始振蕩數(shù)毫秒后,當(dāng)晶振開(kāi)始振蕩數(shù)毫秒后,當(dāng)S3C44B0OSC(S3C2410: XTlpll)時(shí)鐘穩(wěn)定后)時(shí)鐘穩(wěn)定后nRESET得到釋放,

5、得到釋放,PLL開(kāi)始根據(jù)默認(rèn)的開(kāi)始根據(jù)默認(rèn)的PLL配置進(jìn)行運(yùn)作。配置進(jìn)行運(yùn)作。nPLL在上電復(fù)位后變得不穩(wěn)定,所以在上電復(fù)位后變得不穩(wěn)定,所以Fin代替代替Fpllo(S3C2410: Mpll)在)在S/W(S3C2410: 軟件)更新軟件)更新PLLCON的配置前直接反饋到的配置前直接反饋到Fout。n用戶在復(fù)位后想使用用戶在復(fù)位后想使用PLLCON寄存器的默認(rèn)值,也需要通過(guò)寄存器的默認(rèn)值,也需要通過(guò)S/W(S3C2410: 軟軟件)寫入相同的值給件)寫入相同的值給PLLCON寄存器。寄存器。 10TM10上電復(fù)位時(shí)鐘鎖定上電復(fù)位時(shí)鐘鎖定 11TM11n在正常模式下的操作,如果用戶希望通過(guò)

6、寫在正常模式下的操作,如果用戶希望通過(guò)寫PMS值的方法改值的方法改變頻率,變頻率,PLL鎖定時(shí)間會(huì)自動(dòng)寫入。在鎖定時(shí)間里,時(shí)鐘不鎖定時(shí)間會(huì)自動(dòng)寫入。在鎖定時(shí)間里,時(shí)鐘不支持內(nèi)部模塊。支持內(nèi)部模塊。 12TM12942 S3C44B0/ S3C2410電源管理電源管理nS3C44B0/ S3C2410電源管理模塊通過(guò)控制系統(tǒng)時(shí)鐘,實(shí)現(xiàn)電源管理模塊通過(guò)控制系統(tǒng)時(shí)鐘,實(shí)現(xiàn)減少系統(tǒng)的電源功耗。減少系統(tǒng)的電源功耗。nS3C44B0的方法與的方法與PLL,時(shí)鐘控制邏輯,外設(shè)時(shí)鐘控制以,時(shí)鐘控制邏輯,外設(shè)時(shí)鐘控制以及喚醒信號(hào)相關(guān)。及喚醒信號(hào)相關(guān)。 13TM1314TM14S3C44B0 電源管理狀態(tài)機(jī)電源管

7、理狀態(tài)機(jī)15TM15S3C2410 電源管理狀態(tài)機(jī)電源管理狀態(tài)機(jī)16TM16943 S3C44B0/ S3C2410時(shí)鐘與電源管理專用時(shí)鐘與電源管理專用寄存器寄存器n鎖時(shí)計(jì)數(shù)寄存器鎖時(shí)計(jì)數(shù)寄存器LOCKTIME 、PLL配置寄存器配置寄存器 、時(shí)鐘控制、時(shí)鐘控制寄存器(寄存器(CLKCON) 、低速時(shí)鐘控制寄存器(、低速時(shí)鐘控制寄存器(CLKSLOW) 詳細(xì)描述信息詳細(xì)描述信息見(jiàn)教材見(jiàn)教材ARM嵌入式系統(tǒng)結(jié)構(gòu)與編程嵌入式系統(tǒng)結(jié)構(gòu)與編程第第246-250頁(yè)頁(yè)17TM1795 S3C44B0/ S3C2410通用通用 I/O端口端口S3C44B0有有71個(gè)多功能輸入個(gè)多功能輸入/輸出引腳。有如下輸

8、出引腳。有如下7個(gè)端口:個(gè)端口:n兩個(gè)兩個(gè)9位輸入位輸入/輸出端口(端口輸出端口(端口E 和和F)n兩個(gè)兩個(gè)8位輸入位輸入/輸出端口(端口輸出端口(端口D 和和G)n一個(gè)一個(gè)16位輸入位輸入/輸出端口(端口輸出端口(端口C)n一個(gè)一個(gè)10位輸出端口(端口位輸出端口(端口A)n一個(gè)一個(gè)11位輸入位輸入/輸出端口(端口輸出端口(端口B)18TM18S3C2410有有117個(gè)多功能輸入個(gè)多功能輸入/輸出引腳。有如下輸出引腳。有如下8個(gè)端口:個(gè)端口:n端口端口A(GPA):):23位輸出端口位輸出端口n端口端口B(GPB):):11位輸入位輸入/輸出端口輸出端口n端口端口C(GPC):):16位輸入位

9、輸入/輸出端口輸出端口n端口端口D(GPD):):16位輸入位輸入/輸出端口輸出端口n端口端口E(GPE):):16位輸入位輸入/輸出端口輸出端口n端口端口F(GPF):):8位輸入位輸入/輸出端口輸出端口n端口端口G(GPG):):16位輸入位輸入/輸出端口輸出端口n端口端口H(GPH):):11位輸入位輸入/輸出端口輸出端口19TM199.5.1 端口控制描述端口控制描述1端口配置(控制)寄存器端口配置(控制)寄存器n在在S3C44B0和和S3C2410中,大多數(shù)引腳是復(fù)合式的。所以中,大多數(shù)引腳是復(fù)合式的。所以,需要決定每個(gè)引腳所選擇的功能。端口控制寄存器決定每,需要決定每個(gè)引腳所選擇的

10、功能。端口控制寄存器決定每個(gè)引腳的功能。個(gè)引腳的功能。n在在S3C44B0中,如果中,如果PG0-PG7用于在掉電模式下的喚醒信用于在掉電模式下的喚醒信號(hào),這些端口需要配置成中斷模式。號(hào),這些端口需要配置成中斷模式。n在在S3C2410中,如果中,如果GPF0-GPF7和和GPG0-GPG7用于斷電用于斷電模式下的喚醒信號(hào),這些端口必須配置成中斷模式。模式下的喚醒信號(hào),這些端口必須配置成中斷模式。20TM209.5.1 端口控制描述端口控制描述2端口數(shù)據(jù)寄存器端口數(shù)據(jù)寄存器 如果這些端口被配置成輸出端口,數(shù)據(jù)可以從相應(yīng)的位如果這些端口被配置成輸出端口,數(shù)據(jù)可以從相應(yīng)的位被寫入。如果端口被配置成

11、輸入端口,數(shù)據(jù)可以從相應(yīng)的位讀被寫入。如果端口被配置成輸入端口,數(shù)據(jù)可以從相應(yīng)的位讀出。出。3端口上拉寄存器端口上拉寄存器 端口上拉寄存器控制每個(gè)端口組的上拉電阻使能端口上拉寄存器控制每個(gè)端口組的上拉電阻使能/禁止。禁止。當(dāng)相應(yīng)的位置當(dāng)相應(yīng)的位置0,引腳的上拉電阻被使能。為,引腳的上拉電阻被使能。為1時(shí),上拉電阻被時(shí),上拉電阻被禁止。禁止。21TM219.5.1 端口控制描述端口控制描述4外部中斷控制寄存器外部中斷控制寄存器nS3C44B0 的的8個(gè)外部中斷與個(gè)外部中斷與S3C2410的的24個(gè)外部中斷通過(guò)個(gè)外部中斷通過(guò)多種信號(hào)方法被請(qǐng)求。多種信號(hào)方法被請(qǐng)求。 nEXTINT寄存器可以設(shè)置外部

12、中斷觸發(fā)的方式,如低電平觸寄存器可以設(shè)置外部中斷觸發(fā)的方式,如低電平觸發(fā)、高電平觸發(fā)、下降沿觸發(fā)、上升沿觸發(fā)和雙沿觸發(fā)。發(fā)、高電平觸發(fā)、下降沿觸發(fā)、上升沿觸發(fā)和雙沿觸發(fā)。22TM229.5.2 端口控制寄存器端口控制寄存器2. S3C2410端口寄存器端口寄存器23TM239.5.2 端口控制寄存器端口控制寄存器2. S3C2410端口寄存器端口寄存器24TM249.5.2 端口控制寄存器端口控制寄存器2. S3C2410端口寄存器端口寄存器25TM259.5.2 端口控制寄存器端口控制寄存器n38:端口:端口CH與端口與端口B寄存器類似,詳細(xì)信息見(jiàn)寄存器類似,詳細(xì)信息見(jiàn)教材教材ARM嵌入式系

13、統(tǒng)結(jié)構(gòu)與編程嵌入式系統(tǒng)結(jié)構(gòu)與編程第九章的第九章的9.5.2節(jié)節(jié)的說(shuō)明的說(shuō)明n9. 雜項(xiàng)控制寄存器雜項(xiàng)控制寄存器MISCCR:USB相關(guān)設(shè)置相關(guān)設(shè)置n10. DCLK控制寄存器:定義控制寄存器:定義DCLKn信號(hào)信號(hào)26TM269.5.2 端口控制寄存器端口控制寄存器n11. 外部中斷控制寄存器外部中斷控制寄存器: 設(shè)置中斷觸發(fā)方式設(shè)置中斷觸發(fā)方式 To recognize the level interrupt, the valid logic level on EXTINTn pin must be retained at least for 40ns because of the nois

14、e filter (ENTINT15:0).27TM279.5.2 端口控制寄存器端口控制寄存器n11. 外部中斷控制寄存器外部中斷控制寄存器 28TM289.5.2 端口控制寄存器端口控制寄存器n12. 外部中斷濾波寄存器:控制外部中斷濾波寄存器:控制EINT23:16濾波長(zhǎng)度濾波長(zhǎng)度29TM299.5.2 端口控制寄存器端口控制寄存器n13. 外部中斷屏蔽寄存器外部中斷屏蔽寄存器EINTMASK:是否允許外部中斷:是否允許外部中斷EINT23:4,0允許、允許、1屏蔽屏蔽n14. 外部中斷等待寄存器外部中斷等待寄存器EINTPEND:0無(wú)請(qǐng)求、無(wú)請(qǐng)求、1請(qǐng)求請(qǐng)求可以通過(guò)對(duì)寄存器相應(yīng)位寫入可

15、以通過(guò)對(duì)寄存器相應(yīng)位寫入1來(lái)清除特定位。來(lái)清除特定位。n通用狀態(tài)寄存器通用狀態(tài)寄存器GSTATUS0GSTATUS430TM309.5.3 通用通用I/O接口設(shè)計(jì)實(shí)例接口設(shè)計(jì)實(shí)例LED與蜂鳴器接口電路與蜂鳴器接口電路S3C44B0的端口的端口A的第的第0、1、2、3管腳分別與管腳分別與LED相連,端口相連,端口E的第的第0管腳用來(lái)控制蜂鳴器。管腳用來(lái)控制蜂鳴器。 如圖如圖9-26所示所示31TM319.5.3 通用通用I/O接口設(shè)計(jì)實(shí)例接口設(shè)計(jì)實(shí)例控制編程要求:控制編程要求: 根據(jù)根據(jù)LED的硬件電路圖,編程實(shí)現(xiàn)的硬件電路圖,編程實(shí)現(xiàn)LED的循環(huán)閃爍:的循環(huán)閃爍:LED1亮亮 延時(shí),延時(shí),LE

16、D4滅滅- LED2亮亮 延時(shí),延時(shí),LED1滅滅- LED3亮亮 延時(shí),延時(shí),LED2滅滅- LED4亮亮 延時(shí),延時(shí),LED3滅滅- 蜂鳴器開(kāi)蜂鳴器開(kāi) 延時(shí),蜂鳴器關(guān)延時(shí),蜂鳴器關(guān),如此無(wú)限循環(huán),實(shí)現(xiàn),如此無(wú)限循環(huán),實(shí)現(xiàn)LED霓霓虹燈式的循環(huán)閃爍虹燈式的循環(huán)閃爍 。32TM329.5.3 通用通用I/O接口設(shè)計(jì)實(shí)例接口設(shè)計(jì)實(shí)例端口配置:端口配置:#define rPCONA(*(volatile unsigned *)0 x1d20000)#define rPDATA(*(volatile unsigned *)0 x1d20004)#define rPCONE(*(volatile un

17、signed *)0 x1d20028)#define rPDATE(*(volatile unsigned *)0 x1d2002c)rPCONA = rPCONA & 0 xFFFFFFF0;rPCONE = rPCONE & 0 xFFFFFFFD;rPCONE = rPCONE | 0 x01;33TM339.5.3 通用通用I/O接口設(shè)計(jì)實(shí)例接口設(shè)計(jì)實(shí)例延時(shí)函數(shù):延時(shí)函數(shù):void Delay(int time)unsigned int i;for (i=0;itime;i+);LED1 控制函數(shù):控制函數(shù):void LED1_Delay(char x)if (x=1

18、)rPDATA = rPDATA & 0 xFFFFFFFE;else if(x=0)rPDATA = rPDATA | 0 x01;Delay(500);34TM349.5.3 通用通用I/O接口設(shè)計(jì)實(shí)例接口設(shè)計(jì)實(shí)例主函數(shù):主函數(shù):void Main()while(1)LED1_Delay(1);LED4_Delay(0);LED2_Delay(1);LED1_Delay(0); Beep_Delay(1);Beep_Delay(0);35TM359.6 S3C44B0/S3C2410中斷機(jī)制中斷機(jī)制n中斷是中斷是CPU在程序運(yùn)行過(guò)程中,被內(nèi)部或外部的事件所打斷在程序運(yùn)行過(guò)程中,被內(nèi)

19、部或外部的事件所打斷,轉(zhuǎn)去執(zhí)行一段預(yù)先安排好的中斷服務(wù)程序,中斷服務(wù)程序,轉(zhuǎn)去執(zhí)行一段預(yù)先安排好的中斷服務(wù)程序,中斷服務(wù)程序執(zhí)行完畢后,又返回原來(lái)的斷點(diǎn),繼續(xù)執(zhí)行原來(lái)的程序。執(zhí)行完畢后,又返回原來(lái)的斷點(diǎn),繼續(xù)執(zhí)行原來(lái)的程序。n對(duì)于微控制器來(lái)說(shuō),中斷源可能有很多,這就需要一個(gè)中斷對(duì)于微控制器來(lái)說(shuō),中斷源可能有很多,這就需要一個(gè)中斷源的管理者,這個(gè)中斷管理者在微控制器里由源的管理者,這個(gè)中斷管理者在微控制器里由“中斷控制器中斷控制器”來(lái)充當(dāng)。來(lái)充當(dāng)。S3C44B0/S3C2410內(nèi)部集成了中斷控制器,能內(nèi)部集成了中斷控制器,能夠管理多個(gè)中斷源。夠管理多個(gè)中斷源。36TM369.6.1 S3C44B

20、0中斷控制器中斷控制器1.中斷源中斷源n S3C44B0中斷控制器可以管理中斷控制器可以管理30個(gè)中斷源,其中個(gè)中斷源,其中4個(gè)外部個(gè)外部中斷中斷4、5、6、7通過(guò)通過(guò)“或或”邏輯門共用一根中斷請(qǐng)求線,邏輯門共用一根中斷請(qǐng)求線,2個(gè)個(gè)UART錯(cuò)誤中斷通過(guò)錯(cuò)誤中斷通過(guò)“或或”邏輯門共用一根中斷請(qǐng)求線。邏輯門共用一根中斷請(qǐng)求線。共計(jì)共計(jì)26個(gè)獨(dú)立的中斷源。個(gè)獨(dú)立的中斷源。37TM3738TM389.6.1 S3C44B0中斷控制器中斷控制器n2.中斷優(yōu)先級(jí)產(chǎn)生模塊中斷優(yōu)先級(jí)產(chǎn)生模塊39TM399.6.1 S3C44B0中斷控制器中斷控制器n優(yōu)先級(jí)約定優(yōu)先級(jí)約定在從優(yōu)先級(jí)產(chǎn)生單元中,在從優(yōu)先級(jí)產(chǎn)生單

21、元中,sGA、sGB、sGC、sGD的優(yōu)的優(yōu)先級(jí)總是高于先級(jí)總是高于sGKA和和sGKB, sGN的優(yōu)先級(jí)可以通過(guò)編的優(yōu)先級(jí)可以通過(guò)編程來(lái)配置。程來(lái)配置。sGKN中,中,sGKA的優(yōu)先級(jí)高于的優(yōu)先級(jí)高于sGKB。在主優(yōu)先級(jí)產(chǎn)生單元中,在主優(yōu)先級(jí)產(chǎn)生單元中,mGA、mGB、mGC、mGD的的優(yōu)先級(jí)總是高于優(yōu)先級(jí)總是高于mGKA和和mGKB,所以,所以 mGKA和和mGKB的優(yōu)先級(jí)是最低的。的優(yōu)先級(jí)是最低的。mGKN的優(yōu)先級(jí)可以通過(guò)編程來(lái)配的優(yōu)先級(jí)可以通過(guò)編程來(lái)配置。置。40TM40 S3C44B0的的IRQ中斷分為向量中斷和非向量中斷(通中斷分為向量中斷和非向量中斷(通過(guò)設(shè)置中斷控制寄存器過(guò)設(shè)置

22、中斷控制寄存器INTCON來(lái)配置)。中斷發(fā)生時(shí),來(lái)配置)。中斷發(fā)生時(shí),對(duì)于兩類中斷程序執(zhí)行情況不同:對(duì)于兩類中斷程序執(zhí)行情況不同:n非向量中斷方式非向量中斷方式中斷源產(chǎn)生中斷后,從中斷源產(chǎn)生中斷后,從0 x18 處取指、譯碼、執(zhí)行。處取指、譯碼、執(zhí)行。0 x18中斷服務(wù)入口3. S3C44B0向量中斷與非向量中斷向量中斷與非向量中斷9.6.1 S3C44B0中斷控制器中斷控制器41TM41n向量中斷方式向量中斷方式中斷源產(chǎn)生中斷后,跳轉(zhuǎn)到中斷源產(chǎn)生中斷后,跳轉(zhuǎn)到0 x18 處,并忽略處,并忽略0 x18 處指令,中處指令,中斷控制器自動(dòng)產(chǎn)生分支指令并加載到總線上,這些分支指令使斷控制器自動(dòng)產(chǎn)生

23、分支指令并加載到總線上,這些分支指令使程序計(jì)數(shù)器能夠?qū)?yīng)到每一個(gè)中斷源的向量地址。在各個(gè)中斷程序計(jì)數(shù)器能夠?qū)?yīng)到每一個(gè)中斷源的向量地址。在各個(gè)中斷源對(duì)應(yīng)的中斷向量地址中,存放著跳轉(zhuǎn)到相應(yīng)中斷服務(wù)程序的源對(duì)應(yīng)的中斷向量地址中,存放著跳轉(zhuǎn)到相應(yīng)中斷服務(wù)程序的指令代碼。指令代碼。0 x18中斷服務(wù)入口3. S3C44B0向量中斷與非向量中斷向量中斷與非向量中斷9.6.1 S3C44B0中斷控制器中斷控制器42TM42中斷啟動(dòng)中斷啟動(dòng) - - 中斷響應(yīng)中斷響應(yīng)IRQs 中斷非向量中斷INTCON V= 1向量中斷INTCON V= 0中斷服務(wù)入口地址表地址映射中斷控制器地址映射中斷控制器讀取I_ISP

24、R寄存器計(jì)算偏移(R8)26個(gè)中斷源EINT0/1/2 PowerDownEINT0/1/2 PowerDown9.6.1 S3C44B0中斷控制器中斷控制器43TM439.6.2 S3C2410中斷控制器中斷控制器nS3C2410提供提供56個(gè)中斷源,單獨(dú)的信號(hào)線有個(gè)中斷源,單獨(dú)的信號(hào)線有32個(gè)。如表個(gè)。如表9-50所示。當(dāng)中斷源提出中斷服務(wù)請(qǐng)求后,中斷控制器經(jīng)過(guò)仲所示。當(dāng)中斷源提出中斷服務(wù)請(qǐng)求后,中斷控制器經(jīng)過(guò)仲裁之后再請(qǐng)求裁之后再請(qǐng)求ARM920T核的核的FIQ或或IRQ中斷。中斷。n仲裁過(guò)程依賴于硬件優(yōu)先級(jí)邏輯,同時(shí)仲裁結(jié)果被寫入到中仲裁過(guò)程依賴于硬件優(yōu)先級(jí)邏輯,同時(shí)仲裁結(jié)果被寫入到中

25、斷掛起寄存器中,用戶可在中斷服務(wù)程序中讀取該寄存器,斷掛起寄存器中,用戶可在中斷服務(wù)程序中讀取該寄存器,從而識(shí)別出是哪一個(gè)中斷源產(chǎn)生中斷。從而識(shí)別出是哪一個(gè)中斷源產(chǎn)生中斷。 44TM4445TM45S3C2410中斷優(yōu)先級(jí)仲裁模塊中斷優(yōu)先級(jí)仲裁模塊 46TM469.6.2 S3C2410中斷控制器中斷控制器nARBITER0ARBITER5構(gòu)成第一級(jí)仲裁邏輯,構(gòu)成第一級(jí)仲裁邏輯,ARBITER6構(gòu)成第構(gòu)成第二級(jí)仲裁邏輯。每個(gè)仲裁組用二級(jí)仲裁邏輯。每個(gè)仲裁組用1位仲裁模式控制信號(hào)位仲裁模式控制信號(hào)(ABR_MODE)和兩位選擇控制信號(hào)和兩位選擇控制信號(hào)(ABR_SEL)確定中斷優(yōu)先級(jí):確定中斷優(yōu)

26、先級(jí):(1) 若若ABR_SEL=00,則中斷優(yōu)先級(jí)為,則中斷優(yōu)先級(jí)為 REQ0、REQ1、REQ2、REQ3、REQ4、REQ5(2) 若若ABR_SEL=01,則中斷優(yōu)先級(jí)為,則中斷優(yōu)先級(jí)為REQ0、REQ2、REQ3、REQ4、 REQ1、 REQ5(3) 若若ABR_SEL=10,則中斷優(yōu)先級(jí)為,則中斷優(yōu)先級(jí)為 REQ0、REQ3、REQ4、 REQ1、REQ2、 REQ5(4) 若若ABR_SEL=11,則中斷優(yōu)先級(jí)為,則中斷優(yōu)先級(jí)為REQ0、REQ4、 REQ1、 REQ2、REQ3、 REQ547TM479.6.2 S3C2410中斷控制器中斷控制器n仲裁模式控制信號(hào)仲裁模式控制

27、信號(hào)(ABR_MODE) (1) 當(dāng)當(dāng)ABR_MODE設(shè)置為設(shè)置為0時(shí),時(shí),ABR_SEL的值不會(huì)自動(dòng)改變,仲裁組的值不會(huì)自動(dòng)改變,仲裁組工作在固定工作模式下。工作在固定工作模式下。(2) 當(dāng)當(dāng)ABR_MODE設(shè)置為設(shè)置為1時(shí),則時(shí),則ABR_SEL位值按循環(huán)方式自動(dòng)改變位值按循環(huán)方式自動(dòng)改變48TM489.6.3 S3C44B0/S3C2410 中斷控制特殊功能寄存器中斷控制特殊功能寄存器n使用使用S3C44B0/S3C2410中斷控制時(shí)中斷控制時(shí) ,不僅要對(duì),不僅要對(duì)I/O引腳和引腳和相應(yīng)的功能部件進(jìn)行設(shè)置,還要對(duì)中斷控制器的相關(guān)寄存器相應(yīng)的功能部件進(jìn)行設(shè)置,還要對(duì)中斷控制器的相關(guān)寄存器進(jìn)

28、行初始化,相關(guān)的寄存器主要有進(jìn)行初始化,相關(guān)的寄存器主要有中斷控制寄存器中斷控制寄存器、中斷源、中斷源掛起寄存器掛起寄存器、中斷模式寄存器、中斷屏蔽寄存器、中斷優(yōu)先中斷模式寄存器、中斷屏蔽寄存器、中斷優(yōu)先級(jí)寄存器、中斷掛起寄存器級(jí)寄存器、中斷掛起寄存器。 n2410中與外部中斷中與外部中斷(EINT)相關(guān)的寄存器還有:相關(guān)的寄存器還有:端口控制寄存器端口控制寄存器(GPFCON、GPGCON),外部中斷控制寄存器,外部中斷控制寄存器(EXTINT0EXTINT2,控制中斷觸發(fā)方式和是否進(jìn)行濾波,控制中斷觸發(fā)方式和是否進(jìn)行濾波),外部,外部中斷濾波寄存器中斷濾波寄存器(EINTFLT2、 EIN

29、TFLT3),外部中斷屏蔽),外部中斷屏蔽(EINTMASK),外部中斷等待寄存器,外部中斷等待寄存器(EINTPEND)。49TM491. S3C44B0的中斷控制寄存器的中斷控制寄存器INTCON 9.6.3 S3C44B0/S3C2410 中斷控制特殊功能寄存器中斷控制特殊功能寄存器50TM502. 中斷掛起寄存器中斷掛起寄存器 INTPNDn中斷掛起寄存器中斷掛起寄存器INTPND如表如表9-52所示,每一個(gè)中斷源對(duì)應(yīng)著一位。所示,每一個(gè)中斷源對(duì)應(yīng)著一位。只有未被屏蔽且具有最高優(yōu)先級(jí)、在只有未被屏蔽且具有最高優(yōu)先級(jí)、在源掛起寄存器源掛起寄存器中等待處理的中中等待處理的中斷請(qǐng)求,其對(duì)應(yīng)的

30、中斷掛起位被置斷請(qǐng)求,其對(duì)應(yīng)的中斷掛起位被置1(某時(shí)刻只有一位能夠置為某時(shí)刻只有一位能夠置為1)。nS3C44B0在中斷服務(wù)程序中必須加入對(duì)在中斷服務(wù)程序中必須加入對(duì)I_ISPC和和F_ISPC寫寫1的操作的操作來(lái)清除掛起條件,準(zhǔn)備接收下一次中斷。來(lái)清除掛起條件,準(zhǔn)備接收下一次中斷。nS3C2410在中斷服務(wù)程序中應(yīng)該在清除在中斷服務(wù)程序中應(yīng)該在清除SRCPND后對(duì)后對(duì)INTPND進(jìn)行進(jìn)行清除操作清除操作 9.6.3 S3C44B0/S3C2410 中斷控制特殊功能寄存器中斷控制特殊功能寄存器51TM513. 中斷模式寄存器中斷模式寄存器INTMODnARM處理器的中斷模式有兩種:處理器的中斷

31、模式有兩種:IRQ模式和模式和FIQ模式。中斷模模式。中斷模式寄存器式寄存器INTMOD如表如表9-53所示,每一個(gè)中斷源對(duì)應(yīng)著一位。所示,每一個(gè)中斷源對(duì)應(yīng)著一位。當(dāng)中斷源的模式位設(shè)置為當(dāng)中斷源的模式位設(shè)置為0時(shí),中斷會(huì)按時(shí),中斷會(huì)按IRQ模式來(lái)處理;當(dāng)模模式來(lái)處理;當(dāng)模式位設(shè)置為式位設(shè)置為1時(shí),對(duì)應(yīng)的中斷會(huì)按時(shí),對(duì)應(yīng)的中斷會(huì)按FIQ模式來(lái)處理。模式來(lái)處理。n某一時(shí)刻只能有一個(gè)中斷源在某一時(shí)刻只能有一個(gè)中斷源在FIQ模式處理,即模式處理,即INTMOD寄存寄存器只有一位可以設(shè)置為器只有一位可以設(shè)置為1。在。在FIQ模式下,模式下,INTPND寄存器和寄存器和INTOFFSET寄存器不受任何影響

32、。寄存器不受任何影響。9.6.3 S3C44B0/S3C2410 中斷控制特殊功能寄存器中斷控制特殊功能寄存器52TM524. 中斷屏蔽寄存器中斷屏蔽寄存器INTMSKn在中斷屏蔽寄存器在中斷屏蔽寄存器INTMSK中,除了全局屏蔽位外,每一中,除了全局屏蔽位外,每一個(gè)中斷源對(duì)應(yīng)著一位,確定對(duì)應(yīng)的中斷源是否被屏蔽。如個(gè)中斷源對(duì)應(yīng)著一位,確定對(duì)應(yīng)的中斷源是否被屏蔽。如教材表教材表9-54所示。所示。n如果某位設(shè)置為如果某位設(shè)置為1, 則該位所對(duì)應(yīng)的中斷請(qǐng)求不會(huì)被處理;則該位所對(duì)應(yīng)的中斷請(qǐng)求不會(huì)被處理;如果某位設(shè)置為如果某位設(shè)置為0, 則該位所對(duì)應(yīng)的中斷請(qǐng)求才會(huì)被處理。則該位所對(duì)應(yīng)的中斷請(qǐng)求才會(huì)被處

33、理。如果全局屏蔽位被設(shè)置為如果全局屏蔽位被設(shè)置為1,則所有的中斷請(qǐng)求都不會(huì)被,則所有的中斷請(qǐng)求都不會(huì)被處理理。處理理。 9.6.3 S3C44B0/S3C2410 中斷控制特殊功能寄存器中斷控制特殊功能寄存器53TM535. S3C44B0向量模式相關(guān)寄存器向量模式相關(guān)寄存器n對(duì)對(duì)S3C44B0中的優(yōu)先級(jí)產(chǎn)生模塊的設(shè)置通過(guò)對(duì)寄存器中的優(yōu)先級(jí)產(chǎn)生模塊的設(shè)置通過(guò)對(duì)寄存器I_PSLV、I_PMST、I_CSLV、I_CMST的設(shè)置來(lái)完成。的設(shè)置來(lái)完成。n如果幾個(gè)中斷源同時(shí)發(fā)出中斷請(qǐng)求,則可通過(guò)讀如果幾個(gè)中斷源同時(shí)發(fā)出中斷請(qǐng)求,則可通過(guò)讀I_IPSR寄存器可獲知前具寄存器可獲知前具有最高優(yōu)先級(jí)的中斷源

34、。有最高優(yōu)先級(jí)的中斷源。9.6.3 S3C44B0/S3C2410 中斷控制特殊功能寄存器中斷控制特殊功能寄存器寄存器寄存器讀讀/ /寫寫描述描述I_PSLVI_PSLVR/WR/W確定從單元的確定從單元的IRQIRQ優(yōu)先級(jí)優(yōu)先級(jí)I_PMSTI_PMSTR/WR/W確定主單元的確定主單元的IRQIRQ優(yōu)先級(jí)優(yōu)先級(jí)I_CSLVI_CSLVR R當(dāng)前從單元的當(dāng)前從單元的IRQIRQ優(yōu)先級(jí)優(yōu)先級(jí)I_CMSTI_CMSTR R當(dāng)前主單元的當(dāng)前主單元的IRQIRQ優(yōu)先級(jí)優(yōu)先級(jí)I_ISPRI_ISPRR R中斷服務(wù)掛起寄存器中斷服務(wù)掛起寄存器54TM545. S3C44B0向量模式相關(guān)寄存器向量模式相關(guān)寄

35、存器nI_PSLV9.6.3 S3C44B0/S3C2410 中斷控制特殊功能寄存器中斷控制特殊功能寄存器I_PSLVI_PSLV位位描述描述PSLAVEmGA31:24確定確定mGAmGA中的中的SgaSga、B B、C C、D D的優(yōu)先級(jí)的優(yōu)先級(jí)PSLAVEmGB23:16確定確定mGBmGB中的中的SgaSga、B B、C C、D D的優(yōu)先級(jí)的優(yōu)先級(jí)PSLAVEmGC15:8確定確定mGCmGC中的中的SgaSga、B B、C C、D D的優(yōu)先級(jí)的優(yōu)先級(jí)PSLAVEmGD7:0確定確定mGDmGD中的中的SgaSga、B B、C C、D D的優(yōu)先級(jí)的優(yōu)先級(jí)PSLAVEmGA位位描述描述s

36、GA31:3000:1st, 01:2nd, 10:3rd, 11:4th00:1st, 01:2nd, 10:3rd, 11:4thsGB29:2800:1st, 01:2nd, 10:3rd, 11:4th00:1st, 01:2nd, 10:3rd, 11:4thsGC27:2600:1st, 01:2nd, 10:3rd, 11:4th00:1st, 01:2nd, 10:3rd, 11:4thsGD25:2400:1st, 01:2nd, 10:3rd, 11:4th00:1st, 01:2nd, 10:3rd, 11:4th55TM555. S3C44B0向量模式相關(guān)寄存器向量模式

37、相關(guān)寄存器nI_PMST9.6.3 S3C44B0/S3C2410 中斷控制特殊功能寄存器中斷控制特殊功能寄存器I_PMSTI_PMST位位描述描述M12主操作模式:主操作模式:0=0=輪詢輪詢 1=1=固定固定FxSLVA:D11:8從操作模式:從操作模式:0=0=輪詢輪詢 1=1=固定固定PMASTER7:0確定確定4 4個(gè)從單元的優(yōu)先級(jí)個(gè)從單元的優(yōu)先級(jí)PMASTER位位描述描述mGA7:600:1st, 01:2nd, 10:3rd, 11:4th00:1st, 01:2nd, 10:3rd, 11:4thmGB5:400:1st, 01:2nd, 10:3rd, 11:4th00:1s

38、t, 01:2nd, 10:3rd, 11:4thmGC3:200:1st, 01:2nd, 10:3rd, 11:4th00:1st, 01:2nd, 10:3rd, 11:4thmGD1:000:1st, 01:2nd, 10:3rd, 11:4th00:1st, 01:2nd, 10:3rd, 11:4th56TM565. S3C44B0向量模式相關(guān)寄存器向量模式相關(guān)寄存器nI_CSLV寄存器寄存器: 當(dāng)前從寄存器的當(dāng)前從寄存器的IRQ優(yōu)先級(jí)優(yōu)先級(jí)nI_CMST寄存器寄存器:當(dāng)前主寄存器的當(dāng)前主寄存器的IRQ優(yōu)先級(jí)優(yōu)先級(jí)nI_ISPR寄存器寄存器: 當(dāng)前正在被服務(wù)的中斷源當(dāng)前正在被服務(wù)的

39、中斷源(注意與注意與INTPND的區(qū)別的區(qū)別)nIRQ/FIQ中斷掛清零寄存器中斷掛清零寄存器I_ISPC、F_ISPC 設(shè)置位值為設(shè)置位值為1, 則清除中斷掛起寄存器中的對(duì)應(yīng)位則清除中斷掛起寄存器中的對(duì)應(yīng)位.9.6.3 S3C44B0/S3C2410 中斷控制特殊功能寄存器中斷控制特殊功能寄存器寄存器寄存器讀讀/ /寫寫描述描述I_ISPCWIRQIRQ中斷掛起清零寄存器中斷掛起清零寄存器F_ISPCWFRQFRQ中斷掛起清零寄存器中斷掛起清零寄存器57TM576. S3C2410 中斷偏移寄存器中斷偏移寄存器INTOFFSETnS3C2410中斷偏移寄存器中斷偏移寄存器INTOFFSET的

40、值代表了中斷源的值代表了中斷源號(hào),即在號(hào),即在IRQ模式下,模式下,INTPND寄存器中某位置寄存器中某位置1,則,則INTOFFSET寄存器中的值是其對(duì)應(yīng)中斷源的偏移量。該寄存器中的值是其對(duì)應(yīng)中斷源的偏移量。該寄存器是只讀的,可以通過(guò)清除寄存器是只讀的,可以通過(guò)清除SRCPND寄存器和寄存器和INTPND寄存器的掛起位來(lái)自動(dòng)清除。寄存器的掛起位來(lái)自動(dòng)清除。 9.6.3 S3C44B0/S3C2410 中斷控制特殊功能寄存器中斷控制特殊功能寄存器58TM587. S3C2410 源掛起寄存器源掛起寄存器SRCPND、SUBSRCPNDnS3C2410源掛起寄存器源掛起寄存器SRCPND由由32

41、位組成,每一個(gè)中位組成,每一個(gè)中斷請(qǐng)求信號(hào)對(duì)應(yīng)著其中的一位。中斷源請(qǐng)求中斷服務(wù)時(shí),斷請(qǐng)求信號(hào)對(duì)應(yīng)著其中的一位。中斷源請(qǐng)求中斷服務(wù)時(shí),其所對(duì)應(yīng)的位就被置其所對(duì)應(yīng)的位就被置1。nSRCPND記錄了哪些中斷源發(fā)出了中斷請(qǐng)求。子源掛起寄記錄了哪些中斷源發(fā)出了中斷請(qǐng)求。子源掛起寄存器存器SUBSRCPND用于共用中斷請(qǐng)求信號(hào)的中斷控制。用于共用中斷請(qǐng)求信號(hào)的中斷控制。nSRCPND、SUBSRCPND各位信息見(jiàn)各位信息見(jiàn)教材第教材第294頁(yè)表頁(yè)表9-58、表、表9-59。9.6.3 S3C44B0/S3C2410 中斷控制特殊功能寄存器中斷控制特殊功能寄存器59TM598. S3C2410中斷優(yōu)先級(jí)寄存

42、器中斷優(yōu)先級(jí)寄存器PRIORITYnS3C2410中斷優(yōu)先級(jí)寄存器中斷優(yōu)先級(jí)寄存器PRIORITY只在只在IRQ模式下起模式下起作用,中斷源的優(yōu)先級(jí)由作用,中斷源的優(yōu)先級(jí)由2位的位的ARB_SEL和和1位的位的ARB_MODE的不同設(shè)定值來(lái)決定。的不同設(shè)定值來(lái)決定。9.6.3 S3C44B0/S3C2410 中斷控制特殊功能寄存器中斷控制特殊功能寄存器60TM60S3C2410中斷處理過(guò)程相關(guān)寄存器中斷處理過(guò)程相關(guān)寄存器9.6.3 S3C44B0/S3C2410 中斷控制特殊功能寄存器中斷控制特殊功能寄存器61TM619.6.3 S3C44B0/S3C2410 中斷控制器設(shè)計(jì)實(shí)例中斷控制器設(shè)計(jì)

43、實(shí)例n中斷中斷接口接口設(shè)計(jì)設(shè)計(jì)62TM62#include44blib.h#include44b.h#includedef.hvoid KeyINT_isr(void);#define ROWNUM 3#define COLOMNNUM 3int keyrow = 0;int keycolomn = 0;int colomndata = 0;9.6.3 S3C44B0/S3C2410 中斷控制器設(shè)計(jì)實(shí)例中斷控制器設(shè)計(jì)實(shí)例63TM63void KeyInit(void)/ 初始化初始化IO端口端口/ #define rPCONC (*(volatile unsigned *)0 x1d20010)rPCONC &= (0 xFFF); rPCONC |= (0 10) | (0 8) | (0 6) / PC5-3 為輸入為輸入| (1 4) | (1 2) | (1 0); / PC2-0 為輸出為輸出rPUPC |= 0 x3F; / PC5-0 禁止上拉電阻禁止上拉電阻rPDATC |= 0 x7; / 初始狀態(tài)初始狀態(tài) PC2-0 置高電平置高電平/ 初始化中斷初始化中斷rI_ISPC = 0 x3FFFFFF; / 清除中斷清除中斷掛起掛起寄存器寄存器IN

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論