#define Enable_external_clock | ( | ) | (CLKSEL0 |= (1<<EXTE)) |
#define Disable_external_clock | ( | ) | (CLKSEL0 &= ~(1<<EXTE)) |
#define Enable_RC_clock | ( | ) | (CLKSEL0 |= (1<<RCE)) |
#define Disable_RC_clock | ( | ) | (CLKSEL0 &= ~(1<<RCE)) |
#define External_clock_ready | ( | ) | (((CLKSTA&(1<<EXTON)) != 0) ? TRUE : FALSE) |
#define RC_clock_ready | ( | ) | (((CLKSTA&(1<<RCON)) != 0) ? TRUE : FALSE) |
#define Select_external_clock | ( | ) | (CLKSEL0 |= (1<<CLKS)) |
#define Select_RC_clock | ( | ) | (CLKSEL0 &= ~(1<<CLKS)) |
#define Load_ext_clock_config | ( | cfg | ) |
Value:
(CLKSEL1 = (CLKSEL1&0xF0) | ((cfg&0x0F)<<EXCKSEL0), \ CLKSEL0 = (CLKSEL0&0xCF) | (((cfg&0x30)>>4)<<EXSUT0))
Definition at line 215 of file power_drv.h.
#define Load_RC_clock_config | ( | cfg | ) |
Value:
(CLKSEL1 = (CLKSEL1&0x0F) | ((cfg&0x0F)<<RCCKSEL0), \ CLKSEL0 = (CLKSEL0&0x3F) | (((cfg&0x30)>>4)<<RCSUT0))
Definition at line 218 of file power_drv.h.
#define OSC_INTRC_0MS 0x02 |
Definition at line 225 of file power_drv.h.
#define OSC_INTRC_4MS 0x12 |
Definition at line 226 of file power_drv.h.
#define OSC_INTRC_65MS 0x22 |
Definition at line 227 of file power_drv.h.
#define OSC_XTAL_RANGE1_258CK_4MS 0x08 |
Definition at line 230 of file power_drv.h.
#define OSC_XTAL_RANGE1_258CK_65MS 0x18 |
Definition at line 231 of file power_drv.h.
#define OSC_XTAL_RANGE1_1KCK_0MS 0x28 |
Definition at line 232 of file power_drv.h.
#define OSC_XTAL_RANGE1_1KCK_4MS 0x38 |
Definition at line 233 of file power_drv.h.
#define OSC_XTAL_RANGE1_1KCK_65MS 0x09 |
Definition at line 234 of file power_drv.h.
#define OSC_XTAL_RANGE1_16KCK_0MS 0x19 |
Definition at line 235 of file power_drv.h.
#define OSC_XTAL_RANGE1_16KCK_4MS 0x29 |
Definition at line 236 of file power_drv.h.
#define OSC_XTAL_RANGE1_16KCK_65MS 0x39 |
Definition at line 237 of file power_drv.h.
#define OSC_XTAL_RANGE2_258CK_4MS 0x0A |
Definition at line 240 of file power_drv.h.
#define OSC_XTAL_RANGE2_258CK_65MS 0x1A |
Definition at line 241 of file power_drv.h.
#define OSC_XTAL_RANGE2_1KCK_0MS 0x2A |
Definition at line 242 of file power_drv.h.
#define OSC_XTAL_RANGE2_1KCK_4MS 0x3A |
Definition at line 243 of file power_drv.h.
#define OSC_XTAL_RANGE2_1KCK_65MS 0x0B |
Definition at line 244 of file power_drv.h.
#define OSC_XTAL_RANGE2_16KCK_0MS 0x1B |
Definition at line 245 of file power_drv.h.
#define OSC_XTAL_RANGE2_16KCK_4MS 0x2B |
Definition at line 246 of file power_drv.h.
#define OSC_XTAL_RANGE2_16KCK_65MS 0x3B |
Definition at line 247 of file power_drv.h.
#define OSC_XTAL_RANGE3_258CK_4MS 0x0C |
Definition at line 250 of file power_drv.h.
#define OSC_XTAL_RANGE3_258CK_65MS 0x1C |
Definition at line 251 of file power_drv.h.
#define OSC_XTAL_RANGE3_1KCK_0MS 0x2C |
Definition at line 252 of file power_drv.h.
#define OSC_XTAL_RANGE3_1KCK_4MS 0x3C |
Definition at line 253 of file power_drv.h.
#define OSC_XTAL_RANGE3_1KCK_65MS 0x0D |
Definition at line 254 of file power_drv.h.
#define OSC_XTAL_RANGE3_16KCK_0MS 0x1D |
Definition at line 255 of file power_drv.h.
#define OSC_XTAL_RANGE3_16KCK_4MS 0x2D |
Definition at line 256 of file power_drv.h.
#define OSC_XTAL_RANGE3_16KCK_65MS 0x3D |
Definition at line 257 of file power_drv.h.
#define OSC_XTAL_RANGE4_258CK_4MS 0x0E |
Definition at line 260 of file power_drv.h.
#define OSC_XTAL_RANGE4_258CK_65MS 0x1E |
Definition at line 261 of file power_drv.h.
#define OSC_XTAL_RANGE4_1KCK_0MS 0x2E |
Definition at line 262 of file power_drv.h.
#define OSC_XTAL_RANGE4_1KCK_4MS 0x3E |
Definition at line 263 of file power_drv.h.
#define OSC_XTAL_RANGE4_1KCK_65MS 0x0F |
Definition at line 264 of file power_drv.h.
#define OSC_XTAL_RANGE4_16KCK_0MS 0x1F |
Definition at line 265 of file power_drv.h.
#define OSC_XTAL_RANGE4_16KCK_4MS 0x2F |
Definition at line 266 of file power_drv.h.
#define OSC_XTAL_RANGE4_16KCK_65MS 0x3F |
Definition at line 267 of file power_drv.h.
#define OSC_EXTCLK_0MS 0x00 |
Definition at line 270 of file power_drv.h.
#define OSC_EXTCLK_4MS 0x10 |
Definition at line 271 of file power_drv.h.
#define OSC_EXTCLK_65MS 0x20 |
Definition at line 272 of file power_drv.h.
void Clock_switch_external | ( | void | ) |
This function makes the AVR selects the EXTERNAL clock source (CRYSTAL).
Definition at line 127 of file power_drv.c.
References Disable_RC_clock, Enable_external_clock, External_clock_ready, and Select_external_clock.
00128 { 00129 Enable_external_clock(); 00130 while (!External_clock_ready()); 00131 Select_external_clock(); 00132 Disable_RC_clock(); 00133 }
void Clock_switch_internal | ( | void | ) |
This function makes the AVR selects the INTERNAL clock source (RC).
Definition at line 138 of file power_drv.c.
References Disable_external_clock, Enable_RC_clock, RC_clock_ready, and Select_RC_clock.
00139 { 00140 Enable_RC_clock(); 00141 while (!RC_clock_ready()); 00142 Select_RC_clock(); 00143 Disable_external_clock(); 00144 }