2440裸機串口調試 while(!(rUTRSTAT0 & 0x2));問題

來源:互聯網
上載者:User

標籤:debug   mini2440   調試   串口調試   

前兩天寫RTC中斷 使用串口輸出

發現程式會出現while(!(rUTRSTAT0 & 0x2));出不來的情況,但是中斷是正常運作的

解決方案:

 main函數增加:

        U32 mpll_val = 0,consoleNum;        Port_Init();   //定義在2440lib.c        mpll_val = (92<<12)|(1<<4)|(1);                                                                                                                    //init FCLK=400M,ChangeMPllValue((mpll_val>>12)&0xff, (mpll_val>>4)&0x3f, mpll_val&3);    (定義在2440lib.c)ChangeClockDivider(14, 12);   //the result of rCLKDIVN [0:1:0:1] 3-0 bit  (定義在2440lib.c)cal_cpu_bus_clk();            //HCLK=100M   PCLK=50M           consoleNum = 0;              // Uart 1 select for debug.Uart_Init( 0,115200 );        // 定義在2440lib.c      Uart_Select( consoleNum );    // 定義在2440lib.c

cal_cpu_bus_clk()定義如下:

static U32 UPLL;static U32 cpu_freq;
void cal_cpu_bus_clk(void){U32 val;U8 m, p, s;val = rMPLLCON;m = (val>>12)&0xff;p = (val>>4)&0x3f;s = val&3;//(m+8)*FIN*2 不要超出32位元!FCLK = ((m+8)*(FIN/100)*2)/((p+2)*(1<<s))*100;val = rCLKDIVN;m = (val>>1)&3;p = val&1;val = rCAMDIVN;s = val>>8;switch (m) {case 0:HCLK = FCLK;break;case 1:HCLK = FCLK>>1;break;case 2:if(s&2)HCLK = FCLK>>3;elseHCLK = FCLK>>2;break;case 3:if(s&1)HCLK = FCLK/6;elseHCLK = FCLK/3;break;}if(p)PCLK = HCLK>>1;elsePCLK = HCLK;if(s&0x10)cpu_freq = HCLK;elsecpu_freq = FCLK;val = rUPLLCON;m = (val>>12)&0xff;p = (val>>4)&0x3f;s = val&3;UPLL = ((m+8)*FIN)/((p+2)*(1<<s));UCLK = (rCLKDIVN&8)?(UPLL>>1):UPLL;}


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.