This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RTC in Calendar Mode with sub-seconds resolution

Other Parts Discussed in Thread: TM4C1233H6PM

Hello all,

My project requires a real time clock AND sub-seconds event timing. Somewhere in it, I need to create a timestamp that would be like HH:MM:SS.ss - (1/100s resolution is good enough)

I got the RTC of the hibernation module to work just fine.

The HIBERNATE_COUNTER_24HR (Calendar) mode is really convenient to allow for a proper calendar behavior without having to worry with functions that increment seconds, minutes, hours, etc... But such mode does not allow for using the RTCSS value.

So I thought about Calendar mode together with a second timer (TIMER7_A), running from the same clock as the Hibernation module. My event time would be HibernateCalendarGet(&current_time) plus the fraction of the current timer value.

I am however failing to sync both timers. I tried to start the hibernate time, enable a "round second" interrupt and immediately start TIMER7_A, but it won't sync at all (they both loop every second, but I can't get the TIMER7_A to reset at the same instant as the round second (a piece of code below).

	ui32Status = HibernateIntStatus(0);
	HibernateIntClear(ui32Status);
	HibernateCalendarGet(&temptime);
	temptime.tm_sec = 0xFF;
	HibernateCalendarMatchSet(0,&temptime);
	HibernateIntEnable(HIBERNATE_INT_RTC_MATCH_0);
	while (!(HibernateIntStatus(0)));  // waits for any interrupt (there is only one type enabled)
    TimerEnable(TIMER7_BASE, TIMER_A);
	ui32Status = HibernateIntStatus(0);
	HibernateIntClear(ui32Status);
	HibernateIntDisable(HIBERNATE_INT_RTC_MATCH_0);

Any suggestions for a different approach or to make this one work?

Thanks!

Bruno

  • Hello Bruno,

    It is unclear as to how you are changing the clock of the Timer-7 to Hibernate Clock Source. If you are using the SYSCTL_ALTCLKCFG then be aware of the Errata's on the same for the Timer Module

    Also the configuration of the timer module is also not available either in the code snapshot.

    -- EDIT START

    Why can't the RTC Mode be used and the time in HH:MM:SS:ss be computed by the Cortex M4. This would be more convenient that syncing Hibernate with a general purpose timer.

    -- EDIT ENDS

    Regards

    Amit

  • EDIT:

    The RTC mode of the timer requires a clock input of 32768Hz on CCP input of the timer and internally divide this clock up to 1 second and this is written to the counter. The sub-second part remain hidden

    P

  • I am really lost on this one.

    These two pieces of the datasheet seem to inform that it is NOT POSSIBLE to use the CALENDAR MODE together with the sub-seconds counter. Is that a fact or not?

    If that is indeed the case, then I am seeking help to use the RTC in CALENDAR mode and still be able to keep a sub-seconds count. That is why I thought of using a general purpose timer, and try to start it "together" with the enabling of the RTC.

    The piece of code below shows the configuration of the HIBERNATE module and also of one GPT. I would expect that the GPT start counting at zero right after the GPT starts...

    MAP_SysCtlPeripheralEnable(SYSCTL_PERIPH_HIBERNATE);
    HibernateEnableExpClk(g_ui32SysClock);
    WaitForClockRegister();
    HibernateClockConfig(HIBERNATE_OSC_LOWDRIVE);  // Use external 32768Hz crystal with 12pF capacitors
    WaitForClockRegister();
    HibernateClockConfig(HIBERNATE_OUT_SYSCLK);    // Enables the RTCOSC to be used as a system clock for peripherals
    WaitForClockRegister();
    HWREG(0x400FE000 + 0x138) = (0x03);  // Configures register ALTCLKCFG to use RTCOSC as a source
    WaitForClockRegister();
    
    current_time.tm_min 	= 5;
    current_time.tm_hour 	= 14;
    current_time.tm_year	= 114;   // 1900 + 114 = 2014
    current_time.tm_mday	= 1;
    current_time.tm_mon	= 8;
    
    SysCtlPeripheralEnable(SYSCTL_PERIPH_TIMER7);
    TimerClockSourceSet(TIMER7_BASE, TIMER_CLOCK_PIOSC);   // Configures GPTMCC with 0x01 to use the alternate clock ALTCLK
    TimerConfigure(TIMER7_BASE, TIMER_CFG_SPLIT_PAIR | TIMER_CFG_A_PERIODIC_UP);
    TimerLoadSet(TIMER7_BASE, TIMER_A, 0x7FFF);
    HWREG(TIMER7_BASE + 0X050) = 0;  // make sure TIMER7 counter is set to ZERO
    
    HibernateRTCEnable();	// Enables RTC
    TimerEnable(TIMER7_BASE, TIMER_A);  // Enables TIMER7 right after that
    WaitForClockRegister();
    HibernateCounterMode(HIBERNATE_COUNTER_24HR);
    WaitForClockRegister();
    HibernateCalendarSet(&current_time);
    WaitForClockRegister();

    Then these lines of code try to read the current time and current "sub-seconds" from the GPT. But my naive intent that they are synchronized got nowhere (they are synced, but offset).

    	HibernateCalendarGet(&current_time);
    	secdec = TimerValueGet(TIMER7_BASE, TIMER_A) * 10 / 32768;

    Your valuable comments will be most welcome!

  • Hi,

    You are not completely lost - you may realise that you have two modes available: The Calendar one, and the RTC one, with sub-seconds information. You should also know that the Calendar mode has a small bug inside, year field is not correctly treated (we know where the bug is and how to correct it) but this mode does not use sub-seconds. You may use the RTC with the same results as Calendar by using two routines from Tiva/utils/ustdlib.c, ustdlib.h, namely ulocaltime and umktime - works very well - and just need to add sub-seconds to your data. These are if you need month/year... - your claims in the first post were HH:MM:SS:sSS - if that is the case only, no need of above routines, just dividing the seconds in h/min.. may be an easier alternative.

    I posted an example with only RTC and ulocaltime/umktime, but no sub-seconds, this spring (don't remember when), I will try to search and re-post.

    Petrei

  • Hello Bruno,

    I agree with Petrei. It would be simpler to read the RTC in normal mode so that you get the count of Seconds and Sub-Seconds and then use the Seconds to display in DD:HH:MM:SS format

    Regards

    Amit

  • Hi, 

    Found the example and re-posted here:

    7587.3426.RTCDayTime123.zip

    Petrei

  • Amit, Petrei,

    I stand defeated. Will revert to RTC normal mode, and simply convert seconds into human time whenever needed. I agree it is an easy math.

    I guess I just wanted to use what sounded like such a nice hardware feature: the calendar mode...

    Anyway, if any of the readers have nothing better to do with their time, the challenge stands: try to use calendar mode and something else to count sub-seconds, properly synced.

    Thanks for the help!!!

    PS: RTC normal mode implemented and working like a charm, thanks! Here's a small piece of code if anyone else needs a hint:

    	current_seconds = HibernateRTCGet();		 // read current RTC counter in seconds
    	secdec = HibernateRTCSSGet() * 100 / 32768;  // secdec is 0.xx seconds
    	ulocaltime(current_seconds, &current_time);  // current_time in tm struc format

  • HI, bryan here, can you briefly explained the RTC normal mode? I wan to convert the time counting in stellaris to convert to real life time. I am juz beginner and i have no clue at all. Can you provide the code in normal mode if possible.

  • Hello Bryan,

    Which TM4C device are you using and is this a LaunchPad or a custom board you are using?

    Regards
    Amit
  • Amit: ya, it is stellaris launchpad EK-LM4F120XL. How do i get the timer value from the 32.768kHz oscillator?
  • Hello Bryan

    I am not sure I understand what you are saying. Do you mean a RTC value in hh:mm:ss format from a 32K oscillator?

    Regards
    Amit
  • HOw can i accomplished from getting the counter time and then convert it into real time with DD:HH:MM in normal RTC mode? because it seen it didnot support the hibernate calender mode.
  • Hello Amit,
    Ya, because i have to link and display it to the LCD later on.
  • Hello Bryan.

    The code posted by Petrei in the same thread does the same for LM4F120. Please note that LM4F120 and TM4C123 are same for the Hibernate Mode of operation.

    Regards
    Amit
  • Hello Amit

    Ya, i tried. But there are so many errors indicated to the hibernate.h file. For example : the erroe like #86 invalid storage class for a parameter and #100 a declaration here must declare a parameter. I duno what the problems. I also change the coding in the startup_ccs.
  • Hello Amit,
    Did i miss something to configure? or any changes needed to be done?
  • Hello Bryan

    Are you using StellarisWare or TivaWare? If the former then please migrate to TivaWare. The equivalent of the LM4F120H5QR is the TM4C1233H6PM

    Regards
    Amit
  • Hello, Amit
    I am using TIVAWARE.
  • Hello Byran,

    Please attach (don't copy paste) the compilation log file for review

    Regards
    Amit

  • **** Build of configuration Debug for project Realtime ****

    "C:\\ti\\ccsv6\\utils\\bin\\gmake" -k all
    'Building file: ../main.c'
    'Invoking: ARM Compiler'
    "C:/ti/ccsv6/tools/compiler/ti-cgt-arm_5.2.2/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 --abi=eabi -me --include_path="C:/ti/ccsv6/tools/compiler/ti-cgt-arm_5.2.2/include" --include_path="C:/ti/TivaWare_C_Series-2.1.1.71" -g --gcc --define="ccs" --define=PART_LM4F120H5QR --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="main.pp" "../main.c"
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 215: error #171: expected a declaration
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 216: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 216: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 217: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 217: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 218: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 218: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 219: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 219: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 220: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 220: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 221: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 221: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 222: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 222: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 223: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 223: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 224: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 224: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 225: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 225: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 226: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 226: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 227: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 227: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 228: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 228: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 229: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 229: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 230: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 230: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 231: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 231: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 232: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 232: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 233: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 233: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 234: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 234: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 235: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 235: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 237: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 237: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 238: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 238: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 239: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 239: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 240: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 240: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 241: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 241: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 242: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 242: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 243: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 243: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 244: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 244: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 245: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 245: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 246: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 246: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 141: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 141: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 143: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 143: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 144: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 144: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 146: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 146: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 147: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 147: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 149: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 149: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 151: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 151: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 152: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 152: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 153: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 153: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 154: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 154: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 155: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 155: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 156: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 156: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 157: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 157: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 158: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 158: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 159: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 159: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 160: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 160: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 161: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 161: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 162: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 162: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 163: error #86: invalid storage class for a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 163: error #100: a declaration here must declare a parameter
    "C:/ti/TivaWare_C_Series-2.1.1.71/driverlib/gpio.h", line 164: error #86: invalid storage class for a parameter
    Error limit reached.
    100 errors detected in the compilation of "../main.c".
    Compilation terminated.

    >> Compilation failure
    gmake: *** [main.obj] Error 1
    gmake: Target `all' not remade because of errors.

    **** Build Finished ****

  • Hello Bryan

    See the attached log file for comparison. I would suggest import an existing example from TivaWare like udma_demo and then copy over the contents from Petrei's code.

    **** Build of configuration Debug for project ektm4c123_hib_deepsleep ****
    
    "C:\\ti\\ccsv6\\utils\\bin\\gmake" -k all 
    'Building file: ../ektm4c123_hib_deepsleep.c'
    'Invoking: ARM Compiler'
    "C:/ti/ccsv6/tools/compiler/arm_5.1.8/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 --abi=eabi -me -Ooff --include_path="C:/ti/ccsv6/tools/compiler/arm_5.1.8/include" --include_path="D:/ti/TivaWare_C_Series-2.1.1.71" -g --gcc --define=ccs="ccs" --define=TARGET_IS_TM4C123_RB1 --define=PART_TM4C123GH6PM --display_error_number --diag_warning=225 --diag_wrap=off --gen_func_subsections=on --ual --preproc_with_compile --preproc_dependency="ektm4c123_hib_deepsleep.pp"  "../ektm4c123_hib_deepsleep.c"
    "D:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 229: warning #233-D: declaration is not visible outside of function
    "D:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 230: warning #233-D: declaration is not visible outside of function
    "D:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 231: warning #233-D: declaration is not visible outside of function
    "D:/ti/TivaWare_C_Series-2.1.1.71/driverlib/hibernate.h", line 232: warning #233-D: declaration is not visible outside of function
    'Finished building: ../ektm4c123_hib_deepsleep.c'
    ' '
    'Building file: ../startup_ccs.c'
    'Invoking: ARM Compiler'
    "C:/ti/ccsv6/tools/compiler/arm_5.1.8/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 --abi=eabi -me -Ooff --include_path="C:/ti/ccsv6/tools/compiler/arm_5.1.8/include" --include_path="D:/ti/TivaWare_C_Series-2.1.1.71" -g --gcc --define=ccs="ccs" --define=TARGET_IS_TM4C123_RB1 --define=PART_TM4C123GH6PM --display_error_number --diag_warning=225 --diag_wrap=off --gen_func_subsections=on --ual --preproc_with_compile --preproc_dependency="startup_ccs.pp"  "../startup_ccs.c"
    'Finished building: ../startup_ccs.c'
    ' '
    'Building file: D:/ti/TivaWare_C_Series-2.1.1.71/utils/uartstdio.c'
    'Invoking: ARM Compiler'
    "C:/ti/ccsv6/tools/compiler/arm_5.1.8/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 --abi=eabi -me -Ooff --include_path="C:/ti/ccsv6/tools/compiler/arm_5.1.8/include" --include_path="D:/ti/TivaWare_C_Series-2.1.1.71" -g --gcc --define=ccs="ccs" --define=TARGET_IS_TM4C123_RB1 --define=PART_TM4C123GH6PM --display_error_number --diag_warning=225 --diag_wrap=off --gen_func_subsections=on --ual --preproc_with_compile --preproc_dependency="uartstdio.pp"  "D:/ti/TivaWare_C_Series-2.1.1.71/utils/uartstdio.c"
    'Finished building: D:/ti/TivaWare_C_Series-2.1.1.71/utils/uartstdio.c'
    ' '
    'Building file: D:/ti/TivaWare_C_Series-2.1.1.71/utils/ustdlib.c'
    'Invoking: ARM Compiler'
    "C:/ti/ccsv6/tools/compiler/arm_5.1.8/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 --abi=eabi -me -Ooff --include_path="C:/ti/ccsv6/tools/compiler/arm_5.1.8/include" --include_path="D:/ti/TivaWare_C_Series-2.1.1.71" -g --gcc --define=ccs="ccs" --define=TARGET_IS_TM4C123_RB1 --define=PART_TM4C123GH6PM --display_error_number --diag_warning=225 --diag_wrap=off --gen_func_subsections=on --ual --preproc_with_compile --preproc_dependency="utils/ustdlib.pp" --obj_directory="utils"  "D:/ti/TivaWare_C_Series-2.1.1.71/utils/ustdlib.c"
    'Finished building: D:/ti/TivaWare_C_Series-2.1.1.71/utils/ustdlib.c'
    ' '
    'Building target: ektm4c123_hib_deepsleep.out'
    'Invoking: ARM Linker'
    "C:/ti/ccsv6/tools/compiler/arm_5.1.8/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 --abi=eabi -me -Ooff -g --gcc --define=ccs="ccs" --define=TARGET_IS_TM4C123_RB1 --define=PART_TM4C123GH6PM --display_error_number --diag_warning=225 --diag_wrap=off --gen_func_subsections=on --ual -z -m"ektm4c123_hib_deepsleep.map" --heap_size=0 --stack_size=256 -i"C:/ti/ccsv6/tools/compiler/arm_5.1.8/lib" -i"C:/ti/ccsv6/tools/compiler/arm_5.1.8/include" --reread_libs --warn_sections --display_error_number --diag_wrap=off --xml_link_info="ektm4c123_hib_deepsleep_linkInfo.xml" --rom_model -o "ektm4c123_hib_deepsleep.out" "./ektm4c123_hib_deepsleep.obj" "./startup_ccs.obj" "./uartstdio.obj" "./utils/ustdlib.obj" "../ektm4c123_hib_deepsleep.cmd"  -l"libc.a" -l"C:\ti\TivaWare_C_Series-2.1.0.12573\driverlib\ccs\Debug\driverlib.lib" 
    <Linking>
    'Finished building target: ektm4c123_hib_deepsleep.out'
    ' '
    "C:/ti/ccsv6/utils/tiobj2bin/tiobj2bin" "ektm4c123_hib_deepsleep.out" "ektm4c123_hib_deepsleep.bin" "C:/ti/ccsv6/tools/compiler/arm_5.1.8/bin/armofd" "C:/ti/ccsv6/tools/compiler/arm_5.1.8/bin/armhex" "C:/ti/ccsv6/utils/tiobj2bin/mkhex4bin"
    ' '
    
    **** Build Finished ****
    

    Note: that the file ustdlib.c needs to be included in the compile flow.

    Regards

    Amit

  • (Somewhere: "Do not touch that hot pan - and do not call the Fire Dept!)

    Seconds later - "Ouch - that's hot - and then - fire engine siren roars..."

  • Hello Amit
    I will try it. Thanks for the help.
    Appreciate your help alot.
    Will come to you again when found problem. I need to have some sleep now because it is deep midnight.