00001
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041 #ifndef STK_600_H
00042 #define STK_600_H
00043
00044
00045 #include "config.h"
00046
00047 #if (TARGET_BOARD==STK600)
00048
00049
00050
00067
00068
00072 #define LED_PORT PORTD
00073 #define LED_DDR DDRD
00074 #define LED_PIN PIND
00075
00076 #define LED0_BIT PIND0
00077 #define LED1_BIT PIND1
00078 #define LED2_BIT PIND2
00079 #define LED3_BIT PIND3
00080 #define LED4_BIT PIND4
00081 #define LED5_BIT PIND5
00082 #define LED6_BIT PIND6
00083 #define LED7_BIT PIND7
00084
00085 #define Leds_init() (LED_DDR |= (1<<LED0_BIT) | (1<<LED1_BIT) | (1<<LED2_BIT) | (1<<LED3_BIT) | (1<<LED4_BIT) | (1<<LED5_BIT) | (1<<LED6_BIT) | (1<<LED7_BIT),Leds_off())
00086 #define Leds_on() (LED_PORT &= ~((1<<LED0_BIT) | (1<<LED1_BIT) | (1<<LED2_BIT) | (1<<LED3_BIT) | (1<<LED4_BIT) | (1<<LED5_BIT) | (1<<LED6_BIT) | (1<<LED7_BIT)))
00087 #define Leds_off() (LED_PORT |= (1<<LED0_BIT) | (1<<LED1_BIT) | (1<<LED2_BIT) | (1<<LED3_BIT) | (1<<LED4_BIT) | (1<<LED5_BIT) | (1<<LED6_BIT) | (1<<LED7_BIT))
00088 #define Leds_set_val(val) (Leds_off(),LED_PORT |= val&((1<<LED0_BIT) | (1<<LED1_BIT) | (1<<LED2_BIT) | (1<<LED3_BIT) | (1<<LED4_BIT) | (1<<LED5_BIT) | (1<<LED6_BIT) | (1<<LED7_BIT)))
00089 #define Leds_get_val() (LED_PORT)
00090
00091 #define Led0_on() (LED_PORT &= ~(1<<LED0_BIT))
00092 #define Led1_on() (LED_PORT &= ~(1<<LED1_BIT))
00093 #define Led2_on() (LED_PORT &= ~(1<<LED2_BIT))
00094 #define Led3_on() (LED_PORT &= ~(1<<LED3_BIT))
00095 #define Led4_on() (LED_PORT &= ~(1<<LED4_BIT))
00096 #define Led5_on() (LED_PORT &= ~(1<<LED5_BIT))
00097 #define Led6_on() (LED_PORT &= ~(1<<LED6_BIT))
00098 #define Led7_on() (LED_PORT &= ~(1<<LED7_BIT))
00099 #define Led0_off() (LED_PORT |= (1<<LED0_BIT))
00100 #define Led1_off() (LED_PORT |= (1<<LED1_BIT))
00101 #define Led2_off() (LED_PORT |= (1<<LED2_BIT))
00102 #define Led3_off() (LED_PORT |= (1<<LED3_BIT))
00103 #define Led4_off() (LED_PORT |= (1<<LED4_BIT))
00104 #define Led5_off() (LED_PORT |= (1<<LED5_BIT))
00105 #define Led6_off() (LED_PORT |= (1<<LED6_BIT))
00106 #define Led7_off() (LED_PORT |= (1<<LED7_BIT))
00107 #define Led0_toggle() (LED_PIN |= (1<<LED0_BIT))
00108 #define Led1_toggle() (LED_PIN |= (1<<LED1_BIT))
00109 #define Led2_toggle() (LED_PIN |= (1<<LED2_BIT))
00110 #define Led3_toggle() (LED_PIN |= (1<<LED3_BIT))
00111 #define Led4_toggle() (LED_PIN |= (1<<LED4_BIT))
00112 #define Led5_toggle() (LED_PIN |= (1<<LED5_BIT))
00113 #define Led6_toggle() (LED_PIN |= (1<<LED6_BIT))
00114 #define Led7_toggle() (LED_PIN |= (1<<LED7_BIT))
00115 #define Is_led0_on() (LED_PIN & (1<<LED0_BIT) ? FALSE : TRUE)
00116 #define Is_led1_on() (LED_PIN & (1<<LED1_BIT) ? FALSE : TRUE)
00117 #define Is_led2_on() (LED_PIN & (1<<LED2_BIT) ? FALSE : TRUE)
00118 #define Is_led3_on() (LED_PIN & (1<<LED3_BIT) ? FALSE : TRUE)
00119 #define Is_led4_on() (LED_PIN & (1<<LED4_BIT) ? FALSE : TRUE)
00120 #define Is_led5_on() (LED_PIN & (1<<LED5_BIT) ? FALSE : TRUE)
00121 #define Is_led6_on() (LED_PIN & (1<<LED6_BIT) ? FALSE : TRUE)
00122 #define Is_led7_on() (LED_PIN & (1<<LED7_BIT) ? FALSE : TRUE)
00123
00125
00138 #define Switches_init() (DDRB &= ~0xFF, PORTB |= 0xFF)
00139 #define Is_switch_7() ((PINB & (1<<PINB7)) ? FALSE : TRUE)
00140 #define Is_switch_6() ((PINB & (1<<PINB6)) ? FALSE : TRUE)
00141 #define Is_switch_5() ((PINB & (1<<PINB5)) ? FALSE : TRUE)
00142 #define Is_switch_4() ((PINB & (1<<PINB4)) ? FALSE : TRUE)
00143 #define Is_switch_3() ((PINB & (1<<PINB3)) ? FALSE : TRUE)
00144 #define Is_switch_2() ((PINB & (1<<PINB2)) ? FALSE : TRUE)
00145 #define Is_switch_1() ((PINB & (1<<PINB1)) ? FALSE : TRUE)
00146 #define Is_switch_0() ((PINB & (1<<PINB0)) ? FALSE : TRUE)
00147 #define Is_not_switch_7() ((PINB & (1<<PINB7)) ? TRUE : FALSE)
00148 #define Is_not_switch_6() ((PINB & (1<<PINB6)) ? TRUE : FALSE)
00149 #define Is_not_switch_5() ((PINB & (1<<PINB5)) ? TRUE : FALSE)
00150 #define Is_not_switch_4() ((PINB & (1<<PINB4)) ? TRUE : FALSE)
00151 #define Is_not_switch_3() ((PINB & (1<<PINB3)) ? TRUE : FALSE)
00152 #define Is_not_switch_2() ((PINB & (1<<PINB2)) ? TRUE : FALSE)
00153 #define Is_not_switch_1() ((PINB & (1<<PINB1)) ? TRUE : FALSE)
00154 #define Is_not_switch_0() ((PINB & (1<<PINB0)) ? TRUE : FALSE)
00155
00156 #define Joy_init() Switches_init()
00157 #define Is_btn_left() Is_switch_6()
00158 #define Is_btn_middle() Is_switch_5()
00159 #define Is_btn_right() Is_switch_4()
00160 #define Is_joy_left() Is_switch_3()
00161 #define Is_joy_right() Is_switch_2()
00162 #define Is_joy_up() Is_switch_1()
00163 #define Is_joy_down() Is_switch_0()
00164
00165
00166 #define Is_btn_not_left() Is_not_switch_6()
00167 #define Is_btn_not_middle() Is_not_switch_5()
00168 #define Is_btn_not_right() Is_not_switch_4()
00169 #define Is_joy_not_left() Is_not_switch_3()
00170 #define Is_joy_not_right() Is_not_switch_2()
00171 #define Is_joy_not_up() Is_not_switch_1()
00172 #define Is_joy_not_down() Is_not_switch_0()
00173
00174
00179 #define Switches_enable_it() { \
00180 PCMSK0 |= (1<<PCINT0)|(1<<PCINT1)|(1<<PCINT2)|(1<<PCINT3)|(1<<PCINT4)|(1<<PCINT5)|(1<<PCINT6)|(1<<PCINT7);\
00181 PCIFR |= (1<<PCIF0); \
00182 PCICR |= (1<<PCIE0);}
00183
00188 #define Switches_disable_it() { \
00189 PCICR &= ~(1<<PCIE0); \
00190 PCIFR |= (1<<PCIF0); \
00191 PCMSK0 &= ~((1<<PCINT0)|(1<<PCINT1)|(1<<PCINT2)|(1<<PCINT3)|(1<<PCINT4)|(1<<PCINT5)|(1<<PCINT6)|(1<<PCINT7));}
00193
00194
00198 #define Hwb_button_init()
00199 #define Is_hwb() FALSE
00200 #define Is_not_hwb() TRUE
00202
00204
00205 #endif // TARGET_BOARD==STK600
00206
00207 #endif // STK_600_H