Генератор кода 7Seg

Обсуждаем цифровые устройства...
Ответить
intom33
Родился
Сообщения: 15
Зарегистрирован: Чт июн 17, 2010 21:11:06

Генератор кода 7Seg

Сообщение intom33 »

Доброго времени суток ВСЕМ!
Кто подскажет где скачать генератор кода 7SEG Led индикатора?
В инете много есть но онлайн а мне надо скачать на комп, потому как не всегда хороший интернет.
Реклама
Уош
Опытный кот
Сообщения: 700
Зарегистрирован: Вс мар 23, 2025 14:56:55

Re: Генератор кода 7Seg

Сообщение Уош »

Starichok51 писал такую программу, спросите у него.
Реклама
Аватара пользователя
VNS
Говорящий с текстолитом
Сообщения: 1627
Зарегистрирован: Пт дек 10, 2021 12:48:46
Откуда: Тюмень

Re: Генератор кода 7Seg

Сообщение VNS »

[uquote="intom33",url="/forum/viewtopic.php?p=4710419#p4710419"]Кто подскажет где скачать генератор кода 7SEG Led индикатора?[/uquote]
Что за код выдаёт данный генератор? Не понял о чём речь. :roll: Типа такого?
Изображение
Аватара пользователя
uldemir
Друг Кота
Сообщения: 7360
Зарегистрирован: Пт авг 28, 2009 21:34:30
Откуда: 845-й км.

Re: Генератор кода 7Seg

Сообщение uldemir »

А зачем он нужен? вы пишите программу? чем-то компилируете? Так вот компилятор сам уже может сделать всё что нужно. В далёком-далёком детстве написал однажды такой файлик:
Спойлер

Код: Выделить всё

// Таблица отображения символов семисегментным индикатором
// Если объявлена переменная TAILLESS, то меняется начертание цифр 6, 7, 9
// Если объявлена переменная INVERT, то "светятся" биты '0'
#ifdef  invertmask
#undef	invertmask
#endif

#ifdef	INVERT
#define	invertmask	~
#else
#define invertmask
#endif

#ifdef STANDART
#undef TAILLESS
#endif
        
#define let_1 invertmask(seg_b + seg_c)
#define let_2  invertmask(seg_a+seg_b+seg_d+seg_e+seg_g)
#define let_3 invertmask(seg_a+seg_b+seg_c+seg_d+seg_g)
#define let_4 invertmask(seg_b+seg_c+seg_f+seg_g)
#define let_5 invertmask(seg_a+seg_c+seg_d+seg_f+seg_g)

#ifndef	TAILLESS
#define let_6 invertmask(seg_c+seg_d+seg_e+seg_f+seg_g+seg_a)
#else
#define let_6 invertmask(seg_c+seg_d+seg_e+seg_f+seg_g)
#endif


#ifndef	TAILLESS
#define let_7 invertmask(seg_a+seg_b+seg_c+seg_f)
#else
#define let_7 invertmask(seg_a+seg_b+seg_c)
#endif

#define let_8 invertmask(seg_a+seg_b+seg_c+seg_d+seg_e+seg_f+seg_g)

#ifndef	TAILLESS
#define let_9 invertmask(seg_a+seg_b+seg_c+seg_f+seg_g+seg_d)
#else
#define let_9 invertmask(seg_a+seg_b+seg_c+seg_f+seg_g)
#endif

#define let_0 invertmask(seg_a+seg_b+seg_c+seg_d+seg_e+seg_f)
#define let_A	invertmask(seg_a+seg_b+seg_c+seg_e+seg_f+seg_g)
#define let_b	invertmask(seg_c+seg_d+seg_e+seg_f+seg_g)
#define let_cC	invertmask(seg_a+seg_d+seg_e+seg_f)
#define let_c	invertmask(seg_d+seg_e+seg_g)
#define let_d	invertmask(seg_b+seg_c+seg_d+seg_e+seg_g)
#define let_E	invertmask(seg_a+seg_d+seg_e+seg_f+seg_g)
#define let_F	invertmask(seg_a+seg_e+seg_f+seg_g)
#define let_cG	invertmask(seg_a+seg_c+seg_d+seg_e+seg_f)
#define let_h	invertmask(seg_c+seg_g+seg_e+seg_f)
#define let_cH	invertmask(seg_b+seg_c+seg_g+seg_e+seg_f)
#define let_i	invertmask(seg_c)
#define let_J	invertmask(seg_b+seg_c+seg_d)
#define let_L	invertmask(seg_d+seg_e+seg_f)
#define let_n	invertmask(seg_c+seg_e+seg_g)
#define let_o	invertmask(seg_c+seg_d+seg_e+seg_g)
#define let_cO	invertmask(seg_a+seg_b+seg_c+seg_d+seg_e+seg_f)
#define let_P	invertmask(seg_e+seg_f+seg_g+seg_a+seg_b)
#define let_q 	invertmask(seg_a+seg_b+seg_c+seg_f+seg_g)
#define let_r	invertmask(seg_e+seg_g)
#define let_cS	invertmask(seg_a+seg_c+seg_d+seg_f+seg_g)
#define let_t	invertmask(seg_d+seg_e+seg_f+seg_g)
#define let_u	invertmask(seg_c+seg_d+seg_e)
#define let_cU	invertmask(seg_b+seg_c+seg_d+seg_e+seg_f)
#define let_Y	invertmask(seg_b+seg_c+seg_d+seg_f+seg_g)
#define let__	invertmask(seg_d)
#define dash	invertmask(seg_g)
#define grad	invertmask(seg_a+seg_b+seg_f+seg_g)
#define let_iU	invertmask(seg_a+seg_b+seg_c+seg_e+seg_f)

#ifdef INVERT
#define let_	(seg_a+seg_b+seg_c+seg_d+seg_e+seg_f+seg_g)
#else
#define let_    0
#endif
И теперь в своей программе просто определяю соответствие битов порта:

Код: Выделить всё

// port b
#define seg_a  (1<<7)
#define seg_b  (1<<6)
#define seg_c  (1<<5)
#define seg_d  (1<<4)
#define seg_e  (1<<3)
#define seg_f  (1<<2)
#define seg_g  (1<<1)
и подключаю свой файлик, который сам расставит битики как надо. При этом сегменты могут быть назначены как угодно, как удобнее сделать разводку, например.
Реклама
Эиком - электронные компоненты и радиодетали
ass20
Держит паяльник хвостом
Сообщения: 930
Зарегистрирован: Пн июн 07, 2010 22:56:01
Откуда: SU

Re: Генератор кода 7Seg

Сообщение ass20 »

Реклама
Ответить

Вернуться в «Цифровая техника»