Operácie

Ovládač maticovej klávesnice: Rozdiel medzi revíziami

Z SensorWiki

Riadok 7: Riadok 7:
 
  [https://techfun.sk/produkt/tlacidlovy-matrix-4x4/ Maticová klávesnica 4x4] - treba napísať rutiny pre načítanie hodnoty z maticovej klávesnice, vrátane detekcie stlačenia dvoch kláves súčasne. Predvedenie funkcie si vymyslite.  
 
  [https://techfun.sk/produkt/tlacidlovy-matrix-4x4/ Maticová klávesnica 4x4] - treba napísať rutiny pre načítanie hodnoty z maticovej klávesnice, vrátane detekcie stlačenia dvoch kláves súčasne. Predvedenie funkcie si vymyslite.  
  
Pripojenie maticovej klávesnice 4x4 k arduinu uno, napísanie rutín pre načítanie hodnoty z maticovej klávesnice v prostredí avr-studio. Komunikácia s PC je cez uart protokol. Ak sa stlačia dve a viac tlačidiel naraz, tak napíše '''''pressed two or more keys''''' a čaká na ďalší vstup.
+
Pripojenie maticovej klávesnice 4x4 k arduinu uno, napísanie rutín pre načítanie hodnoty z maticovej klávesnice v prostredí avr-studio. Komunikácia s PC je cez uart protokol. Ak sa stlačia dve a viac tlačidiel naraz, tak výpis detekcie viac stlačených kláves a následne čaká na ďalší vstup.
  
 
[[Súbor:arduino_uno.jpg|400px|thumb|center|Vývojová doska ARDUINO-UNO.]]
 
[[Súbor:arduino_uno.jpg|400px|thumb|center|Vývojová doska ARDUINO-UNO.]]
Riadok 21: Riadok 21:
 
== Analýza  a opis riešenia ==
 
== Analýza  a opis riešenia ==
  
Zapojila som maticovú klávesnicu, tak, že riadky sú pripojené na PC0-PC3 a stĺpce na PB0-PB3. Program sníma stlačenie tlačidla. Ak zaznamená, že tlačidlo je stlačené, tak zapíše jeho súradnicu riadka a potom deteguje súradnicu stĺpca, ktorá sa tiež zapíše. Na každej súradnici je definovaný znak, ktorý sa vypíše, podľa stlačenia tlačidla a jeho daných súradníc. Ak je zosnímaných viacero riadkov alebo stĺpcov, t.j., ak je stlačených viac ako jedno tlačidlo, tak program vypíše hlášku '''''pressed two or more keys'''''. Komunikácia je zabezpečená cez UART protokol, na ktorý som využila knižnicu, ktorá nám bola poskytnutá počas semestra.
+
Zapojila som maticovú klávesnicu, tak, že riadky sú pripojené na PC0-PC3 a stĺpce na PB0-PB3. Program sníma stlačenie tlačidla. Ak zaznamená, že tlačidlo je stlačené, tak zapíše jeho súradnicu riadka a potom deteguje súradnicu stĺpca, ktorá sa tiež zapíše. Na každej súradnici je definovaný znak, ktorý sa vypíše, podľa stlačenia tlačidla a jeho daných súradníc. Ak je zosnímaných viacero riadkov alebo stĺpcov, t.j., ak je stlačená viac ako jedna klávesa, tak program vypíše hlášku '''''pressed two or more keys'''''. Komunikácia je zabezpečená cez UART protokol, na ktorý som využila knižnicu, ktorá nám bola poskytnutá počas semestra.
  
 
[[Súbor:matic_klaves.jpg|400px|thumb|center|Schéma maticovej klávesnice.]]
 
[[Súbor:matic_klaves.jpg|400px|thumb|center|Schéma maticovej klávesnice.]]

Verzia zo dňa a času 14:06, 6. jún 2023

Záverečný projekt predmetu MIPS / LS2023 - Hortenzia Wollentová


Zadanie

Maticová klávesnica 4x4 - treba napísať rutiny pre načítanie hodnoty z maticovej klávesnice, vrátane detekcie stlačenia dvoch kláves súčasne. Predvedenie funkcie si vymyslite. 

Pripojenie maticovej klávesnice 4x4 k arduinu uno, napísanie rutín pre načítanie hodnoty z maticovej klávesnice v prostredí avr-studio. Komunikácia s PC je cez uart protokol. Ak sa stlačia dve a viac tlačidiel naraz, tak výpis detekcie viac stlačených kláves a následne čaká na ďalší vstup.

Vývojová doska ARDUINO-UNO.


Literatúra:


Analýza a opis riešenia

Zapojila som maticovú klávesnicu, tak, že riadky sú pripojené na PC0-PC3 a stĺpce na PB0-PB3. Program sníma stlačenie tlačidla. Ak zaznamená, že tlačidlo je stlačené, tak zapíše jeho súradnicu riadka a potom deteguje súradnicu stĺpca, ktorá sa tiež zapíše. Na každej súradnici je definovaný znak, ktorý sa vypíše, podľa stlačenia tlačidla a jeho daných súradníc. Ak je zosnímaných viacero riadkov alebo stĺpcov, t.j., ak je stlačená viac ako jedna klávesa, tak program vypíše hlášku pressed two or more keys. Komunikácia je zabezpečená cez UART protokol, na ktorý som využila knižnicu, ktorá nám bola poskytnutá počas semestra.

Schéma maticovej klávesnice.

Nezabudnite doplniť schému zapojenia!

Schéma zapojenia LCD displeja.


Algoritmus a program

Algoritmus programu je....


#include <avr/io.h>

int main(void)
{
  unsigned int measuredValue;

  while (1)
  {
    /*  relax  */  
  }

  return(0);
}
#include <avr/io.h>

void adc_init(void);                                   // A/D converter initialization

unsigned int adc_read(char a_pin);

Pridajte sem aj zbalený kompletný projekt, napríklad takto (použite jednoznačné pomenovanie, nemôžeme mať na serveri 10x zdrojaky.zip:

Zdrojový kód: zdrojaky.zip


Overenie

Na používanie našej aplikácie stačia dve tlačítka a postup používania je opísaný v sekcii popis riešenia. Na konci uvádzame fotku záverečnej obrazovky pred resetom. Vypísaný je tu priemerný čas a najlepší čas.

Aplikácia.

Video:

Kľúčové slová 'Category', ktoré sú na konci stránky nemeňte.