14-segmentový LED displej: Rozdiel medzi revíziami
Z SensorWiki
d |
|||
(9 medziľahlých úprav od rovnakého používateľa nie je zobrazených.) | |||
Riadok 1: | Riadok 1: | ||
Záverečný projekt predmetu MIPS / LS2024 - '''Lea Lenka Ondrejková''' | Záverečný projekt predmetu MIPS / LS2024 - '''Lea Lenka Ondrejková''' | ||
− | |||
== Zadanie == | == Zadanie == | ||
− | Pripojenie 14-segmentového LED displeja k vývojovej doske ARDUINO UNO R3, vytvorenie knižnice pre 14-segmentový dislej. | + | Pripojenie 14-segmentového LED displeja k vývojovej doske ARDUINO UNO R3, vytvorenie knižnice pre 14-segmentový dislej. Našim cielom je prepojiť 14-segmentovku a seriálovú linku UART. Keď stlačíme tlačidlo ľubovolného písmena alebo číslice na klávesnici, tak sa zobrazí na segmentovke. |
[[Obrázok:ARDUINO.png|400px|thumb|center|Vývojová doska ARDUINO-UNO-R3.]] | [[Obrázok:ARDUINO.png|400px|thumb|center|Vývojová doska ARDUINO-UNO-R3.]] | ||
Riadok 10: | Riadok 9: | ||
'''Literatúra:''' | '''Literatúra:''' | ||
* [http://ap.urpi.fei.stuba.sk/sensorwiki/index.php/Acrob_technical_description Dokumentácia k doske ARDUINO UNO R3] | * [http://ap.urpi.fei.stuba.sk/sensorwiki/index.php/Acrob_technical_description Dokumentácia k doske ARDUINO UNO R3] | ||
− | * [ | + | * [https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf Dokumentácia k ATMEGA328P] |
Riadok 17: | Riadok 16: | ||
== Analýza a opis riešenia == | == Analýza a opis riešenia == | ||
− | + | Po prvé sme si vytvorili knižnicu k 14-segmentovke, museli sme si zadefinovať všetky znaky abecedy a cíšlice ako funkciu zapnutých a vypnutých segmentov. Napríklad pri znaku A vysvietime segmenty: A,B,C,E,F,P,K a ostatné segmenty, ktoré nesvetia musíme vypnúť kvôli tomu že segmentovka pracuje na zápornej logike. | |
+ | |||
+ | Ďalej sme pracovali na programe, ktorý sa bude prepájať s terminálom pomocou AURT-u. Museli sme initializovať UART a našu segmentovku. V programe sme si uľahčili prácu vytvorením matíc, ktorím sme priradili naše vytvorené funkcie z knižnice. Potom sme už využívali len príkaz if na nájdenie znaku a vykovanie vysvetenia segmentov. | ||
+ | |||
− | [[Súbor: | + | [[Súbor:Segmentovka14.png|400px|thumb|center|Segmenty a ich zapojenie Kingbright PDA54.]] |
− | |||
− | [[Súbor: | + | '''Zapojenie''' |
+ | Segmentovka sa skladá z 18 PINOV, pričom 15 z nich napája segmenty. Piny 11,16 slúžia ako napájanie celej segmentovky. Môžeme napájať každú segmentovku zvlášť, buď cez pin 11 - prvá segmentovka, alebo cez pin 16 - druhá segmentovka. Ak napojíme piny 11 a 16 súčasne, segmentovky sa budú zrkadliť. Každý segment sme museli napojiť na samostatný pin na ARDUINO UNO R3, zadefinovať si tieto piny a potom s nimi pracovať programe. | ||
+ | |||
+ | [[Súbor:circuit.png|400px|thumb|center|Schéma zapojenia 14-Segmentovky.]] | ||
=== Algoritmus a program === | === Algoritmus a program === | ||
− | + | V programe sme si vytvorili matice, ktorim sme si priradili funkcie vysvetenia znaku. Takže pre písmena sme si vytvorili maticu s veľkosťou 26 znakov, ktorá obsahovala všetky funkcie vysvetenia písmen. | |
+ | |||
+ | |||
<tabs> | <tabs> | ||
− | <tab name=" | + | <tab name="Segmentovka.c"><source lang="c++" style="background: LightYellow;"> |
+ | |||
#include <avr/io.h> | #include <avr/io.h> | ||
+ | #include <util/delay.h> | ||
+ | #include "Seg_lib.h" | ||
+ | #include "uart.h" | ||
+ | #include <stdio.h> | ||
+ | |||
+ | FILE mystdout = FDEV_SETUP_STREAM(uart_putc, NULL, _FDEV_SETUP_WRITE); | ||
+ | |||
+ | #ifndef F_CPU | ||
+ | #define F_CPU 16000000UL | ||
+ | #endif | ||
− | int main( | + | int main() |
{ | { | ||
− | + | segment_display_init(); | |
+ | uart_init(); // Inicializácia UARTU | ||
+ | stdout = &mystdout; // Nasmerovanie stdout | ||
+ | |||
+ | char ReceivedChar; | ||
− | + | printf("Starting... You can now type your letter & numbers\r"); // Testovanie komunikácie | |
− | |||
− | |||
− | |||
− | + | // matica s funkciami písmen | |
+ | void (*abeceda[26])() = { | ||
+ | seg_A, seg_B, seg_C, seg_D, seg_E, seg_F, seg_G, seg_H, seg_I, seg_J, seg_K, | ||
+ | seg_L, seg_M, seg_N, seg_O, seg_P, seg_Q, seg_R, seg_S, seg_T, seg_U, seg_V, | ||
+ | seg_W, seg_X, seg_Y, seg_Z, | ||
+ | }; | ||
+ | // matica s funkciami čísel | ||
+ | void (*cislice[10])() = { | ||
+ | seg_0, seg_1, seg_2, seg_3, seg_4, seg_5, seg_6, seg_7, seg_8, seg_9, | ||
+ | }; | ||
+ | |||
+ | while(1) | ||
+ | { | ||
+ | ReceivedChar = uart_getc( ); | ||
+ | if (ReceivedChar >= 'A' && ReceivedChar <= 'Z') | ||
+ | { | ||
+ | uint8_t index = ReceivedChar - 'A'; //definícia indexu v matici | ||
+ | abeceda[index](); | ||
+ | } | ||
+ | if (ReceivedChar >= 'a' && ReceivedChar <= 'z') | ||
+ | { | ||
+ | uint8_t index = ReceivedChar - 'a'; //definícia indexu v matici | ||
+ | abeceda[index](); | ||
+ | } | ||
+ | if (ReceivedChar >= '0' && ReceivedChar <= '9') | ||
+ | { | ||
+ | uint8_t index = ReceivedChar - '0'; //definícia indexu v matici | ||
+ | cislice[index](); | ||
+ | } | ||
+ | } | ||
+ | return 0; | ||
} | } | ||
</source></tab> | </source></tab> | ||
− | <tab name=" | + | <tab name="seg_lib.c"><source lang="c++" style="background: LightYellow;"> |
+ | //SEG.LIB.C KNIZNICA PRE 14 SEGMENTOVKU KINGBRIGHT | ||
+ | //ONDREJKOVA LEA LENKA | ||
+ | |||
#include <avr/io.h> | #include <avr/io.h> | ||
+ | #include "Seg_lib.h" | ||
+ | |||
+ | #define SEG_OFF(reg, bit) ((reg) |= (1 << (bit))) //JEDNA | ||
+ | #define SEG_ON(reg, bit) ((reg) &= ~(1 << (bit))) //NULA | ||
+ | |||
+ | #define SEG_1_E_PIN PD1 | ||
+ | #define SEG_2_N_PIN PD2 | ||
+ | #define SEG_4_M_PIN PD4 | ||
+ | #define SEG_5_L_PIN PD5 | ||
+ | #define SEG_6_K_PIN PD6 | ||
+ | #define SEG_7_D_PIN PD7 | ||
+ | #define SEG_9_C_PIN PB1 | ||
+ | #define SEG_10_B_PIN PB2 | ||
+ | #define SEG_12_A_PIN PB4 | ||
+ | #define SEG_13_P_PIN PB5 | ||
+ | #define SEG_14_J_PIN PC0 | ||
+ | #define SEG_15_H_PIN PC1 | ||
+ | #define SEG_17_G_PIN PC2 | ||
+ | #define SEG_18_F_PIN PC3 | ||
+ | |||
+ | #define SEG_1_E_PORT PORTD | ||
+ | #define SEG_2_N_PORT PORTD | ||
+ | #define SEG_4_M_PORT PORTD | ||
+ | #define SEG_5_L_PORT PORTD | ||
+ | #define SEG_6_K_PORT PORTD | ||
+ | #define SEG_7_D_PORT PORTD | ||
+ | #define SEG_9_C_PORT PORTB | ||
+ | #define SEG_10_B_PORT PORTB | ||
+ | #define SEG_12_A_PORT PORTB | ||
+ | #define SEG_13_P_PORT PORTB | ||
+ | #define SEG_14_J_PORT PORTC | ||
+ | #define SEG_15_H_PORT PORTC | ||
+ | #define SEG_17_G_PORT PORTC | ||
+ | #define SEG_18_F_PORT PORTC | ||
+ | |||
+ | void segment_display_init() | ||
+ | { | ||
+ | DDRD |= (1 << SEG_1_E_PIN) | (1 << SEG_2_N_PIN) | (1 << SEG_4_M_PIN) | (1 << SEG_5_L_PIN) | (1 << SEG_6_K_PIN) | (1 << SEG_7_D_PIN); | ||
+ | DDRB |= (1 << SEG_9_C_PIN) | (1 << SEG_10_B_PIN) | (1 << SEG_12_A_PIN) | (1 << SEG_13_P_PIN); | ||
+ | DDRC |= (1 << SEG_14_J_PIN) | (1 << SEG_15_H_PIN) | (1 << SEG_17_G_PIN) | (1 << SEG_18_F_PIN); | ||
+ | } | ||
+ | |||
+ | void segment_display_on() | ||
+ | { | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E | ||
+ | SEG_ON(SEG_2_N_PORT, SEG_2_N_PIN); //N | ||
+ | SEG_ON(SEG_4_M_PORT, SEG_4_M_PIN); //M | ||
+ | SEG_ON(SEG_5_L_PORT, SEG_5_L_PIN); //L | ||
+ | SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); //K | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); //D | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); //C | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); //B | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A | ||
+ | SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); //P | ||
+ | SEG_ON(SEG_14_J_PORT, SEG_14_J_PIN); //J | ||
+ | SEG_ON(SEG_15_H_PORT, SEG_15_H_PIN); //H | ||
+ | SEG_ON(SEG_17_G_PORT, SEG_17_G_PIN); //G | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F | ||
+ | } | ||
+ | |||
+ | void segment_display_off() | ||
+ | { | ||
+ | SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN); //E | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); //K | ||
+ | SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); //D | ||
+ | SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); //C | ||
+ | SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); //B | ||
+ | SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN); //A | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); //P | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G | ||
+ | SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN); //F | ||
+ | } | ||
+ | |||
+ | void seg_A() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); //B | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); //C | ||
+ | SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); //P | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J | ||
+ | SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); //K | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N | ||
+ | SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); //D | ||
+ | } | ||
+ | void seg_B() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A | ||
+ | SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); //B | ||
+ | SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); //C | ||
+ | SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); //P | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H | ||
+ | SEG_ON(SEG_14_J_PORT, SEG_14_J_PIN); //J | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); //K | ||
+ | SEG_ON(SEG_5_L_PORT, SEG_5_L_PIN); //L | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); //D | ||
+ | } | ||
+ | void seg_C() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A | ||
+ | SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); //B | ||
+ | SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); //C | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); //P | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); //K | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); //D | ||
+ | } | ||
+ | |||
+ | void seg_D() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); //B | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); //C | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); //P | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); //K | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); //D | ||
+ | } | ||
+ | |||
+ | void seg_E() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A | ||
+ | SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); //B | ||
+ | SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); //C | ||
+ | SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); //P | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J | ||
+ | SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); //K | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); //D | ||
+ | } | ||
+ | |||
+ | void seg_F() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A | ||
+ | SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); //B | ||
+ | SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); //C | ||
+ | SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); //P | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J | ||
+ | SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); //K | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N | ||
+ | SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); //D | ||
+ | } | ||
+ | |||
+ | void seg_G() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A | ||
+ | SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); //B | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); //C | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); //P | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J | ||
+ | SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); //K | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); //D | ||
+ | } | ||
+ | void seg_H() | ||
+ | { | ||
+ | SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN); //A | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); //B | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); //C | ||
+ | SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); //P | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J | ||
+ | SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); //K | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N | ||
+ | SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); //D | ||
+ | } | ||
+ | |||
+ | void seg_I() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A | ||
+ | SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); //B | ||
+ | SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); //C | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); //P | ||
+ | SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN); //E | ||
+ | SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN); //F | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G | ||
+ | SEG_ON(SEG_15_H_PORT, SEG_15_H_PIN); //H | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); //K | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L | ||
+ | SEG_ON(SEG_4_M_PORT, SEG_4_M_PIN); //M | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); //D | ||
+ | } | ||
+ | void seg_J() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); //B | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); //C | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); //P | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E | ||
+ | SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN); //F | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); //K | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); //D | ||
+ | } | ||
+ | |||
+ | void seg_K() | ||
+ | { | ||
+ | SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN); //A | ||
+ | SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); //B | ||
+ | SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); //C | ||
+ | SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); //P | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H | ||
+ | SEG_ON(SEG_14_J_PORT, SEG_14_J_PIN); //J | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); //K | ||
+ | SEG_ON(SEG_5_L_PORT, SEG_5_L_PIN); //L | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N | ||
+ | SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); //D | ||
+ | } | ||
+ | void seg_L() | ||
+ | { | ||
+ | SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | |||
+ | void seg_M() | ||
+ | { | ||
+ | SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_ON(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_ON(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | void seg_N() | ||
+ | { | ||
+ | SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_ON(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_ON(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | |||
+ | void seg_O() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | |||
+ | void seg_P() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | |||
+ | void seg_Q() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_ON(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | |||
+ | void seg_R() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_ON(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
− | void | + | void seg_S() |
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
− | + | void seg_T() | |
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_ON(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_ON(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | void seg_U() | ||
+ | { | ||
+ | SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | void seg_V() | ||
+ | { | ||
+ | SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_ON(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_ON(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | void seg_W() | ||
+ | { | ||
+ | SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_ON(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_ON(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_ON(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | void seg_X() | ||
+ | { | ||
+ | SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_ON(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_ON(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_ON(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_ON(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | void seg_Y() | ||
+ | { | ||
+ | SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_ON(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_ON(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_ON(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | void seg_Z() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_ON(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_ON(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | //CISLICE | ||
+ | void seg_1() | ||
+ | { | ||
+ | SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | void seg_2() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | void seg_3() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | void seg_4() | ||
+ | { | ||
+ | SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | void seg_5() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | void seg_6() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | void seg_7() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | void seg_8() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | void seg_9() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
+ | void seg_0() | ||
+ | { | ||
+ | SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); | ||
+ | SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); | ||
+ | SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); | ||
+ | SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); | ||
+ | SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); | ||
+ | SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); | ||
+ | SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); | ||
+ | SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); | ||
+ | SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); | ||
+ | SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); | ||
+ | SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); | ||
+ | SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); | ||
+ | SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); | ||
+ | SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); | ||
+ | } | ||
</source></tab> | </source></tab> | ||
− | </ | + | <tab name="seg_lib.h"><source lang="c++" style="background: LightYellow;"> |
+ | //SEG.LIB.H KNIZNICA PRE 14 SEGMENTOVKU KINGBRIGHT | ||
+ | //ONDREJKOVA LEA LENKA | ||
+ | |||
+ | #ifndef SEGLIB_H_ | ||
+ | #define SEGLIB_H_ | ||
+ | |||
+ | void segment_display_init(); | ||
+ | void segment_display_on(); | ||
+ | void segment_display_off(); | ||
− | + | void seg_A(); | |
+ | void seg_B(); | ||
+ | void seg_C(); | ||
+ | void seg_D(); | ||
+ | void seg_E(); | ||
+ | void seg_F(); | ||
+ | void seg_G(); | ||
+ | void seg_H(); | ||
+ | void seg_I(); | ||
+ | void seg_J(); | ||
+ | void seg_K(); | ||
+ | void seg_L(); | ||
+ | void seg_M(); | ||
+ | void seg_N(); | ||
+ | void seg_O(); | ||
+ | void seg_P(); | ||
+ | void seg_Q(); | ||
+ | void seg_R(); | ||
+ | void seg_S(); | ||
+ | void seg_T(); | ||
+ | void seg_U(); | ||
+ | void seg_V(); | ||
+ | void seg_W(); | ||
+ | void seg_X(); | ||
+ | void seg_Y(); | ||
+ | void seg_Z(); | ||
− | + | void seg_0(); | |
+ | void seg_1(); | ||
+ | void seg_2(); | ||
+ | void seg_3(); | ||
+ | void seg_4(); | ||
+ | void seg_5(); | ||
+ | void seg_6(); | ||
+ | void seg_7(); | ||
+ | void seg_8(); | ||
+ | void seg_9(); | ||
+ | #endif /* SEGLIB_H_ */ | ||
+ | </source></tab> | ||
+ | </tabs> | ||
− | + | Zdrojový kód: [[Médiá:projektLeaLenkaOndrejkova.zip|zdrojaky.zip]] | |
− | + | === Overenie ===- | |
− | |||
− | [[Súbor: | + | [[Súbor:OndrejkovaSegmentovka.jpeg|400px|thumb|center|Aplikácia.]] |
'''Video:''' | '''Video:''' | ||
− | <center><youtube> | + | <center><youtube>UTeH1ky8v9M</youtube></center> |
[[Category:AVR]] [[Category:MIPS]] | [[Category:AVR]] [[Category:MIPS]] |
Verzia zo dňa a času 18:42, 17. apríl 2024
Záverečný projekt predmetu MIPS / LS2024 - Lea Lenka Ondrejková
Zadanie
Pripojenie 14-segmentového LED displeja k vývojovej doske ARDUINO UNO R3, vytvorenie knižnice pre 14-segmentový dislej. Našim cielom je prepojiť 14-segmentovku a seriálovú linku UART. Keď stlačíme tlačidlo ľubovolného písmena alebo číslice na klávesnici, tak sa zobrazí na segmentovke.
Literatúra:
Analýza a opis riešenia
Po prvé sme si vytvorili knižnicu k 14-segmentovke, museli sme si zadefinovať všetky znaky abecedy a cíšlice ako funkciu zapnutých a vypnutých segmentov. Napríklad pri znaku A vysvietime segmenty: A,B,C,E,F,P,K a ostatné segmenty, ktoré nesvetia musíme vypnúť kvôli tomu že segmentovka pracuje na zápornej logike.
Ďalej sme pracovali na programe, ktorý sa bude prepájať s terminálom pomocou AURT-u. Museli sme initializovať UART a našu segmentovku. V programe sme si uľahčili prácu vytvorením matíc, ktorím sme priradili naše vytvorené funkcie z knižnice. Potom sme už využívali len príkaz if na nájdenie znaku a vykovanie vysvetenia segmentov.
Zapojenie
Segmentovka sa skladá z 18 PINOV, pričom 15 z nich napája segmenty. Piny 11,16 slúžia ako napájanie celej segmentovky. Môžeme napájať každú segmentovku zvlášť, buď cez pin 11 - prvá segmentovka, alebo cez pin 16 - druhá segmentovka. Ak napojíme piny 11 a 16 súčasne, segmentovky sa budú zrkadliť. Každý segment sme museli napojiť na samostatný pin na ARDUINO UNO R3, zadefinovať si tieto piny a potom s nimi pracovať programe.
Algoritmus a program
V programe sme si vytvorili matice, ktorim sme si priradili funkcie vysvetenia znaku. Takže pre písmena sme si vytvorili maticu s veľkosťou 26 znakov, ktorá obsahovala všetky funkcie vysvetenia písmen.
#include <avr/io.h>
#include <util/delay.h>
#include "Seg_lib.h"
#include "uart.h"
#include <stdio.h>
FILE mystdout = FDEV_SETUP_STREAM(uart_putc, NULL, _FDEV_SETUP_WRITE);
#ifndef F_CPU
#define F_CPU 16000000UL
#endif
int main()
{
segment_display_init();
uart_init(); // Inicializácia UARTU
stdout = &mystdout; // Nasmerovanie stdout
char ReceivedChar;
printf("Starting... You can now type your letter & numbers\r"); // Testovanie komunikácie
// matica s funkciami písmen
void (*abeceda[26])() = {
seg_A, seg_B, seg_C, seg_D, seg_E, seg_F, seg_G, seg_H, seg_I, seg_J, seg_K,
seg_L, seg_M, seg_N, seg_O, seg_P, seg_Q, seg_R, seg_S, seg_T, seg_U, seg_V,
seg_W, seg_X, seg_Y, seg_Z,
};
// matica s funkciami čísel
void (*cislice[10])() = {
seg_0, seg_1, seg_2, seg_3, seg_4, seg_5, seg_6, seg_7, seg_8, seg_9,
};
while(1)
{
ReceivedChar = uart_getc( );
if (ReceivedChar >= 'A' && ReceivedChar <= 'Z')
{
uint8_t index = ReceivedChar - 'A'; //definícia indexu v matici
abeceda[index]();
}
if (ReceivedChar >= 'a' && ReceivedChar <= 'z')
{
uint8_t index = ReceivedChar - 'a'; //definícia indexu v matici
abeceda[index]();
}
if (ReceivedChar >= '0' && ReceivedChar <= '9')
{
uint8_t index = ReceivedChar - '0'; //definícia indexu v matici
cislice[index]();
}
}
return 0;
}
//SEG.LIB.C KNIZNICA PRE 14 SEGMENTOVKU KINGBRIGHT
//ONDREJKOVA LEA LENKA
#include <avr/io.h>
#include "Seg_lib.h"
#define SEG_OFF(reg, bit) ((reg) |= (1 << (bit))) //JEDNA
#define SEG_ON(reg, bit) ((reg) &= ~(1 << (bit))) //NULA
#define SEG_1_E_PIN PD1
#define SEG_2_N_PIN PD2
#define SEG_4_M_PIN PD4
#define SEG_5_L_PIN PD5
#define SEG_6_K_PIN PD6
#define SEG_7_D_PIN PD7
#define SEG_9_C_PIN PB1
#define SEG_10_B_PIN PB2
#define SEG_12_A_PIN PB4
#define SEG_13_P_PIN PB5
#define SEG_14_J_PIN PC0
#define SEG_15_H_PIN PC1
#define SEG_17_G_PIN PC2
#define SEG_18_F_PIN PC3
#define SEG_1_E_PORT PORTD
#define SEG_2_N_PORT PORTD
#define SEG_4_M_PORT PORTD
#define SEG_5_L_PORT PORTD
#define SEG_6_K_PORT PORTD
#define SEG_7_D_PORT PORTD
#define SEG_9_C_PORT PORTB
#define SEG_10_B_PORT PORTB
#define SEG_12_A_PORT PORTB
#define SEG_13_P_PORT PORTB
#define SEG_14_J_PORT PORTC
#define SEG_15_H_PORT PORTC
#define SEG_17_G_PORT PORTC
#define SEG_18_F_PORT PORTC
void segment_display_init()
{
DDRD |= (1 << SEG_1_E_PIN) | (1 << SEG_2_N_PIN) | (1 << SEG_4_M_PIN) | (1 << SEG_5_L_PIN) | (1 << SEG_6_K_PIN) | (1 << SEG_7_D_PIN);
DDRB |= (1 << SEG_9_C_PIN) | (1 << SEG_10_B_PIN) | (1 << SEG_12_A_PIN) | (1 << SEG_13_P_PIN);
DDRC |= (1 << SEG_14_J_PIN) | (1 << SEG_15_H_PIN) | (1 << SEG_17_G_PIN) | (1 << SEG_18_F_PIN);
}
void segment_display_on()
{
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E
SEG_ON(SEG_2_N_PORT, SEG_2_N_PIN); //N
SEG_ON(SEG_4_M_PORT, SEG_4_M_PIN); //M
SEG_ON(SEG_5_L_PORT, SEG_5_L_PIN); //L
SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); //K
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); //D
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); //C
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); //B
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A
SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); //P
SEG_ON(SEG_14_J_PORT, SEG_14_J_PIN); //J
SEG_ON(SEG_15_H_PORT, SEG_15_H_PIN); //H
SEG_ON(SEG_17_G_PORT, SEG_17_G_PIN); //G
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F
}
void segment_display_off()
{
SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN); //E
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); //K
SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); //D
SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); //C
SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); //B
SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN); //A
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); //P
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G
SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN); //F
}
void seg_A()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); //B
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); //C
SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); //P
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J
SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); //K
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N
SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); //D
}
void seg_B()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A
SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); //B
SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); //C
SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); //P
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H
SEG_ON(SEG_14_J_PORT, SEG_14_J_PIN); //J
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); //K
SEG_ON(SEG_5_L_PORT, SEG_5_L_PIN); //L
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); //D
}
void seg_C()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A
SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); //B
SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); //C
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); //P
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); //K
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); //D
}
void seg_D()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); //B
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); //C
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); //P
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); //K
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); //D
}
void seg_E()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A
SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); //B
SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); //C
SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); //P
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J
SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); //K
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); //D
}
void seg_F()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A
SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); //B
SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); //C
SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); //P
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J
SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); //K
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N
SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); //D
}
void seg_G()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A
SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); //B
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); //C
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); //P
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J
SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); //K
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); //D
}
void seg_H()
{
SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN); //A
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); //B
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); //C
SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); //P
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J
SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN); //K
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N
SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); //D
}
void seg_I()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A
SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); //B
SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); //C
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); //P
SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN); //E
SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN); //F
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G
SEG_ON(SEG_15_H_PORT, SEG_15_H_PIN); //H
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); //K
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L
SEG_ON(SEG_4_M_PORT, SEG_4_M_PIN); //M
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); //D
}
void seg_J()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN); //A
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN); //B
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN); //C
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN); //P
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E
SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN); //F
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN); //J
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); //K
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN); //L
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN); //D
}
void seg_K()
{
SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN); //A
SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN); //B
SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN); //C
SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN); //P
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN); //E
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN); //F
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN); //G
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN); //H
SEG_ON(SEG_14_J_PORT, SEG_14_J_PIN); //J
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN); //K
SEG_ON(SEG_5_L_PORT, SEG_5_L_PIN); //L
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN); //M
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN); //N
SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN); //D
}
void seg_L()
{
SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_M()
{
SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_ON(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_ON(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_N()
{
SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_ON(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_ON(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_O()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_P()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_Q()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_ON(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_R()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_ON(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_S()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_T()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_ON(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_ON(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_U()
{
SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_V()
{
SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_ON(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_ON(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_W()
{
SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_ON(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_ON(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_ON(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_X()
{
SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_ON(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_ON(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_ON(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_ON(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_Y()
{
SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_ON(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_ON(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_ON(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_Z()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_ON(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_ON(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN);
}
//CISLICE
void seg_1()
{
SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_2()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_OFF(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_3()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_4()
{
SEG_OFF(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_5()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_6()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_OFF(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_7()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_OFF(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_OFF(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_8()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_9()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_ON(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_OFF(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_ON(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN);
}
void seg_0()
{
SEG_ON(SEG_12_A_PORT, SEG_12_A_PIN);
SEG_ON(SEG_10_B_PORT, SEG_10_B_PIN);
SEG_ON(SEG_9_C_PORT, SEG_9_C_PIN);
SEG_OFF(SEG_13_P_PORT, SEG_13_P_PIN);
SEG_ON(SEG_1_E_PORT, SEG_1_E_PIN);
SEG_ON(SEG_18_F_PORT, SEG_18_F_PIN);
SEG_OFF(SEG_17_G_PORT, SEG_17_G_PIN);
SEG_OFF(SEG_15_H_PORT, SEG_15_H_PIN);
SEG_OFF(SEG_14_J_PORT, SEG_14_J_PIN);
SEG_OFF(SEG_6_K_PORT, SEG_6_K_PIN);
SEG_OFF(SEG_5_L_PORT, SEG_5_L_PIN);
SEG_OFF(SEG_4_M_PORT, SEG_4_M_PIN);
SEG_OFF(SEG_2_N_PORT, SEG_2_N_PIN);
SEG_ON(SEG_7_D_PORT, SEG_7_D_PIN);
}
//SEG.LIB.H KNIZNICA PRE 14 SEGMENTOVKU KINGBRIGHT
//ONDREJKOVA LEA LENKA
#ifndef SEGLIB_H_
#define SEGLIB_H_
void segment_display_init();
void segment_display_on();
void segment_display_off();
void seg_A();
void seg_B();
void seg_C();
void seg_D();
void seg_E();
void seg_F();
void seg_G();
void seg_H();
void seg_I();
void seg_J();
void seg_K();
void seg_L();
void seg_M();
void seg_N();
void seg_O();
void seg_P();
void seg_Q();
void seg_R();
void seg_S();
void seg_T();
void seg_U();
void seg_V();
void seg_W();
void seg_X();
void seg_Y();
void seg_Z();
void seg_0();
void seg_1();
void seg_2();
void seg_3();
void seg_4();
void seg_5();
void seg_6();
void seg_7();
void seg_8();
void seg_9();
#endif /* SEGLIB_H_ */
Zdrojový kód: zdrojaky.zip
=== Overenie ===-
Video: