0

I have used PIC18F24k40 series MCU with DS1307. Here is portion of code posted. DATE_TIME_SET_ADD() function where i am setting time.Display_RTC_Clock() is displaying time. currently it working like this

i am setting value of MIN_SET & SEC_SET =0X40 in decimal . but in Run mode while displaying ,it display hexadecimal value 0X28

Temp1= sec & 0x0f;Temp2= sec>> 4;
LEDBuffer_1[0] = DISPTABLE[Temp1];
LEDBuffer_1[1] = DISPTABLE[Temp2];
Temp3 = min & 0x0f;Temp4= min >> 4;
LEDBuffer_1[2] = DISPTABLE[Temp3];
LEDBuffer_1[3] = DISPTABLE[Temp4];

If i change below value it will display hexadecimal value after 40. if i set MIN_SET & SEC_SET =0X00 then properly increment. But for MIN_SET & SEC_SET=0X40 min parameter shows 0X40 and sec parameter display for 56 it shows 38

Temp1= sec %10;Temp2= sec/10;
LEDBuffer_1[0] = DISPTABLE[Temp1];
LEDBuffer_1[1] = DISPTABLE[Temp2];
Temp3 = min %10;Temp4= min /10;
LEDBuffer_1[2] = DISPTABLE[Temp3];
LEDBuffer_1[3] = DISPTABLE[Temp4];

what are changes need to made to display actual value. Somewhere i need to convert bcd to decimal and decimal to Bcd conversion

user50949
  • 37
  • 2
  • 7

0 Answers0