<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl-pl">
<link rel="self" type="application/atom+xml" href="https://forum.atnel.pl/feed.php?f=18&amp;t=20241&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2018-02-17T10:53:47+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=18&amp;t=20241&amp;mode</id>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2018-02-17T10:53:47+01:00</updated>
<published>2018-02-17T10:53:47+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204072#p204072</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204072#p204072"/>
<title type="html"><![CDATA[Re: Wyświetlacz LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204072#p204072"><![CDATA[
<div class="quotetitle">TomasQ132435 napisał(a):</div><div class="quotecontent"><br />Schemat podlączenia<br /></div><br />To nie jest schemat - to jest kod programu. Więc jak? jesteś w stanie pokazać schemat jak ty to podłączyłeś ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 17 lut 2018, o 10:53</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[RYSZARD M]]></name></author>
<updated>2018-02-17T09:56:46+01:00</updated>
<published>2018-02-17T09:56:46+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204070#p204070</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204070#p204070"/>
<title type="html"><![CDATA[Re: Wyświetlacz LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204070#p204070"><![CDATA[
podłącz RW z procesora do LCD oraz w pliku llcd44780.h aktywuj to połączenie #define USE_RW 0 na 1<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3171">RYSZARD M</a> — 17 lut 2018, o 09:56</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[TomasQ132435]]></name></author>
<updated>2018-02-17T08:49:08+01:00</updated>
<published>2018-02-17T08:49:08+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204066#p204066</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204066#p204066"/>
<title type="html"><![CDATA[Re: Wyświetlacz LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204066#p204066"><![CDATA[
Po podlączeniu na wyświetlaczu pokazują mi się zera i jakieś symbole ale nie napis czy jest to możliwe przez złe podłączenie RW?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=18489">TomasQ132435</a> — 17 lut 2018, o 08:49</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[sredni]]></name></author>
<updated>2018-02-17T08:42:35+01:00</updated>
<published>2018-02-17T08:42:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204062#p204062</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204062#p204062"/>
<title type="html"><![CDATA[Re: Wyświetlacz LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204062#p204062"><![CDATA[
Sprawdź dokładnie połączenia <br /> Zapewniam Cię, że ten przykład działa na 100%<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3346">sredni</a> — 17 lut 2018, o 08:42</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Marhef]]></name></author>
<updated>2018-02-17T08:22:56+01:00</updated>
<published>2018-02-17T08:22:56+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204060#p204060</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204060#p204060"/>
<title type="html"><![CDATA[Re: Wyświetlacz LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204060#p204060"><![CDATA[
Panie, nie tak wstawia się kody źródłowe. Weź to popraw <!-- l --><a class="postlink-local" href="http://forum.atnel.pl/topic7402.html" >topic7402.html</a><!-- l --><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=12752">Marhef</a> — 17 lut 2018, o 08:22</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[TomasQ132435]]></name></author>
<updated>2018-02-17T08:41:52+01:00</updated>
<published>2018-02-17T08:19:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204058#p204058</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204058#p204058"/>
<title type="html"><![CDATA[Re: Wyświetlacz LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204058#p204058"><![CDATA[
Schemat podlączenia <br /><a href="https://obrazkiforum.atnel.pl/18489/831e190dfbc98aef4ab1ad36f8baa9cd.png"  class="postlink"><img src="https://obrazkiforum.atnel.pl/thumb/18489/831e190dfbc98aef4ab1ad36f8baa9cd.png" alt="Obrazek" /></a><br />Tutaj znajduje się main.c<br />[syntax=c]/*<br />#include &lt;avr/io.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br />#include &lt;avr/eeprom.h&gt;<br />#include &lt;util/delay.h&gt;<br /><br />#include &quot;LCD/lcd44780.h&quot;<br /><br />// poniższą linijkę czasami trzeba wpisać w eclipse przed definicjami<br />// zmiennych w pamięci EEPROM, żeby nie podkreślał składni jako błędnej<br />#define EEMEM __attribute__((section(&quot;.eeprom&quot;)))<br /><br />const char PROGMEM tab1&#91;&#93; = {&quot;FLASH&quot;};<br />char EEMEM tab2&#91;&#93; = {&quot;EEPROM&quot;};<br /><br />uint8_t znak_L&#91;&#93; = {16,16,18,20,24,16,31,0};// wzór znaku litery Ł w pamięci RAM<br />uint8_t znak_o&#91;&#93; EEMEM = {4,32,14,17,17,17,14,0};// wzór znaku litery ó w pamięci EEPROM<br />const uint8_t znak_buzka&#91;&#93; PROGMEM = {14,17,27,17,17,21,17,14};// wzór znaku buźki w pamięci FLASH<br />const uint8_t znak_termo&#91;&#93; PROGMEM = {4,10,10,10,17,31,31,14};// wzór znaku termometru w pamięci FLASH<br /><br />volatile uint8_t pwm1, pwm2, pwm3;<br /><br />int main(void)<br />{<br />DDRA |= (1&lt;&lt;PA7);// ustawiamy kierunek linii podświetlenia LCD jako WYJŚCIE<br />PORTA |= (1&lt;&lt;PA7);// załączamy podświetlenie LCD - stan wysoki<br /><br />lcd_init();<br /><br />lcd_str_P(tab1);// napis z pamięci FLASH<br />lcd_locate(0,10);<br />lcd_str_P( PSTR(&quot;Linia1&quot;) );// napis z pamięci FLASH<br />lcd_locate(1,0);<br />lcd_str_E(tab2);// napis z pamięci EEPROM<br />lcd_locate(1,10);<br />lcd_str(&quot;Linia2&quot;);// napis z pamięci RAM<br /><br />// załadowanie znaków do pamięci CGRAM<br />lcd_defchar(0x80, znak_L);<br />lcd_defchar_E(0x81, znak_o);<br />lcd_defchar_P(0x82, znak_buzka);<br />lcd_defchar_P(0x83, znak_termo);<br /><br /><br />// wyświetlenie własnych znaków na LCD<br />lcd_locate(0,7);<br />lcd_str(&quot;\x80\x81&quot;);<br />lcd_locate(1,8);<br />lcd_str(&quot;\x82&quot;);<br />lcd_locate(1,7);<br />lcd_str(&quot;\x83&quot;);<br />_delay_ms(1500);<br /><br />uint8_t a=0;<br />while(1) {<br />lcd_locate(1,0);<br />lcd_int( a++ );<br />lcd_str( &quot;  &quot; );<br />_delay_ms(250);<br />}<br />}[/syntax]<br /><br />Porty pod które trzeba podpiąć LCD (przesyłam już caly kod z lcd44780.h<br /><br />[syntax=c]#ifndef LCD_H_<br />#define LCD_H_<br />//----------------------------------------------------------------------------------------<br />//<br />//Parametry pracy sterownika<br />//<br />//----------------------------------------------------------------------------------------<br />// rozdzielczość wyświetlacza LCD (wiersze/kolumny)<br />#define LCD_ROWS 2// ilość wierszy wyświetlacza LCD<br />#define LCD_COLS 16// ilość kolumn wyświetlacza LCD<br /><br />// tu ustalamy za pomocą zera lub jedynki czy sterujemy pinem RW<br />//0 - pin RW podłączony na stałe do GND<br />//1 - pin RW podłączony do mikrokontrolera<br />#define USE_RW 0<br /><br />//----------------------------------------------------------------------------------------<br />//<br />//Ustawienia sprzętowe połączeń sterownika z mikrokontrolerem<br />//<br />//----------------------------------------------------------------------------------------<br />// tu konfigurujemy port i piny do jakich podłączymy linie D7..D4 LCD<br />#define LCD_D7PORT  A<br />#define LCD_D7 6<br />#define LCD_D6PORT  A<br />#define LCD_D6 5<br />#define LCD_D5PORT  A<br />#define LCD_D5 4<br />#define LCD_D4PORT  A<br />#define LCD_D4 3<br /><br /><br />// tu definiujemy piny procesora do których podłączamy sygnały RS,RW, E<br />#define LCD_RSPORT A<br />#define LCD_RS 0<br /><br />#define LCD_RWPORT A<br />#define LCD_RW 1<br /><br />#define LCD_EPORT A<br />#define LCD_E 2<br />//------------------------------------------------  koniec ustawień sprzętowych ---------------<br /><br /><br />//----------------------------------------------------------------------------------------<br />//****************************************************************************************<br />//* *<br />//*U S T A W I E N I A   KOMPILACJI *<br />//* *<br />//*Włączamy kompilację komend używanych lub wyłączamy nieużywanych *<br />//*(dzięki temu regulujemy zajętość pamięci FLASH po kompilacji) *<br />//* *<br />//*1 - oznacza WŁĄCZENIE do kompilacji *<br />//*0 - oznacza wyłączenie z kompilacji (funkcja niedostępna) *<br />//* *<br />//****************************************************************************************<br />//----------------------------------------------------------------------------------------<br /><br />#define USE_LCD_LOCATE1// ustawia kursor na wybranej pozycji Y,X (Y=0-3, X=0-n)<br /><br />#define USE_LCD_CHAR 1// wysyła pojedynczy znak jako argument funkcji<br /><br />#define USE_LCD_STR_P 1// wysyła string umieszczony w pamięci FLASH<br />#define USE_LCD_STR_E 1// wysyła string umieszczony w pamięci FLASH<br /><br />#define USE_LCD_INT 1// wyświetla liczbę dziesietną na LCD<br />#define USE_LCD_HEX 1// wyświetla liczbę szesnastkową na LCD<br /><br />#define USE_LCD_DEFCHAR1// wysyła zdefiniowany znak z pamięci RAM<br />#define USE_LCD_DEFCHAR_P 1// wysyła zdefiniowany znak z pamięci FLASH<br />#define USE_LCD_DEFCHAR_E 1// wysyła zdefiniowany znak z pamięci EEPROM<br /><br />#define USE_LCD_CURSOR_ON 0// obsługa włączania/wyłączania kursora<br />#define USE_LCD_CURSOR_BLINK 0// obsługa włączania/wyłączania migania kursora<br />#define USE_LCD_CURSOR_HOME 0// ustawia kursor na pozycji początkowej<br /><br />//------------------------------------------------  koniec ustawień kompilacji ---------------<br /><br /><br /><br /><br /><br /><br />// definicje adresów w DDRAM dla różnych wyświetlaczy<br />// inne są w wyświetlaczach 2wierszowych i w 4wierszowych<br />#if ( (LCD_ROWS == 4) &amp;&amp; (LCD_COLS == 16) )<br />#define LCD_LINE1 0x00// adres 1 znaku 1 wiersza<br />#define LCD_LINE2 0x28// adres 1 znaku 2 wiersza<br />#define LCD_LINE3 0x14  // adres 1 znaku 3 wiersza<br />#define LCD_LINE4 0x54  // adres 1 znaku 4 wiersza<br />#else<br />#define LCD_LINE1 0x00// adres 1 znaku 1 wiersza<br />#define LCD_LINE2 0x40// adres 1 znaku 2 wiersza<br />#define LCD_LINE3 0x10  // adres 1 znaku 3 wiersza<br />#define LCD_LINE4 0x50  // adres 1 znaku 4 wiersza<br />#endif<br /><br /><br />// Makra upraszczające dostęp do portów<br />// *** PORT<br />#define PORT(x) SPORT(x)<br />#define SPORT(x) (PORT##x)<br />// *** PIN<br />#define PIN(x) SPIN(x)<br />#define SPIN(x) (PIN##x)<br />// *** DDR<br />#define DDR(x) SDDR(x)<br />#define SDDR(x) (DDR##x)<br /><br /><br />// Komendy sterujące<br />#define LCDC_CLS0x01<br />#define LCDC_HOME0x02<br />#define LCDC_ENTRY0x04<br />#define LCDC_ENTRYR0x02<br />#define LCDC_ENTRYL0<br />#define LCDC_MOVE0x01<br />#define LCDC_ONOFF0x08<br />#define LCDC_DISPLAYON0x04<br />#define LCDC_CURSORON0x02<br />#define LCDC_CURSOROFF0<br />#define LCDC_BLINKON0x01<br />#define LCDC_SHIFT0x10<br />#define LCDC_SHIFTDISP0x08<br />#define LCDC_SHIFTR0x04<br />#define LCDC_SHIFTL0<br />#define LCDC_FUNC0x20<br />#define LCDC_FUNC8B0x10<br />#define LCDC_FUNC4B0<br />#define LCDC_FUNC2L0x08<br />#define LCDC_FUNC1L0<br />#define LCDC_FUNC5x100x04<br />#define LCDC_FUNC5x70<br />#define LCDC_SET_CGRAM0x40<br />#define LCDC_SET_DDRAM0x80<br /><br /><br /><br /><br /><br />// deklaracje funkcji na potrzeby innych modułów<br />void lcd_init(void);// WŁĄCZONA na stałe do kompilacji<br />void lcd_cls(void);// WŁĄCZONA na stałe do kompilacji<br />void lcd_str(char * str);// WŁĄCZONA na stałe do kompilacji<br /><br />void lcd_locate(uint8_t y, uint8_t x);// domyślnie WŁĄCZONA z kompilacji w pliku lcd.c<br /><br />void lcd_char(char c);// domyślnie wyłączona z kompilacji w pliku lcd.c<br />void lcd_str_P(const char * str);// domyślnie wyłączona z kompilacji w pliku lcd.c<br />void lcd_str_E(char * str);// domyślnie wyłączona z kompilacji w pliku lcd.c<br />void lcd_int(int val);// domyślnie wyłączona z kompilacji w pliku lcd.c<br />void lcd_hex(uint32_t val);// domyślnie wyłączona z kompilacji w pliku lcd.c<br />void lcd_defchar(uint8_t nr, uint8_t *def_znak);// domyślnie wyłączona z kompilacji w pliku lcd.c<br />void lcd_defchar_P(uint8_t nr, const uint8_t *def_znak);// domyślnie wyłączona z kompilacji w pliku lcd.c<br />void lcd_defchar_E(uint8_t nr, uint8_t *def_znak);// domyślnie wyłączona z kompilacji w pliku lcd.c<br /><br />void lcd_home(void);// domyślnie wyłączona z kompilacji w pliku lcd.c<br />void lcd_cursor_on(void);// domyślnie wyłączona z kompilacji w pliku lcd.c<br />void lcd_cursor_off(void);// domyślnie wyłączona z kompilacji w pliku lcd.c<br />void lcd_blink_on(void);// domyślnie wyłączona z kompilacji w pliku lcd.c<br />void lcd_blink_off(void);// domyślnie wyłączona z kompilacji w pliku lcd.c<br /><br />#endif /* LCD_H_ */[/syntax]<br /><br />Potencjometrem redukowałem ostrość i widzę tylko jaskrawe kratki bez żadnego napisu.<br />W programie widzę, że powinno się wyświetlić to co jest napisane w tab1 i tab2<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=18489">TomasQ132435</a> — 17 lut 2018, o 08:19</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2018-02-17T07:40:54+01:00</updated>
<published>2018-02-17T07:40:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204057#p204057</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204057#p204057"/>
<title type="html"><![CDATA[Re: Wyświetlacz LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204057#p204057"><![CDATA[
<div class="quotetitle">TomasQ132435 napisał(a):</div><div class="quotecontent"><br />Witam <br />Mam problem z programemem, który mam z książki bluebook przeanalizowałem go kilka krotnie i nie wiem dlaczego na wyświetlaczu nie pokazuje mi się napis. Układ składa się z atmega32.<br /></div><br />Jak rozumiem całą resztę czyli np, program w main.c jaki napisałeś aby coś wyświetlić, schemat jak podłączyłeś LCD do procka, żeby można było zobaczyć i podpowiedzieć gdzie np zrobiłeś babola, to czy zrobiłeś jakieś byle testy z pojedynczą diodą LED aby sprawdzić czy w ogóle poprawnie programujesz, jakieś fotki układu - to zostawiasz dla WRÓŻEK, JASNOWIDZÓW i tym podobnych ?<br /><br />Uprzedzam, że kolejne tak napisane pytania na forum będą po prostu usuwane bez ostrzeżenia ... Masz problem i nawet nie chce ci się włożyć odrobinę wysiłku aby go porządnie opisać na forum ? Czy może jakieś zagadki albo kalambury chcesz tu urządzać panie kochany ?<br /><br />Proszę zatem poprawić pytanie<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 17 lut 2018, o 07:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[TomasQ132435]]></name></author>
<updated>2018-02-17T06:48:12+01:00</updated>
<published>2018-02-17T06:48:12+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204056#p204056</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204056#p204056"/>
<title type="html"><![CDATA[Wyświetlacz LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20241&amp;p=204056#p204056"><![CDATA[
Witam <br />Mam problem z programemem, który mam z książki bluebook przeanalizowałem go kilka krotnie i nie wiem dlaczego na wyświetlaczu nie pokazuje mi się napis. Układ składa się z atmega32.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=18489">TomasQ132435</a> — 17 lut 2018, o 06:48</p><hr />
]]></content>
</entry>
</feed>