在2440lib.c的文件中有官方给的功用函数,比方我在时钟办理中函数就是在这个文件中,有些功用函数我把它改了一下。
比方
[cpp]view plaincopy
- voidSelectFclk(inti)
- {
- U32mpll_val=0;
- switch(i){
- case0://200M
- mpll_val=(92<<12)|(4<<4)|(1);
- break;
- case1://300M
- mpll_val=(67<<12)|(1<<4)|(1);
- break;
- case2://400M
- mpll_val=(92<<12)|(1<<4)|(1);
- break;
- case3://440M!!!
- mpll_val=(102<<12)|(1<<4)|(1);
- break;
- default:
- mpll_val=(92<<12)|(1<<4)|(1);
- break;
- }
- rMPLLCON=mpll_val;
- }
现在贴出一个用功用函数编写的小程序
- #include”2440addr.h”
- #include”2440lib.h”
- voidMain()
- {
- charbuffer[256];
- SelectFclk(2);//设置体系时钟400M
- ChangeClockDivider(2,1);//设置分频1:4:8
- CalcBusClk();//核算总线频率
- rGPHCON&=~((3<<4)|(3<<6));
- rGPHCON|=(2<<4)|(2<<6);//GPH2--TXD[0];GPH3--RXD[0]
- rGPHUP=0x00;//使能上拉功用
- Uart_Init(0,115200);
- Uart_Select(0);
- Uart_Printf(“\nS3C2440UART0Test\n”);
- while(1)
- {
- Uart_Printf(“Please,pressenterlaterinputstring\n”);
- Uart_GetString(buffer);
- Uart_Printf(“youinputstring:%s\r\n”,buffer);
- }
- }