Администрация форума не несёт ответственности за достоверность информации и оставляет за собой право редактировать или в особых случаях даже удалять посты без предупреждения. Спасибо за понимание.

Программирование ATMEL в BASCOM.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Программирование ATMEL в BASCOM. » Вопросы - ответы » Статическая индикация на 74HC595


Статическая индикация на 74HC595

Сообщений 1 страница 11 из 11

1

Здравствуйте!  Уважаемые форумчане, подскажите пожалуйста как зажечь точку скажем во втором разряде.
Ещё создавать массив для точки? Не соображу как малой кровью обойтись. :-)   Заранее благодарен.

$regfile = "m8def.dat"
$crystal = 1000000

Config Portd = Output

'значение этой переменной должны будем вывести на индикатор
Dim A As Word

'переменные для преобразования исходного числа
Dim N1 As Integer
Dim N2 As Integer
Dim N3 As Integer

'для значений отправляемых в регистр
Dim R1 As Byte                                              'сотки
Dim R2 As Byte                                              'десятки
Dim R3 As Byte                                              'единицы

A = 123                                                             'выведем вот это число

'раскладываем число на составляющие

N1 = A / 100                                                'подготовка соток, N1=1

N2 = A Mod 100                                              'подготовка десяток, N2=2
N2 = N2 / 10

N3 = A Mod 10                                               'подготовка единиц, N3=3

'вытаскиваем из массива подготовленные значения
R1 = Lookup(n1 , Numbers)
R2 = Lookup(n2 , Numbers)
R3 = Lookup(n3 , Numbers)

'задвигаем в регистры значения, единицы идут первыми
Shiftout Portd.5 , Portd.6 , R3 , 1
Shiftout Portd.5 , Portd.6 , R2 , 1
Shiftout Portd.5 , Portd.6 , R1 , 1

Pulseout Portd , 7 , 5                                      'защелкиваем данные

End

'массив с кодами для семисегментника
Numbers:
Data &B11000000                                             '0
Data &B11111001                                             '1
Data &B10100100                                             '2
Data &B10110000                                             '3
Data &B10011001                                             '4
Data &B10010010                                             '5
Data &B10000010                                             '6
Data &B11111000                                             '7
Data &B10000000                                             '8
Data &B10010000                                             '9

0

2

const Сегмент_точка = B&_0000_0100  ' 1 это Ваша точка)

R1 = Lookup(n1 , Numbers)

R1 = R1 Xor Сегмент_точка

0

3

Александр, спасибо большое за ответ, но не могли бы Вы в коде это решение показать, опыта у меня мало, и я не совсем понял как это сделать.

0

4

'вытаскиваем из массива подготовленные значения
R1 = Lookup(n1 , Numbers)
R2 = Lookup(n2 , Numbers)
R3 = Lookup(n3 , Numbers)

'в нужном разряде делаете

R1 или R2 или R3 = R1 или R2 или R3 Xor &B_0000_1000  'где 1 это Ваша точка

Ещё можно посмотреть здесь

Отредактировано sasha_1973 (2017-10-09 14:50:33)

+1

5

Благодарю, пока не понял, буду разбираться. Кстати ссылка которую Вы привели говорит что "Ссылка, по которой Вы пришли неверная или устаревшая.".

0

6

catalex написал(а):

ссылка которую Вы привели говорит что "Ссылка, по которой Вы пришли неверная или устаревшая.".


По ней можно перейти только зайдя в форум.

0

7

sasha_1973 написал(а):

По ней можно перейти только зайдя в форум.

"Ссылка, по которой Вы пришли неверная или устаревшая. "

0

8

RDW написал(а):

"Ссылка, по которой Вы пришли неверная или устаревшая. "

Ссылка рабочая

0

9

для кого как  :D

0

10

Рабочая ссылка Исследование 7-seg LED индикации

0

11

catalex написал(а):

Кстати ссылка которую Вы привели говорит что "Ссылка, по которой Вы пришли неверная или устаревшая.".

RDW написал(а):

"Ссылка, по которой Вы пришли неверная или устаревшая. "

__http://bascomavr.ru/viewtopic.php?id=1127__

__http://bascomavr.3bb.ru/viewtopic.php?id=1127__

Смотря на каком форуме находитесь.  В ссылке убрать нижние подчеркивания

Отредактировано sasha_1973 (2017-10-11 19:37:55)

0


Вы здесь » Программирование ATMEL в BASCOM. » Вопросы - ответы » Статическая индикация на 74HC595