mini2440按鍵中斷控制led燈遇到的問(wèn)題
程序名:按鍵中斷控制led燈主要學(xué)習(xí)內(nèi)容,S3C2440外部中斷
本文引用地址:http://m.butianyuan.cn/article/201611/318686.htm遇到問(wèn)題
1. 超級(jí)終端下載程序時(shí)按下d后又跳回到下載界面,沒(méi)有等待我下載程序、解決辦法:這應(yīng)該是自己的大意,按下d的時(shí)候把鍵盤(pán)上大寫(xiě)控制鎖住了,超級(jí)終端只能輸入小寫(xiě)命令,注意細(xì)節(jié)。
2. 酓ummy_isr error, interrupt number: 5, INTMSK = 0xffffffdf。下載程序后超級(jí)終端顯示這句話(huà),網(wǎng)上找了很久沒(méi)找到很好的解決辦法,不過(guò)看到有人說(shuō)好像是MMU沒(méi)有初始化。解決辦法,初始化MMU,調(diào)用一個(gè)MMU_Init()函數(shù)就好了,這個(gè)函數(shù)的定義在MMU.c中,開(kāi)始我沒(méi)有添加MMU.c文件編譯鏈接是總是報(bào)錯(cuò)。
寫(xiě)在后面,源程序就不貼了,還有很多要改進(jìn)的,剛剛開(kāi)始,只是一個(gè)雛形而已,嘿嘿,不過(guò)解決問(wèn)題后也挺開(kāi)心的,記錄過(guò)程,恩,肚子餓了,吃飯去了。
2011-04-02
今天再次進(jìn)行串口通信的時(shí)候又遇到同樣的問(wèn)題,反復(fù)看了這篇以前寫(xiě)過(guò)的文章后還是沒(méi)有得到解決,但我肯定出現(xiàn)酓ummy_isr error, interrupt number: 5, INTMSK = 0xffffffdf這種錯(cuò)誤肯定是因?yàn)镸MU沒(méi)有初始化,所以我就先初始化MMU然后再進(jìn)行其他的初始化,問(wèn)題果然得到解決。重點(diǎn),先初始化MMU然后再進(jìn)行其他的初始化設(shè)置。
補(bǔ)充:網(wǎng)上搜到的。
使用suppervivi的n功能選項(xiàng)下載到NANDFLASH中可運(yùn)行原因如下(以下都是從網(wǎng)上找的):
一般情況下,在A(yíng)RM9調(diào)試程序都是下載到RAM中執(zhí)行的,當(dāng)然,只要沒(méi)有中斷產(chǎn)生程序看似能夠正常執(zhí)行,
但是一旦中斷發(fā)生,程序必然會(huì)跑飛,原因在于程序中斷后,PC默認(rèn)指向0x00-0x1C處,但是RAM的起始地址是0x30000000,中斷向量表默認(rèn)在0x30000018處,很明顯,中斷服務(wù)程序是不能夠正常執(zhí)行的,
同時(shí)ARM內(nèi)核會(huì)通過(guò)串口打印"Dummy_isr error........"信息。解決辦法:
(1)直接燒寫(xiě)到nand第0塊(如果代碼大于4K,啟動(dòng)代碼中必須要有拷貝到SDRAM功能)
(2)改寫(xiě)自己的程序,在初始化中斷之前將中斷向量表拷貝到內(nèi)部SRAM.
(3)利用MMU的重定向功能
評(píng)論