diff --git a/articles/2012/avr-lcd-panel-lcdc.md b/articles/2012/avr-lcd-panel-lcdc.md new file mode 100644 index 0000000000000000000000000000000000000000..05ce4989398ba9b54c247d144af14a520b9995be --- /dev/null +++ b/articles/2012/avr-lcd-panel-lcdc.md @@ -0,0 +1,89 @@ ++++ + +title = "AVR - LCD panel - lcd.c" +perex_e = " + +KompatibilnĂ zapojenĂ: LCD panel s ATmega8 + +Ke staĹľenĂ: lcd.c == lcd.pdf == lcd.htm +. +. +" +tags = ["ÄŚlánek"] ++++ + + + +KompatibilnĂ zapojenĂ: LCD panel s ATmega8 + +Ke staĹľenĂ: lcd.c == lcd.pdf == lcd.htm +. +. + +* * * + +<title>Untitled</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta name="generator" content="SynEdit HTML exporter"> <style type="text/css">&amp;amp;amp;amp;lt;!-- body { color: #000000; background-color: #FFFFFF; } .cpp1-assembler { } .cpp1-brackets { } .cpp1-comment { color: #008000; font-style: italic; } .cpp1-float { color: #000080; } .cpp1-hexadecimal { color: #000080; } .cpp1-character { } .cpp1-identifier { } .cpp1-illegalchar { } .cpp1-number { color: #000080; } .cpp1-octal { color: #0000FF; } .cpp1-preprocessor { } .cpp1-reservedword { font-weight: bold; } .cpp1-space { color: #008080; } .cpp1-string { color: #800000; } .cpp1-symbol { } --&amp;amp;amp;amp;gt;</style> + +``` +/*--------------------------------------------------------------------------- + +soubor: lcd.c +verze: 1.0 +datum: 13.1.2012 +popis: + +Obsluzne rutiny pro displej 2x16 znaku s radicem HD44780 + +-Komunikace je ctyrbitova (pouzivaji se pouze piny displeje D4 - D7) +-Displej je v rezimu "pouze zapis" (signal "R/W" displeje je uzemen) +-Displej je pripojen k mikrokontroleru pouze signaly: RS, EN a D4 az D7. + +Tento soubor vynikl upravou souboru "mojelib.h" jehoz autora bohuzel neznam. + +---------------------------------------------------------------------------*/ + +#include <avr/pgmspace.h> // pgm_read_byte() + +#ifndef setb //setb = makro ze souboru "wait.c" +#include "wait.c" +#endif + +//Defaultni definice pinu, ke kterym je displej pripojen +#ifndef PORT_RS +#define PORT_RS PORTD +#define DDR_RS DDRD +#endif +#ifndef PORT_EN +#define PORT_EN PORTD +#define DDR_EN DDRD +#endif +#ifndef PORT_D4 +#define PORT_D4 PORTD +#define PORT_D5 PORTD +#define PORT_D6 PORTD +#define PORT_D7 PORTD +#define DDR_D4 DDRD +#define DDR_D5 DDRD +#define DDR_D6 DDRD +#define DDR_D7 DDRD +#endif +#ifndef RS +#define RS 2 +#endif +#ifndef EN +#define EN 3 +#endif +#ifndef D4 +#define D4 4 +#define D5 5 +#define D6 6 +#define D7 7 +#endif + +// Funkce pro displej: +void lcd_ini (void); //inicializace +void lcd_instr(unsigned char ins); //napis instrukci +void lcd_char (unsigned char dat); //napis znak +void lcd_num3 (unsigned int num,unsigned char znak); //napis cislo (3 cifry) +void lcd_num2 (unsigned char num,unsigned char znak);//napis cislo (2 cifry) +``` \ No newline at end of file