Регистрация | Вход

[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: demanik, ivan_fd  
Форум Picbasic.ru » Программирование МК » Proton PicBasic » ds1302 преобразование часов, минут
ds1302 преобразование часов, минут
ivan_fd Дата: Чт, 10.09.2009, 23:45  |                                                                                                                Сообщение # 1
Группа: Модераторы
Ранг:  Специалист
Сообщений: 894
Репутация: 124   ±
Замечания:   ±
На сайте с 12.01.2009

Статус: Offline

Привет! Голова совсем на ночь не варит. Подскажите как преобразовать полученное время с микросхемы в десятичное число. Время приходит в HEX формате. Спасибо!
ЯНДЕКС Дата: 10.09.2009
ADMIN Дата: Пт, 11.09.2009, 07:15  |                                                                                                                Сообщение # 2
Администратор
Группа: Администраторы
Ранг:  Специалист
Сообщений: 1087
Репутация: 32   ±
Замечания:   ±
На сайте с 20.08.2007

Статус: Offline

Это не HEX а BIN формат.
Вот преобразования:
Code

' BCD to BINARY conversion
' BCD2BIN_VAL is the input and output variable
BCD_TO_BIN:
nTEMP1 = nBCD2BIN_VAL & $F ' Convert the values from BCD to BIN
nTEMP2 = nBCD2BIN_VAL & $F0 ' Mast off either side
nTEMP2 = nTEMP2 >>4 ' divide by 16
nTEMP2 = nTEMP2 * 10 ' X by 10
nBCD2BIN_VAL = nTEMP1 + nTEMP2 ' Now add the original number

RETURN

'************************************************* **************
' BINARY to BCD conversion
' BIN2BCD_VAL is the input and output variable
BIN_TO_BCD:
nLow_Bits = nBIN2BCD_VAL // 10 'get lsb,same for Bin and BCD
nHigh_Bits = nBIN2BCD_VAL / 10 'get msb
nBIN2BCD_VAL = nHigh_Bits * 16 'covert msb to BCD
nBIN2BCD_VAL = nBIN2BCD_VAL + nLow_Bits 'add BCD msb and lsb together

RETURN

ivan_fd Дата: Пт, 11.09.2009, 10:45  |                                                                                                                Сообщение # 3
Группа: Модераторы
Ранг:  Специалист
Сообщений: 894
Репутация: 124   ±
Замечания:   ±
На сайте с 12.01.2009

Статус: Offline

Спасибо! Я имел ввиду hexadecimal число. Я уже сам дошел, просто с вечера голова не соображала.
Но все равно большое спасибо. biggrin
Форум Picbasic.ru » Программирование МК » Proton PicBasic » ds1302 преобразование часов, минут
  • Страница 1 из 1
  • 1
Поиск: