这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » [求助]2410執行速度慢?

共4条 1/1 1 跳转至

[求助]2410執行速度慢?

菜鸟
2007-01-11 22:22:05     打赏

請教各位大俠.
我目前自己修改vivi boot 後,跳到main()做led跑馬燈. (未上os linux)
程式用GNUARM編譯.
vivi的head.s 設置
FCLK=200MHz for CPU
HCLK=100MHz(AHB Bus) PCLK=50MHz(Peripheral)
設定CLKOUT1=MPL CLK GPH10 as CLKOUT1
我實際用示波器測量GPH10=200MHZ

不過當我在main.c 寫delay1sec()的函式,查覺迴圈數= 586.
為何200MHz的核心執行速度,1msec才跑了586 loops?
(SDRAM上跑,sdram相關暫存器reset預設值)
for(i=0;i<value;i++)
{
for(k=0;k<586;k++)
{;;}
}



過去用的epson 32bit mcu 25MHz反而1ms跑了840 loops?
(程式在nor flash執行)
for(j=0;j<counter;j++)
{
for(i=0;i<840;i++){;}
i=0;
}

後來實際寫一張圖片資料320x240在TFT上 .顯示速度很慢. 看的到由上往下
的掃瞄過程.不是瞬間就冒出一張圖或全畫面的R,G,B.
速度和25MHz的epson mcu差不多.....
請問是哪裡出問題呢?沒設置好?

我只套用vivi中的設置值.之後設定各個模式堆疊,然後Copy code
to sdram.設SP,進入MAIN().進入main,設定lcd controller pins & registers
寫data到framebuffer.
有缺少記憶體方面的參數未調整或是需要設置的暫存器嗎?

//Fill red data
for(i=0;i<320*240/2;i++)
{
u32_volatile(LCD_Buffer+index)=0xF800F800;
index+=4; }



Reset:
mov r1, #0x53000000 @ 1. disable watch dog timer
mov r2, #0x0
str r2, [r1]
@ 2. disable all interrupts
mov r1, #0x4A000000
mov r2, #0xffffffff
str r2, [r1, #0x08]
ldr r2, =0x7ff
str r2, [r1, #0x1C]
@ 3. initialise system clocks
mov r1, #0x4C000000
mvn r2, #0xff000000
str r2, [r1, #0x00]


mov r1, #0x4C000000 @ FCLK=200MHz for CPU
mov r2, #0x3 @ HCLK=100MHz(AHB Bus)
@PCLK=50MHz(Peripheral)
str r2, [r1, #0x14] @Clock divider control

mrc p15, 0, r1, c1, c0, 0 @read ctrl register
orr r1, r1, #0xc0000000 @Asynchronous
mcr p15, 0, r1, c1, c0, 0 @write ctrl register

mov r1, #0x4C000000 @ now, CPU clock is 200 Mhz
ldr r2, =0x0005C040
str r2, [r1, #0x04] @ MPLL configuration register
@ 4. initialise the static memory




关键词: 求助     執行     速度慢    

菜鸟
2007-01-12 00:23:00     打赏
2楼

剛剛用示波器測量 fclk=200Mhz ,hclk=100Mhz ,pclk=50Mhz..

真的不曉得哪裡有問題


菜鸟
2007-01-12 00:42:00     打赏
3楼
具体不知道问题在那里,但肯定是你程序本身的问题。

菜鸟
2007-01-12 02:08:00     打赏
4楼

板主能大慈大悲幫忙看我的code嗎? 很短的.只有start.s和main.c

若您想伸出援手,請mail給我^^

我的mail: fs92004@yahoo.com.tw or joechen@edt.com.tw


共4条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]