<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                讓串口能正常輸出打印信息,添加jz2440中S3C2440片上系統的支持。 ## 一、匯編文件修改,這部分主要集中修改修改cpu/arm920t/start.S文件。 1、打開/cpu/arm920t/start.S,刪除AT91RM9200使用的LED代碼,117、118行,關閉LED代碼。 ~~~ - start_code: /* * set the cpu to SVC32 mode */ mrsr0,cpsr bicr0,r0,#0x1f orrr0,r0,#0xd3 msrcpsr,r0 ?/*bl coloured_LED_init bl red_LED_on*/ ? ? //這是LED燈初始化將其屏蔽掉,因為我們jz2440上的LED資源與SMDK2410開發板的不一致 ~~~ 2.找到下面的語句,定位到該位置,修改相應部位,即增加紅色部分 ~~~ #if defined(CONFIG_S3C2400) || defined(CONFIG_S3C2410)?|| defined(CONFIG_S3C2440)?? mov ?r1, #0xffffffff ldr ???r0, =INTMSK strr1, [r0] # if defined(CONFIG_S3C2440) ldrr1, =0x7fff ? //這里是屏蔽中斷,S3C440用到了15位,所以把值設置成0x7fff ldrr0, =INTSUBMSK strr1, [r0] # endif ??? # if defined(CONFIG_S3C2440) # ?define MPLLCON ? ? ? ?0x4C000004? # ?define UPLLCON ? ? ? ?0x4C000008 ?ldrr0, =CLKDIVN movr1, #5 ? ? ? ? ? ? ? ?//?FCLK:HCLK:PCLK = 1:4:8? strr1, [r0] ? ? ? ?ldr ? r0, =MPLLCON ? ? //寫MPLL使pll生效,405MHz,(127<<12)+(2<<4)+(1) ? ? ? ?ldr ? r1, =0x7F021 ? ? ? ?str ? ?r1, [r0] ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ?ldr ? r0, =UPLLCON ? ?//USB時鐘48MHz ? ? ? (56<<12)+(2<<4)+(2) ? ? ? ?ldr ? r1, =0x038022 ? ? ? ?str ? ?r1, [r0] ?# else ? ? ? ?/* FCLK:HCLK:PCLK = 1:2:4 */ /* default FCLK is 120 MHz ! */ ldr? ?r0, =CLKDIVN ? ? ? ??mov ? ?r1, #3? ? ? str? ?r1, [r0] ? ???# endif #endif?/* CONFIG_S3C2400 || CONFIG_S3C2410 */ /* * we do sys-critical inits only at reboot, * not when booting from ram! */ #ifndef CONFIG_SKIP_LOWLEVEL_INIT blcpu_init_crit #endif ~~~ 3 打開 board/samsung/ok2440v3/ok2440v3.c ?將下面一段去掉: ~~~ ?#define FCLK_SPEED 1 ?#ifFCLK_SPEED==0??????????????/* Fout = 203MHz, Fin = 12MHz for Audio */ ?#define M_MDIV? 0xC3 ?#define M_PDIV? 0x4 ?#define M_SDIV? 0x1 ?#elifFCLK_SPEED==1????????????/* Fout = 202.8MHz */ ?#define M_MDIV? 0xA1 ?#define M_PDIV? 0x3 ?#define M_SDIV? 0x1 ?#endif ?#define USB_CLOCK 1 ?#if USB_CLOCK==0 ?#define U_M_MDIV??????? 0xA1 ? ? ? ?#define U_M_PDIV??????? 0x3 ?#define U_M_SDIV??????? 0x1 ?#elif USB_CLOCK==1 ?#define U_M_MDIV??????? 0x48 ?#define U_M_PDIV??????? 0x3 ?#define U_M_SDIV??????? 0x2 ?#endif ~~~ 用下面一段替換: ~~~ #define M_MDIV 0x7f #define M_PDIV 0x2 #define M_SDIV 0x1 #define U_M_MDIV 0x38 #define U_M_PDIV 0x2 ? //因為FL2440的晶振為12M,在芯片手冊可以查到這些值,使得CPU頻率為405M,USB時鐘頻率為48M. #define U_M_SDIV 0x2 ~~~ 4 打開cpu/arm920t/s3c24x0/speed.c;修改(根據設置的分頻系數FCLK:HCLK:PCLK?=?1:4:8修改獲取時鐘頻率的函數): ~~~ static ulong get_PLLCLK(int pllreg) { ? ? S3C24X0_CLOCK_POWER * const clk_power = S3C24X0_GetBase_CLOCK_POWER(); ? ? ulong r, m, p, s; ? ? if (pllreg == MPLL) r = clk_power->MPLLCON; ? ? else if (pllreg == UPLL) r = clk_power->UPLLCON; ? ? else hang(); ? ? m = ((r & 0xFF000) >> 12) + 8; ? ? p = ((r & 0x003F0) >> 4) + 2; ? ? s = r & 0x3; # if defined(CONFIG_S3C2440) if (pllreg == MPLL) { return((CONFIG_SYS_CLK_FREQ * m * 2) / (p << s)); ? ? ? ? ?} # endif ? ? return((CONFIG_SYS_CLK_FREQ * m) / (p << s)); } ~~~ ~~~ /* return HCLK frequency */ ulong get_HCLK(void) { ? ? S3C24X0_CLOCK_POWER * const clk_power = S3C24X0_GetBase_CLOCK_POWER(); # if defined(CONFIG_S3C2440) return(get_FCLK()/4); # endif ? ? return((clk_power->CLKDIVN & 0x2) ? get_FCLK()/2 : get_FCLK()); } ~~~ 這樣,時鐘就設置好了,保存,重新生成u-boot.bin,下載到開發板運行,就可以看到串口打印信息了 如果我們在include/configs/fl2440.h文件中添加 ~~~ #define? CONFIG_SKIP_LOWLEVEL_INIT???? 1 //用來支持uboot在內存中直接運行 ~~~ 然后再編譯出u-boot.bin,這時的鏡像文件就可以通過J-Link下載到內存0x33f80000處運行。 在board/asmsung/fl2440/fl2440.c添加如下兩個宏定義用來自動補齊命令 ~~~ #define CONFIG_CMDLINE_EDITING ? 1 ? #define CONFIG_AUTO_COMPLETE ? ? 1 /*tab COMPLETE*/? ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看