00001
00002
00003
00004 #include <cdefBF53x.h>
00005 #include "utilbf533.h"
00006 #include <ccblkfn.h>
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 namespace utilbf533 {
00021
00022
00023
00024
00025
00026
00027
00028
00029 void initEzKit(void)
00030 {
00031 unsigned int savedIWR;
00032
00033 savedIWR = *pSIC_IWR;
00034 *pSIC_IWR = 0x1;
00035 *pPLL_DIV = 5;
00036 *pPLL_CTL = 22<<9;
00037 ssync();
00038 idle();
00039 *pSIC_IWR = savedIWR;
00040
00041
00042 *pEBIU_AMBCTL0 = 0x7bb07bb0;
00043 *pEBIU_AMBCTL1 = 0x7bb07bb0;
00044 *pEBIU_AMGCTL = 0x000f;
00045
00046
00047
00048 *pEBIU_SDRRC = 0x00000817;
00049 *pEBIU_SDBCTL = 0x00000013;
00050 *pEBIU_SDGCTL = 0x0091998d;
00051
00052
00053 *pFLASHA_PORTB_OUT = 0x00;
00054 *pFLASHA_PORTB_DIR = 0x3f;
00055
00056 *pFLASHA_PORTA_OUT = 0x00;
00057 *pFLASHA_PORTA_DIR = 0xff;
00058 ssync();
00059 }
00060
00061
00062
00063
00064
00065
00066
00067
00068
00069 void initUART( unsigned int sclk, unsigned int bps )
00070 {
00071 unsigned int divisor;
00072
00073 divisor = sclk/(16*bps);
00074 *pUART_GCTL = UCEN;
00075 ssync();
00076 *pUART_LCR = DLAB;
00077 ssync();
00078 *pUART_DLL = divisor & 0x00ff;
00079 *pUART_DLH = ( divisor >> 8 ) & 0xff;
00080 ssync();
00081 *pUART_LCR = WLS(8);
00082 ssync();
00083 }
00084 }