音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費注冊 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

ARMlpc2131中斷問題.請各位幫忙解答一下

作者:breeze_jt 欄目:ARM技術(shù)
ARMlpc2131中斷問題.請各位幫忙解答一下
我用匯編寫了一個發(fā)送中斷的小程序,用的是LPC2131的匯編模板,直接在它的MAIN函數(shù)下填寫代碼的.具體代碼如下:

MAIN
    
    ;add the user code here. 添加用戶代碼
    
    LDR        R2,=PINSEL0;設(shè)置為串口使用
    MOV        R3,#5
    STR        R3,[R2,#0]
    
    
    
    LDR            R0,=U0LCR;設(shè)置波特率57600,8位的數(shù)據(jù)
    MOV            R1,#0x80
    STRB        R1,[R0,#0]
    LDR        R2,=U0DLM
    MOV            R3,#0
    STRB    R3,[R2,#0]
    LDR        R0,=U0DLL
    MOV        R1,#3
    STRB    R1,[R0,#0]
    LDR        R2,=U0LCR
    MOV        R3,#3
    STRB    R3,[R2,#0]
    
    MRS        R0,CPSR;使能IRQ中斷,當(dāng)前是特權(quán)模式
    BIC        R0,R0,#0x80
    MSR        CPSR_c,R0
    
        
    LDR        R2,=U0IER;使能發(fā)送中斷
    MOV        R3,#2
    STRB             R3,[R2,#0]
    
    LDR        R0,=VICIntSelect;設(shè)置IRQ中斷和處理程序的地址,使能UART0中斷
    MOV        R1,#0
    STR        R1,[R0,#0]
    LDR        R0,=VICVectCntl0
    MOV        R1,#0x26
    STR        R1,[R0,#0]
    LDR        R0,=VICVectAddr0
    LDR        R1,=U0INTP
    STR        R1,[R0,#0]
    LDR        R0,=VICIntEnable
    MOV        R1,#0x40
    STR        R1,[R0,#0]
    NOP
    NOP
    
    LDR             R2,=U0THR;開始發(fā)送
    MOV        R3,#0x5F
    STRB        R3,[R2,#0]
        
RECLOOP    

    NOP
    NOP
    NOP
        
    B        RECLOOP
    LTORG
    
U0INTP
        
        LDR        R0,=U0LSR
        LDR        R1,[R0,#0]
        ANDS             R1,R1,#0x20
        BEQ        U0QUIT
        LDR        R2,=U0THR
        MOV        R3,#0x5F
        STRB        R3,[R2,#0]
    
U0QUIT
        LDR        R0,=U0IIR
        LDR        R1,[R0,#0]
        LDR        R0,=VICVectAddr
        MOV        R1,#0
        STR        R1,[R0,#0]    
        SUBS             PC,LR,#4
        LTORG
    END
我是用開發(fā)板調(diào)試,是JTAG接口的,發(fā)現(xiàn)程序運行結(jié)果是只能發(fā)送一個0X5F,然后就沒有數(shù)據(jù)繼續(xù)發(fā)送.停止程序運行,就彈出對話框說地址不能讀(感覺是中斷觸發(fā)了,但是跳到不知道的地方去了).我在中斷的開始處設(shè)了一個斷點,程序一直沒有跳到中斷處.
用單步執(zhí)行跟蹤了,沒找到什么錯誤,而且中斷的地址也已經(jīng)在VICVectAddr0了.
請大家?guī)臀曳治鲆幌?問題出在哪里?用C寫就沒遇到這個問題,可能是對ARM的中斷理解上有個誤區(qū),大家點撥一下.

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
請教個問題?ZC436xxx是那個公司的產(chǎn)品?
希望ZLG給LPCARM供貨情況做個說明!
溫馨提示:關(guān)于ADS的FFT
麻煩有人知道ADS的網(wǎng)站嗎?
RDI Warning 00254: Unimplemented RDI message什么意思
免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號