Odpowiedz 
 
Ocena wątku:
  • 3 Głosów - 3.33 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
Programowanie w języku C w środowisku AVR Studio4
SQ9JXB Offline
Początkujący
**

Liczba postów: 64
Dołączył: 22-03-2010
Post: #66
RE: Programowanie w języku C w środowisku AVR Studio4
Cytat:#include <avr/io.h>
#include <util/delay.h>

/* Konfiguracja - na którym porcie i na wyprowadzeniach puszczamy sterowanie LCD */
#define DEF_PORT DDRA /* wpisujemy DDRA, DDRB, DDRC, DDRD - zależy który port będzie obsługiwał wyświetlacz */
#define LCD_PORT PORTA /* wpisujemy, który port ma wysyłać dane do wyświetlacza - 4 starsze bity portu (7,6,5,4) */
/* podłączamy odpowiednio do wyjść D7, D6, D5, D4 wyświetlacza */
#define LCD_RS 3 /* które wyprowadzenie PORTU będzie linią RS */
#define LCD_E 2 /* które wyprowadzenie portu ma być linią E */
/* koniec konfiguracji. Pamiętajcie że numeracja wyprowadzeń PORTU zaczyna sie od "0" */

void bajt_lcd(unsigned char znak)
{
LCD_PORT = (LCD_PORT & 15)|(znak&240);
LCD_PORT |= (1<<LCD_E);
LCD_PORT &= (~1<<LCD_E);
LCD_PORT = (LCD_PORT & 15)|(znak<<4);
LCD_PORT |= (1<<LCD_E);
LCD_PORT &= (~1<<LCD_E);
_delay_ms(10);
}

void napis_lcd(char tab[])
{
LCD_PORT = LCD_PORT|(1<<LCD_RS);
int i=0;
while(tab[i]!=0)
{
bajt_lcd(tab[i]);
i=i+1;
}
}


void init_lcd(void)
{
DEF_PORT = 0xf0|(1<<LCD_RS)|(1<<LCD_E);
unsigned char i;
for(i=0;i<3;i++)
{
LCD_PORT = (LCD_PORT&0x0f)|(0x30&0xf0);
LCD_PORT |= (1<<LCD_E);
LCD_PORT &= (~1<<LCD_E);
_delay_ms(50);
}
LCD_PORT = (LCD_PORT&0x0f)|(0x20&0xf0);
LCD_PORT |= (1<<LCD_E);
LCD_PORT &= (~1<<LCD_E);
_delay_ms(50);
bajt_lcd(0x28); // Interfejs 4-bit, Wyświetlacz dwuwierszowy, Matryca znaków 5x7
bajt_lcd(0x01); // czyszczenie i przesuniecie na poczatek LCD
bajt_lcd(0x0e); // włączenie wyświetlacza kursor widoczny niemrygający
}

Czy ten kod dla portu A jest prawidłowy? nazwy portów pokazałem jako tekst pogrubiony.

P.S. wczytałem plik nowy.hex i nic się nie wyświetla. W kompilacji nie mam errorów.

Janek SQ9JXB
(Ten post był ostatnio modyfikowany: 27-01-2012 13:54 przez SQ9JXB.)
27-01-2012 13:54
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
Odpowiedz 


Wiadomości w tym wątku
RE: Programowanie w języku C w środowisku AVR Studio4 - SQ9JXB - 27-01-2012 13:54

Skocz do:


Użytkownicy przeglądający ten wątek: 5 gości