Еще одна бесполезная программа ;)

Apr 04, 2007 3 Replies

Salve!



Link:

formatting link
Size: 232 KB



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


  • также послано в RU.EMBEDDED
  • также послано в SU.HARDW.SCHEMES

Best Regards, J.V.Gurin, 04 Apr 2007


Hi, Juriy!

JG> Программа предназначена облегчить написание таблицы перекодировки для JG> семисегментного дисплея. Идея написать программу появилась после JG> нескольких JG> исправлений одного и того же устройства с переконфигурациией его JG> сегментных JG> ног. Я один раз написал такую табличку и включаю во все проекты где используется семисегментные индикаторы: ; Таблица отображения символов семисегментным индикатором ; Если объявлена переменная TAILLESS, то меняется начертание цифр 6, 7, 9 ; Если объявлена переменная INVERT, то "светятся" биты '0' invertmask set 0x00 IFDEF INVERT invertmask set 0xff ENDIF ; let_1 SET invertmask^(seg_b+seg_c) let_2 SET invertmask^(seg_a+seg_b+seg_d+seg_e+seg_g) let_3 SET invertmask^(seg_a+seg_b+seg_c+seg_d+seg_g) let_4 SET invertmask^(seg_b+seg_c+seg_f+seg_g) let_5 SET invertmask^(seg_a+seg_c+seg_d+seg_f+seg_g) let_6 SET invertmask^(seg_c+seg_d+seg_e+seg_f+seg_g) IFNDEF TAILLESS let_6 SET invertmask^((invertmask^let_6)+seg_a) ENDIF [skip] и так далее... там дальше еще толпа символов и других знаков. Просто перед вызовом этого инклюда надо определить на какой разряд попадает соответсвующий сегмент, например: ; Таблица подключения сегментов seg_a SET 1<<1 seg_b SET 1<<2 seg_c SET 1<<3 seg_d SET 1<<4 seg_e SET 1<<5 seg_f SET 1<<6 seg_g SET 1<<7 seg_h SET 1<<8 Дальше компилятор все сделает сам ;-)

WL

Salve!

06 Apr 2007, /*_Vladimir Birjukov_*/ wrote to */Juriy Gurin/* the following:

JG>> Программа предназначена облегчить написание таблицы JG>> перекодировки для семисегментного дисплея. Идея написать JG>> программу появилась после нескольких исправлений одного и того же JG>> устройства с переконфигурациией его сегментных ног. VB> Я один раз написал такую табличку и включаю во все проекты где VB> используется семисегментные индикаторы: VB> ; Таблица отображения символов семисегментным индикатором -=skip=- VB> IFNDEF TAILLESS VB> let_6 SET invertmask^((invertmask^let_6)+seg_a) VB> ENDIF

VB> seg_f SET 1<<6

VB> Дальше компилятор все сделает сам ;-)

Это вариант :) Только придется долго искать названия всяких спец-символов (2^7 или 2^8 штук) ;-)

Best Regards, J.V.Gurin, 10 Apr 2007

Hi, Juriy!

VB>> Дальше компилятор все сделает сам ;-) JG> Это вариант :) Только придется долго искать названия всяких JG> спец-символов (2^7 или 2^8 штук) ;-) Hа семисегментном индикаторе всего возможно 2^7 комбинаций. И названия им придумывать не надо. Достаточно просто придерживаться системы, например, let_ и отображаемый символ. Если символ недопустимый, то человеческое название - для двоеточия let_colon.

WL

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required