working version

Dependencies:   mbed mbed-rtos SimpleDMA FreescaleIAP eeprom

Fork of CDMS_CODE_FM_28JAN2017 by samp Srinivasan

RESET_functions.h

Committer:
samp1234
Date:
2022-04-03
Revision:
357:f3d48d62e00e
Parent:
289:9bd62b69874c

File content as of revision 357:f3d48d62e00e:


void RESET_COMRX();
void RESET_RTC();
void RESET_WATCHDOG();

void RESET_COMRX()
{
    gPC.printf("\r COM RX resetting\n");
    COM_RX_CNTRL = 0;
    wait_ms(10);
    COM_RX_CNTRL =1;
}

void RESET_RTC()
{
    gPC.printf("Resetting RTC");
    gCS_RTC=1;
    gCS_RTC=0;
    spi.write(0x81); //register address with write flag
    spi.write(0x80);//enabling stop bit in the seconds register
 
    gCS_RTC=1;
    gCS_RTC=0;
    spi.write(0x81);
    spi.write(0x00);//disabling the stop bit to restart the oscillator 

    wait_ms(4000);
    //clearing the halt bit 
    gCS_RTC=1;
    gCS_RTC=0;
    spi.write(0x8C);
    spi.write(0x00);
     
    //clearing the OF bit 
    gCS_RTC=1;
    gCS_RTC=0;
    spi.write(0x8F);
    spi.write(0x00);
}

void RESET_WATCHDOG(){
    gPC.printf("\r WD\n");
    int i=0;
    WDTrigger = 1;
    while(i<5){
        i++;
    }
    WDTrigger = 0;
    
}