h.galeh
Member level 3
- Joined
- Apr 16, 2008
- Messages
- 66
- Helped
- 0
- Reputation
- 0
- Reaction score
- 0
- Trophy points
- 1,286
- Location
- Tehran, Iran, Iran
- Activity points
- 1,690
I am defining a library for gpio easeing work . so that you can program micro as easy as possible without hardware challenge
but its macros has problems
please help to make it
but its macros has problems
please help to make it
Code C - [expand] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 #ifndef __GPIO_H #define __GPIO_H ////////////////////////////////////////////////////////////////// #define PORT0 1 #define PORT1 2 #define PORT2 3 #define PORT3 4 #define PORT4 5 ////////////////////////////////////////////////////////////////// #define PIN(n) (1UL<<n) ////////////////////////////////////////////////////////////////// #define SELECT_PORT(n) #if n==PORT0 #define PORT ((LPC_GPIO_TypeDef *) LPC_GPIO0_BASE ) #elif n==PORT1 #define PORT ((LPC_GPIO_TypeDef *) LPC_GPIO1_BASE ) #elif n==PORT2 #define PORT ((LPC_GPIO_TypeDef *) LPC_GPIO2_BASE ) #elif n==PORT3 #define PORT ((LPC_GPIO_TypeDef *) LPC_GPIO3_BASE ) #elif n==PORT4 #define PORT ((LPC_GPIO_TypeDef *) LPC_GPIO4_BASE ) #endif ////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////// #ifdef PORT #define KEY(n) {((PORT->FIOPIN&PIN(n)) == PIN(n))} #define SET(n) {PORT->FIOSET = PIN(n) } #define CLR(n) {PORT->FIOCLR = PIN(n) } #define CONFIG_OUT(n) {PORT->FIODIR= PORT->(FIODIR|PIN(n))} #define CONFIG_IN(n) {PORT->FIODIR= (PORT->FIODIR&~PIN(n))} #endif #endif
Last edited by a moderator: