File indexing completed on 2025-05-11 08:23:05
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013 #include <bsp.h>
0014 #include <bsp/irq-generic.h>
0015 #include <lpc22xx.h>
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028 static void bsp_start_default( void )
0029 {
0030 PINSEL2 =0x0f814914;
0031 BCFG0 = 0x1000ffef;
0032 BCFG1 = 0x1000ffef;
0033
0034 MEMMAP = 0x2;
0035
0036 PLLCON = 1;
0037 #if (Fpclk / (Fcclk / 4)) == 1
0038 VPBDIV = 0;
0039 #endif
0040 #if (Fpclk / (Fcclk / 4)) == 2
0041 VPBDIV = 2;
0042 #endif
0043 #if (Fpclk / (Fcclk / 4)) == 4
0044 VPBDIV = 1;
0045 #endif
0046
0047 #if (Fcco / Fcclk) == 2
0048 PLLCFG = ((Fcclk / Fosc) - 1) | (0 << 5);
0049 #endif
0050 #if (Fcco / Fcclk) == 4
0051 PLLCFG = ((Fcclk / Fosc) - 1) | (1 << 5);
0052 #endif
0053 #if (Fcco / Fcclk) == 8
0054 PLLCFG = ((Fcclk / Fosc) - 1) | (2 << 5);
0055 #endif
0056 #if (Fcco / Fcclk) == 16
0057 PLLCFG = ((Fcclk / Fosc) - 1) | (3 << 5);
0058 #endif
0059 PLLFEED = 0xaa;
0060 PLLFEED = 0x55;
0061 while((PLLSTAT & (1 << 10)) == 0);
0062 PLLCON = 3;
0063 PLLFEED = 0xaa;
0064 PLLFEED = 0x55;
0065
0066
0067
0068
0069
0070
0071
0072 UART0_Ini();
0073
0074
0075
0076
0077 bsp_interrupt_initialize();
0078 }
0079
0080
0081
0082
0083
0084 void bsp_start (void) __attribute__ ((weak, alias("bsp_start_default")));