Седем сегмент програмен дисплей

Добър ден скъпи приятели!
Добре дошли в сайта "Светът на микроконтролери"

Седем-сегментен светодиоден: програмиране работа

Превод двоичен знак след десетичната до седем сегментен код дисплей
Програмиране един цифров дисплей седем сегмент

В първата част на светодиодите на седем сегмента, описание на индикатора и как да го свържете към микроконтролера. През втората и третата част, ние последователно преминава всички етапи на организацията на микроконтролера с индикатора и създаването на програмата, което ще доведе до реална работна дизайн.

Седем сегмент програмен дисплей

Превод двоичен знак след десетичната до седем сегментен код дисплей

Да вземем друг поглед към електрическата схема на седем сегментен светодиоден да микроконтролер:

Седем сегмент програмен дисплей

В тази схема, заключенията на порт PB0 ... ..PB7 свързани към клемите на индикатор в определена последователност. PB0 заключение съответства на сегмент "А" и допълнително съответно сериен изход номер на порт и азбука индикатор щифт, при което след десетичната точка «DP» PB7 е свързан с терминал пристанището. Сега, след което ще разгледаме схеми на свързване за индикатори с общ катод, а аз ще вмъкнете добавка за показване общ анод, ако е необходимо.

За да се подчертаят определен брой на дисплея, е необходимо да се съответните констатации на портовете за микроконтролера да създаде логическа единица

Седем сегмент програмен дисплей

В горната фигура, черните числа от 0 до 7 - Порт щифтове, зелени букви - Заключения LED, червени нули - нива на логиката на изхода на порта (в конкретния случай ниво логика "0"). За да се, например, да се подчертае на дисплея числото "4" и запали десетична точка, трябва да се прилага логика 1 до индикаторни терминали В, С, F, G и DP, който съответства на логическа единица на порта за снабдяване с щифтове 1,2,5 6 и 7:

Седем сегмент програмен дисплей

Ето защо, първото нещо, което трябва да направите, е да се определи годността на всяка десетична цифра двоично число, което е необходимо, за да се получи на изхода на портовете за микроконтролера, за да възпламени съответните индикатори сегменти.
За "квартет" Ние вече са идентифицирани следната последователност = 1110 0110, което съответства на 66 часа шестнадесетичен номер на, се определят за други номера:

Седем сегмент програмен дисплей

Операцията, която сме направили, се нарича двоично десетични превод на седем сегментен код дисплей.

Тази таблица е даден за показателите за седем-сегмента с общ катод (LED сегмент свети логическо ниво "1"). За показатели с общ анод (индикатор сегмент запалва логическо ниво "0") двоични кодове трябва да инвертира (промяна на 0 до 1 и обратно), и повторно изчисляване на съответните стойности в шестнадесетична.

Програмиране един цифров дисплей седем сегмент

Използването на едноцифрено показател в строителството може да се наложи в различни случаи. Например, ние събираме заключването на код и има нужда да мига съответния брой на бутона натиснат, или в броя на алармата да мига задействаната сензора. Така, че в обхвата на единичната достойни показатели.
Организиране на оттеглянето на номера на индикатор за една-малко, ние ще издаде подпрограма ". Показва информация за едноцифрени седем сегментен LED дисплей" така че след това тази рутина с минимални промени могат да бъдат използвани във всяка програма.

Ето как, например, Алгоритъм Builder (други примери, също за тази програма), обявени имената на променливите в паметта на програмата (RAM, SRAM):

инициализация рутинни Индикаторът за (подпрограма се нарича от основната програма преди да се обадите на подпрограмата на изходна информация за дисплея):

Седем сегмент програмен дисплей

А сега нека да разгледаме основната част на програмата, и да го разшифровате:

Седем сегмент програмен дисплей

Основната програма се записва да променлива Данни текущия брой на определен контакт (например - фигура 6) и за да го приведе към светлината, за да се обадя на подпрограма Indikator_1.

Надявам се, че материалът е представен е на разположение, ако нещо не е ясно, питам.

(15 гласа рейтинг: 4.93 от 5)