» Advertenties

Zo 5 Februari 2012, 12:43

Voorgaande
- De AVR
- RS232

Inhoud
#1: Text op lcd
#2: Variabele op lcd

Hardware
File #135
HD44780 compatibele LCD, grootte maakt niet uit.
Altijd handig om iets visueel te hebben, een lcd.

C code -
  1. #define F_CPU 8000000
  2.  
  3. #define LCD_LINES 4
  4. #define LCD_DISP_LENGTH 20
  5.  
  6. #define LCD_PORT PORTB   ///< port for the LCD lines
  7. #define LCD_DATA0_PORT LCD_PORT   ///< port for 4bit data bit 0
  8. #define LCD_DATA1_PORT LCD_PORT   ///< port for 4bit data bit 1
  9. #define LCD_DATA2_PORT LCD_PORT   ///< port for 4bit data bit 2
  10. #define LCD_DATA3_PORT LCD_PORT   ///< port for 4bit data bit 3
  11. #define LCD_DATA0_PIN 4   ///< pin for 4bit data bit 0
  12. #define LCD_DATA1_PIN 5   ///< pin for 4bit data bit 1
  13. #define LCD_DATA2_PIN 6   ///< pin for 4bit data bit 2
  14. #define LCD_DATA3_PIN 7   ///< pin for 4bit data bit 3
  15. #define LCD_RS_PORT PORTC     ///< port for RS line
  16. #define LCD_RS_PIN 7   ///< pin for RS line
  17. #define LCD_RW_PORT PORTC     ///< port for RW line
  18. #define LCD_RW_PIN 6   ///< pin for RW line
  19. #define LCD_E_PORT PORTC     ///< port for Enable line
  20. #define LCD_E_PIN 5   ///< pin for Enable line
  21.  
  22. #include "s/g.h"
  23. #include "s/rprintf.c"
  24. #include "s/lcd.c"
  25. #include "util/delay.h"
  26.  
  27.  
  28. //! main functie, start programma, moet altijd aanwezich zijn
  29. int main(void){
  30.   uartInit(UART_FULL, 19200);
  31.   rprintfInit(uartSendByte);
  32.   rprintf("UART PRESENTn");
  33.  
  34.   // LCD aan, cursor off
  35.   lcdInit(LCD_DISP_ON);
  36.  
  37.   rprintf("LCD testn");
  38.   while(1){
  39.     // lcdClear, scherm leeg maken
  40.     lcdClr();
  41.     lcdPuts("Na lcdClr: 0,0");
  42.  
  43.     _delay_ms(500);
  44.     // lcdGotoXY(x, y); plaats cursor op positie x, y
  45.     lcdGotoXY(10,1);
  46.     lcdPuts("halfweg");
  47.  
  48.     _delay_ms(500);
  49.     lcdGotoXY(0,2);
  50.     lcdPuts("abcdeFGHIJklmnoPQRST");
  51.  
  52.     _delay_ms(500);
  53.     lcdGotoXY(0,3);
  54.     lcdPuts("UVWxyz0123456789/*-+");
  55.  
  56.     _delay_ms(1000);  
  57.   }
  58.  
  59.   return 0;
  60. }


File #136
Nog geen reacties.
Naam
a-z A-Z 0-9 _

 
E-mail
Wordt niet getoont.
  (niet verplicht)
 
Mail sturen als
(optie)
Smoerijf reageerd
Eender wie reageaard
Nooit
 
Mail sturen
(optie)
Enkel mailen bij eerste reactie
Bij elke reactie mailen
 
Reactie
Laatste wijziging: Wo 15 April 2009, 23:14