Здравствуйте! Уважаемые форумчане, подскажите пожалуйста как зажечь точку скажем во втором разряде.
Ещё создавать массив для точки? Не соображу как малой кровью обойтись.
Заранее благодарен.
$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
