00001
00040 #include "board.h"
00041 #include "compiler.h"
00042 #include "stk600_rc100x.h"
00043 #include "conf_board.h"
00044 #include "ioport.h"
00045
00046 void board_init(void)
00047 {
00048 ioport_configure_pin(LED0_GPIO, IOPORT_DIR_OUTPUT | IOPORT_INIT_HIGH);
00049 ioport_configure_pin(LED1_GPIO, IOPORT_DIR_OUTPUT | IOPORT_INIT_HIGH);
00050 ioport_configure_pin(LED2_GPIO, IOPORT_DIR_OUTPUT | IOPORT_INIT_HIGH);
00051 ioport_configure_pin(LED3_GPIO, IOPORT_DIR_OUTPUT | IOPORT_INIT_HIGH);
00052 ioport_configure_pin(LED4_GPIO, IOPORT_DIR_OUTPUT | IOPORT_INIT_HIGH);
00053 ioport_configure_pin(LED5_GPIO, IOPORT_DIR_OUTPUT | IOPORT_INIT_HIGH);
00054 ioport_configure_pin(LED6_GPIO, IOPORT_DIR_OUTPUT | IOPORT_INIT_HIGH);
00055 ioport_configure_pin(LED7_GPIO, IOPORT_DIR_OUTPUT | IOPORT_INIT_HIGH);
00056
00057 ioport_configure_pin(GPIO_PUSH_BUTTON_0,IOPORT_DIR_INPUT | IOPORT_PULL_UP);
00058 ioport_configure_pin(GPIO_PUSH_BUTTON_1,IOPORT_DIR_INPUT | IOPORT_PULL_UP);
00059 ioport_configure_pin(GPIO_PUSH_BUTTON_2,IOPORT_DIR_INPUT | IOPORT_PULL_UP);
00060 ioport_configure_pin(GPIO_PUSH_BUTTON_3,IOPORT_DIR_INPUT | IOPORT_PULL_UP);
00061 ioport_configure_pin(GPIO_PUSH_BUTTON_4,IOPORT_DIR_INPUT | IOPORT_PULL_UP);
00062 ioport_configure_pin(GPIO_PUSH_BUTTON_5,IOPORT_DIR_INPUT | IOPORT_PULL_UP);
00063 ioport_configure_pin(GPIO_PUSH_BUTTON_6,IOPORT_DIR_INPUT | IOPORT_PULL_UP);
00064 ioport_configure_pin(GPIO_PUSH_BUTTON_7,IOPORT_DIR_INPUT | IOPORT_PULL_UP);
00065
00066 #ifdef CONF_BOARD_AT45DBX
00067 ioport_configure_pin(AT45DBX_MASTER_SS,IOPORT_DIR_OUTPUT | IOPORT_INIT_HIGH);
00068 ioport_configure_pin(AT45DBX_MASTER_SCK,IOPORT_DIR_OUTPUT | IOPORT_INIT_HIGH);
00069 ioport_configure_pin(AT45DBX_MASTER_MOSI,IOPORT_DIR_OUTPUT | IOPORT_INIT_HIGH);
00070 ioport_configure_pin(AT45DBX_MASTER_MISO, IOPORT_DIR_INPUT);
00071 ioport_configure_pin(AT45DBX_CS,IOPORT_DIR_OUTPUT | IOPORT_INIT_HIGH);
00072 #endif
00073
00074 #ifdef CONF_BOARD_ENABLE_USARTC0
00075 ioport_configure_pin(IOPORT_CREATE_PIN(PORTC, 3), IOPORT_DIR_OUTPUT
00076 | IOPORT_INIT_HIGH);
00077 ioport_configure_pin(IOPORT_CREATE_PIN(PORTC, 2), IOPORT_DIR_INPUT);
00078 #endif
00079
00080 #ifdef CONF_BOARD_ENABLE_USARTC1
00081 ioport_configure_pin(IOPORT_CREATE_PIN(PORTC, 7), IOPORT_DIR_OUTPUT
00082 | IOPORT_INIT_HIGH);
00083 ioport_configure_pin(IOPORT_CREATE_PIN(PORTC, 6), IOPORT_DIR_INPUT);
00084 #endif
00085
00086 #ifdef CONF_BOARD_ENABLE_USARTD0
00087 ioport_configure_pin(IOPORT_CREATE_PIN(PORTD, 3), IOPORT_DIR_OUTPUT
00088 | IOPORT_INIT_HIGH);
00089 ioport_configure_pin(IOPORT_CREATE_PIN(PORTD, 2), IOPORT_DIR_INPUT);
00090 #endif
00091
00092 #ifdef CONF_BOARD_ENABLE_USARTD1
00093 ioport_configure_pin(IOPORT_CREATE_PIN(PORTD, 7), IOPORT_DIR_OUTPUT
00094 | IOPORT_INIT_HIGH);
00095 ioport_configure_pin(IOPORT_CREATE_PIN(PORTD, 6), IOPORT_DIR_INPUT);
00096 #endif
00097
00098 #ifdef CONF_BOARD_ENABLE_USARTE0
00099 ioport_configure_pin(IOPORT_CREATE_PIN(PORTE, 3), IOPORT_DIR_OUTPUT
00100 | IOPORT_INIT_HIGH);
00101 ioport_configure_pin(IOPORT_CREATE_PIN(PORTE, 2), IOPORT_DIR_INPUT);
00102 #endif
00103
00104 #ifdef CONF_BOARD_ENABLE_USARTE1
00105 ioport_configure_pin(IOPORT_CREATE_PIN(PORTE, 7), IOPORT_DIR_OUTPUT
00106 | IOPORT_INIT_HIGH);
00107 ioport_configure_pin(IOPORT_CREATE_PIN(PORTE, 6), IOPORT_DIR_INPUT);
00108 #endif
00109
00110 #ifdef CONF_BOARD_ENABLE_USARTF0
00111 ioport_configure_pin(IOPORT_CREATE_PIN(PORTF, 3), IOPORT_DIR_OUTPUT
00112 | IOPORT_INIT_HIGH);
00113 ioport_configure_pin(IOPORT_CREATE_PIN(PORTF, 2), IOPORT_DIR_INPUT);
00114 #endif
00115
00116 #ifdef CONF_BOARD_ENABLE_USARTF1
00117 ioport_configure_pin(IOPORT_CREATE_PIN(PORTF, 7), IOPORT_DIR_OUTPUT
00118 | IOPORT_INIT_HIGH);
00119 ioport_configure_pin(IOPORT_CREATE_PIN(PORTF, 6), IOPORT_DIR_INPUT);
00120 #endif
00121 }