X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=power.c;h=d4e469ec68a2cc2a70da78146b6fcd89f2a122e6;hb=fd6f13933258e592ba3adfc21150db615a36ccac;hp=3d3c060449898c1142e56134afc023a43ac5dbf2;hpb=ddb2c8237e0c2038760644a6b94c8b9a8983b583;p=openi2cradio%2FOpenI2CRadio.git diff --git a/power.c b/power.c index 3d3c060..d4e469e 100644 --- a/power.c +++ b/power.c @@ -31,6 +31,8 @@ #include "power.h" #include "menu.h" #include "backlight.h" +#include "rencoder.h" +#include "euart.h" /* * Detect reset condition. @@ -92,9 +94,9 @@ void power_on_inthook(void) void power_on(unsigned char f) { if(f == 0x00){ - set_examp_mute(0xff); - idle_time_ms(200); - set_radiopower(0x00); + set_radiopower(0x00); + set_examp_mute(0xff); +// idle_time_ms(200); } else { set_examp_mute(0x00); idle_time_ms(100); @@ -140,7 +142,9 @@ unsigned char chk_powerbutton(void) void shutdown(unsigned char savef) { rfamp_power(RFAMP_OFF); + power_on(0); acm1602_suspend(LCD_I2CADDR); + lcd_setbacklight(0, 0); power_off(savef); } @@ -148,18 +152,18 @@ void power_off(unsigned char savef) { unsigned char sts; + uart_sleep(); if(savef != 0) { save_eeprom(); save_userbands(); } - lcd_setbacklight(0, 0); - set_powerlamp(0); +// set_powerlamp(0); _AM_STATLAMP = 0; _FM_STATLAMP = 0; - power_on(0); WDTCONbits.SWDTEN = 0; // Lame WDT OFF. sts = 0; + rencoder_stop(); do { RCONbits.IPEN = 1; IOCB = 0x10; // IOCB4 ONLY.