Altijd handig om iets visueel te hebben, een lcd.
#define F_CPU 8000000
#define LCD_LINES 4
#define LCD_DISP_LENGTH 20
#define LCD_PORT PORTB ///< port for the LCD lines
#define LCD_DATA0_PORT LCD_PORT ///< port for 4bit data bit 0
#define LCD_DATA1_PORT LCD_PORT ///< port for 4bit data bit 1
#define LCD_DATA2_PORT LCD_PORT ///< port for 4bit data bit 2
#define LCD_DATA3_PORT LCD_PORT ///< port for 4bit data bit 3
#define LCD_DATA0_PIN 4 ///< pin for 4bit data bit 0
#define LCD_DATA1_PIN 5 ///< pin for 4bit data bit 1
#define LCD_DATA2_PIN 6 ///< pin for 4bit data bit 2
#define LCD_DATA3_PIN 7 ///< pin for 4bit data bit 3
#define LCD_RS_PORT PORTC ///< port for RS line
#define LCD_RS_PIN 7 ///< pin for RS line
#define LCD_RW_PORT PORTC ///< port for RW line
#define LCD_RW_PIN 6 ///< pin for RW line
#define LCD_E_PORT PORTC ///< port for Enable line
#define LCD_E_PIN 5 ///< pin for Enable line
#include "s/g.h"
#include "s/rprintf.c"
#include "s/lcd.c"
#include "util/delay.h"
//! main functie, start programma, moet altijd aanwezich zijn
int main(void){
uartInit(UART_FULL, 19200);
rprintfInit(uartSendByte);
rprintf("UART PRESENTn");
// LCD aan, cursor off
lcdInit(LCD_DISP_ON);
rprintf("LCD testn");
while(1){
// lcdClear, scherm leeg maken
lcdClr();
lcdPuts("Na lcdClr: 0,0");
_delay_ms(500);
// lcdGotoXY(x, y); plaats cursor op positie x, y
lcdGotoXY(10,1);
lcdPuts("halfweg");
_delay_ms(500);
lcdGotoXY(0,2);
lcdPuts("abcdeFGHIJklmnoPQRST");
_delay_ms(500);
lcdGotoXY(0,3);
lcdPuts("UVWxyz0123456789/*-+");
_delay_ms(1000);
}
return 0;
}
