реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> вывод двузначных чисел на ЖКИ
Hellka
сообщение Dec 15 2006, 11:45
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 2-10-06
Пользователь №: 20 895



измеряю температуру, допустим получаю 90 градусов, возник
вопрос, каким образом сразу передать 2 цифры. что-то
вспоминаю, что нужно перевести в двоично-десятичный вид и
затем уже получаем младшая терада - единицы, старшая -
десятки, переводим в код аски и выдаем....если это
действительно правильно никто не подкинет подпрограму
перевода, желательно на асме и что-нибудь попроще...
Go to the top of the page
 
+Quote Post
derun
сообщение Dec 15 2006, 15:28
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 133
Регистрация: 12-01-05
Из: Украина. Чернигов
Пользователь №: 1 908



Асемблер понятие растяжимое, для какого процессора?
Могу предложить алгоритм,и программу для 51.

HEXTOBCD8:
;--------------АЛГОРИТМ-----------------

;1.Сдвигать в лево
;2.Прибавлять 3 к каждой BCD тетраде которая >=5
;Повторять столько раз сколько бит в числе
;в последнем цикле прибавлять 3 не нужно !!!

;Пример 8 бит число: $F9 в BCD
; Результат : Исходное число
;0000 0000 0000 : 1111 1001
;0000 0000 0001 : 1111 0010 (сдвиг в лево)
;0000 0000 0011 : 1110 0100 (сдвиг в лево)
;0000 0000 0111 : 1100 1000 (сдвиг в лево)
;0000 0000 1010 : 1100 1000 (add 3)
;0000 0001 0101 : 1001 0000 (сдвиг в лево)
;0000 0001 1000 : 1001 0000 (add 3)
;0000 0011 0001 : 0010 0000 (сдвиг в лево
;0000 0110 0010 : 0100 0000 (сдвиг в лево)
;0000 1001 0010 : 0100 0000 (add 3)
;0001 0010 0100 : 1000 0000 (сдвиг в лево)
;0010 0100 1001 : 0000 0000 (сдвиг в лево)

;В результате получим BCD 249.
;гораздо проще чем использовать DIV !!!

Успехов.
Прикрепленные файлы
Прикрепленный файл  BCD16.zip ( 2.04 килобайт ) Кол-во скачиваний: 71
 
Go to the top of the page
 
+Quote Post
urry1
сообщение Dec 15 2006, 16:57
Сообщение #3


Участник
*

Группа: Новичок
Сообщений: 54
Регистрация: 14-12-06
Пользователь №: 23 498



Цитата(derun @ Dec 15 2006, 15:28) *
Асемблер понятие растяжимое, для какого процессора?

и какое число, и для какого индикатора ? smile.gif
Я когда-то работал с мт107 , так там передаются 4 разряда и стробируются адрес/данные..
Они сами не знают, чего хочуть.. smile.gif
Go to the top of the page
 
+Quote Post
ttron
сообщение Dec 15 2006, 17:15
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 134
Регистрация: 1-06-05
Из: Москва
Пользователь №: 5 634



Цитата(Hellka @ Dec 15 2006, 11:45) *
измеряю температуру, допустим получаю 90 градусов, возник
вопрос, каким образом сразу передать 2 цифры. что-то
вспоминаю, что нужно перевести в двоично-десятичный вид и
затем уже получаем младшая терада - единицы, старшая -
десятки, переводим в код аски и выдаем....если это
действительно правильно никто не подкинет подпрограму
перевода, желательно на асме и что-нибудь попроще...


Вы, часом, не курсовик делаете? Зачетная неделя скоро tongue.gif

Код
;=======
;веpс.:    Microchip Embedded Control Handbook, 1993 p.2-203
;объем:    10
; стек:    1
;время:    max=82 (с вызовом)
; вход:    w=двоичное число ( max 99, иначе ст.цифpа с ошибкой !)
;акция:    вычитает 10 из числа,пока не пpоизойдет заем
;выход:    acc6=ст.цифpа, acc4=мл.цифpа
bin_bcd
    movwf    acc4    ;
bin_10
    clrf    acc6    ;
    movlw    10    ;
    subwf    acc4,w    ;
    btfss    c    ;
    return        ;
    movwf    acc4    ;
    incf    acc6    ;
    goto    $-6    ;


--------------------
"Регистрируй, наблюдай, экономь микросекунду, зря вопрос не задавай, не запоминай ерунду" (с) не помню, чье
Go to the top of the page
 
+Quote Post
urry1
сообщение Dec 15 2006, 17:23
Сообщение #5


Участник
*

Группа: Новичок
Сообщений: 54
Регистрация: 14-12-06
Пользователь №: 23 498



[quote name='ttron' date='Dec 15 2006, 17:15' post='187754']

[/quote]

Вы, часом, не курсовик делаете? Зачетная неделя скоро tongue.gif

[/quote]

Да пусть человек просто скажет, что ему нужно... Из кусков он фик слепит.. smile.gif
Глядишь, обчими усилиями - и весь проект.. Все равно на работе скучаю... sad.gif
Go to the top of the page
 
+Quote Post
giran
сообщение Dec 16 2006, 06:31
Сообщение #6





Группа: Новичок
Сообщений: 12
Регистрация: 18-07-05
Пользователь №: 6 878



Вы, часом, не курсовик делаете? Зачетная неделя скоро

Да нет, он ждёт когда за него всё сделают, причём не только на этом форуме
http://kazus.ru/forum/topics/5763.html
http://www.microchip.ru/phorum/read.php?f=...69&t=151769
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 5th July 2025 - 06:09
Рейтинг@Mail.ru


Страница сгенерированна за 0.01407 секунд с 7
ELECTRONIX ©2004-2016