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

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

有在lpc2200系列移植vxworks的嗎?

作者:db10 欄目:ARM技術
有在lpc2200系列移植vxworks的嗎?
 最近項目里可能要玩玩這個系統(tǒng),可是我還是第一次用這個讓我覺得神的操作系統(tǒng)?梢越涣!

2樓: >>參與討論
dahanzk
嘗試過,但后來因為項目變動沒有做完
因為當時沒有使用專門的調(diào)試BSP的工具,只能靠點燈和跟蹤匯編代碼來調(diào)試,有些痛苦。感覺比較難的部分是把LPC系列的中斷系統(tǒng)和vxworks結合起來。串口部分也要費些心神。整個過程會讓你獲益良多。

3樓: >>參與討論
db10
沒人頂阿
 
4樓: >>參與討論
db10
看來沒有多少人在上面用過!??
 
5樓: >>參與討論
efly_gg
(:
一直在想試試 因為手上有個周公的板子閑置著  在公司目前是在arm9上跑的
希望大家把這個內(nèi)容太論開

6樓: >>參與討論
db10
efly_gg
 是的,應該用用,俺現(xiàn)在準備開始用。

7樓: >>參與討論
lpcfans
幫頂...........
 
8樓: >>參與討論
cmos2345
經(jīng)過實踐,不行!
vxworks5.5 for arm固定把中斷向量表放在內(nèi)存0x100開始的地方,而LPC的這一段空間是不可寫的。所以,在系統(tǒng)初始化中斷向量表時會引起數(shù)據(jù)中止異常。要修改中斷向量表存放的地址才能運行通過。而中斷向量表已經(jīng)被編譯好放在target\lib目錄中的某一個(具體是哪一個我不記得了)lib文件中了。這就是說要有vxworks for arm的源碼才能修改。

9樓: >>參與討論
dahanzk
樓上說的有道理,但,是可以改的。
樓上說的問題是BSP里遇到的第一個難點,但可以改過去的,需要在某個.s文件加上初始化中斷向量表的匯編代碼,可以調(diào)試通過的。找找當時改動的程序后,貼上來。

* - 本貼最后修改時間:2006-5-25 9:38:02 修改者:dahanzk

10樓: >>參與討論
dahanzk
Vxworks下LPC22XX BSP中的中斷修改如下:
在sysAlib.s中增加如下代碼:
(1)
.globl    FUNC(armInitExp)    /* own code for armInitExceptionModes()---zk */
_ARM_FUNCTION(armInitExp)

    MRS R0, CPSR
    BIC R1, R0, #63
    ORR R1, R1, #128
    ORR R2, R1, #27
    MSR CPSR_fc, r2
    ldr sp, [pc, #-44]
    orr r2, r1, #23
    msr CPSR_fc, r2
    ldr sp, [pc, #-52]
    orr r2, r1, #18  
    msr CPSR_fc, r2
    ldr sp, [pc, #-56]
    msr CPSR_fc, r0
    mov r1, #0
    stmdb sp!, {r1}
    ldmia sp, {sp}^
    nop
    add sp, sp, #4
    mov pc, lr

(2):在bootConfig.c中增加或改變?nèi)缦麓a

#define LPC_EXC_VEC_BASE 0x81000100

void lpc22xxExcVecSet(void)
{
    int i;
    /*i = (int)&excEnterUndef;*/
    i = 0x04;
    *((volatile int*)(LPC_EXC_VEC_BASE + 0x0)) = i;

    /*i = (int)&excEnterSwi;*/
    i = 0x08;
    *((volatile int*)(LPC_EXC_VEC_BASE + 0x4)) = i;

    /*i = (int)&excEnterPrefetchAbort;*/
    i = 0x0c;
    *((volatile int*)(LPC_EXC_VEC_BASE + 0x8)) = i;

    /*i = (int)&excEnterDataAbort;*/
    i = 0x10;
    *((volatile int*)(LPC_EXC_VEC_BASE + 0xc)) = i;

    /*i = (int)&intEnt;*/
    i = 0x18;
    *((volatile int*)(LPC_EXC_VEC_BASE + 0x14)) = i;


}

STATUS myExcVecInit(void)
{

    FAST int i;
    
    armInitExp();
/*    
    for(i=0;i<NUM_EXC_VECS;++i)
    {
    *(UINT32 *)excEnterTbl[i].vecAddr = 0xE59FF000 | (LPC_EXC_VEC_BASE - 8 - FIRST_VECTOR);
    *(VOIDFUNCPTR *)(excEnterTbl[i].vecAddr + LPC_EXC_VEC_BASE - FIRST_VECTOR) = excEnterTbl[i].fn;
    }
    
    *(UINT32 *)LPC_EXC_VEC_BASE = 0xE7FDDEFE;


    CACHE_TEXT_UPDATE(LPC_EXC_VEC_BASE, EXC_OFF_IRQ + 4);

    _func_armIrqHandler = excIntHandle;
*/
    lpc22xxExcVecSet();
    return OK;

}

以上是往LPC22XX移植VxWorks遇到的第一個難點,也是最難的。



11樓: >>參與討論
chengxupin
lpc2200跑VXWORKS
我對VXWORKS修改了一通,中斷已改,串口通信成功,現(xiàn)在要加入網(wǎng)卡驅(qū)動程序,沒有時間,停在那。。。。(BOOT程序)

12樓: >>參與討論
db10
dahanzk
 能否將你的文件發(fā)給我看看,謝謝!

13樓: >>參與討論
db10
chengxupin和dahanzk
 怎么聯(lián)系你們?

14樓: >>參與討論
aah
dahanzk@hotmail.com
不上QQ~~

15樓: >>參與討論
db10
OK
 
16樓: >>參與討論
oe01
^_^
本人小碩,最近買了smartarm2200,想移植vxworks,不值該如何入門,能否給小弟指點一二?

17樓: >>參與討論
limingchzz
LPC2210 VXWORKS上電復位不成功
小弟在EasyARM2210上移植了VXWORKS但上電復位不成功,只能通過JTAG來復位,
眾位看看是什么原因?

參與討論
昵稱:
討論內(nèi)容:
 
 
相關帖子
請教LPC2132的P0.11做IO口問題
我用記本學習,沒并口怎么辦
筆記本沒有并口,不要調(diào)試JTAG,請推薦一款UST轉(zhuǎn)并口產(chǎn)品
想買周功的LPC213X,可我機子沒有并口...
我的USB轉(zhuǎn)并口用不了
免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入


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