This is a test program for TEXT LCD (HD44780) , 40 char x 2 lines.

Dependencies:   TextLCD mbed

Fork of Text_LCD_control by Kenji Arai

Committer:
PedroS1989
Date:
Tue Mar 17 23:45:23 2015 +0000
Revision:
1:183b7d2bea01
Parent:
0:171b4ca846a6
First test for lcd 16x2 freedom kl25z

Who changed what in which revision?

UserRevisionLine numberNew contents of line
PedroS1989 1:183b7d2bea01 1 //AUTOR: Pedro Santos
PedroS1989 1:183b7d2bea01 2 //DATA: 18/12/2014
PedroS1989 1:183b7d2bea01 3 //NOTAS: http:
PedroS1989 1:183b7d2bea01 4 //CODIGO PARA: programa de teste para entradas e saidas da placa kl25Z
kenjiArai 0:171b4ca846a6 5
kenjiArai 0:171b4ca846a6 6 #include "mbed.h"
kenjiArai 0:171b4ca846a6 7 #include "TextLCD.h"
kenjiArai 0:171b4ca846a6 8
PedroS1989 1:183b7d2bea01 9 //#include "Timer_ps.h"
PedroS1989 1:183b7d2bea01 10 //********************************************************************
PedroS1989 1:183b7d2bea01 11 //********************************************************************
PedroS1989 1:183b7d2bea01 12 //DEFINIÇÃO DE ENTRADAS E SAIDAS USADAS NO PROGRAMA
PedroS1989 1:183b7d2bea01 13 //SAIDAS DIGITAIS
PedroS1989 1:183b7d2bea01 14 DigitalOut led1 (PTE2);
PedroS1989 1:183b7d2bea01 15 DigitalOut led2 (PTE3);
PedroS1989 1:183b7d2bea01 16 DigitalOut led3 (PTE4);
PedroS1989 1:183b7d2bea01 17 DigitalOut led4 (PTE5);
kenjiArai 0:171b4ca846a6 18
PedroS1989 1:183b7d2bea01 19 DigitalOut led_r (LED1); //LED on board
PedroS1989 1:183b7d2bea01 20 DigitalOut led_g (LED2); //LED on board
PedroS1989 1:183b7d2bea01 21 DigitalOut led_b (LED3); //LED on board
kenjiArai 0:171b4ca846a6 22
PedroS1989 1:183b7d2bea01 23 //********************************************************************
PedroS1989 1:183b7d2bea01 24 //ENTRADAS DIGITAIS
PedroS1989 1:183b7d2bea01 25 DigitalIn tecla1 (PTE20);
PedroS1989 1:183b7d2bea01 26 DigitalIn tecla2 (PTE21);
PedroS1989 1:183b7d2bea01 27 DigitalIn tecla3 (PTE22);
PedroS1989 1:183b7d2bea01 28 DigitalIn tecla4 (PTE23);
kenjiArai 0:171b4ca846a6 29
PedroS1989 1:183b7d2bea01 30 //********************************************************************
PedroS1989 1:183b7d2bea01 31 //********************************************************************
PedroS1989 1:183b7d2bea01 32 //Initial condictions:
PedroS1989 1:183b7d2bea01 33 void initial_value_ports(){
PedroS1989 1:183b7d2bea01 34 led_r=1;
PedroS1989 1:183b7d2bea01 35 led_g=1;
PedroS1989 1:183b7d2bea01 36 led_b=1;
PedroS1989 1:183b7d2bea01 37 led1=0;
PedroS1989 1:183b7d2bea01 38 led2=0;
PedroS1989 1:183b7d2bea01 39 led3=0;
PedroS1989 1:183b7d2bea01 40 led4=0;
PedroS1989 1:183b7d2bea01 41 }
PedroS1989 1:183b7d2bea01 42 //********************************************************************
PedroS1989 1:183b7d2bea01 43 //********************************************************************
PedroS1989 1:183b7d2bea01 44 //Definição de pinos do LCD 16x2:
PedroS1989 1:183b7d2bea01 45 TextLCD lcd(PTC6, PTC5, PTC4, PTC3, PTC0, PTC7); // rs,rw,e,d0,d1,d2,d3,16char's x 2 lines
kenjiArai 0:171b4ca846a6 46
kenjiArai 0:171b4ca846a6 47 int main() {
PedroS1989 1:183b7d2bea01 48
PedroS1989 1:183b7d2bea01 49 initial_value_ports();
PedroS1989 1:183b7d2bea01 50 lcd.cls(); //Clear lcd
PedroS1989 1:183b7d2bea01 51
PedroS1989 1:183b7d2bea01 52 lcd.locate(0,0);
PedroS1989 1:183b7d2bea01 53 lcd.printf(" Teste LCD 16x2 ");
PedroS1989 1:183b7d2bea01 54 lcd.locate(0,1);
PedroS1989 1:183b7d2bea01 55 lcd.printf("* Pedro Santos *");
PedroS1989 1:183b7d2bea01 56
PedroS1989 1:183b7d2bea01 57 while(1){
kenjiArai 0:171b4ca846a6 58
PedroS1989 1:183b7d2bea01 59 led_b = 0;
PedroS1989 1:183b7d2bea01 60 wait(0.1); //Wait 100ms
PedroS1989 1:183b7d2bea01 61 led_b = 1;
PedroS1989 1:183b7d2bea01 62 wait(0.1); //Wait 100ms
PedroS1989 1:183b7d2bea01 63
PedroS1989 1:183b7d2bea01 64 lcd.locate(0,0);
PedroS1989 1:183b7d2bea01 65 lcd.printf(" Teste LCD 16x2 ");
PedroS1989 1:183b7d2bea01 66 lcd.locate(0,1);
PedroS1989 1:183b7d2bea01 67 lcd.printf("* Pedro Santos *");
PedroS1989 1:183b7d2bea01 68
PedroS1989 1:183b7d2bea01 69 led_g = 0;
PedroS1989 1:183b7d2bea01 70 wait(0.1); //Wait 100ms
PedroS1989 1:183b7d2bea01 71 led_g = 1;
PedroS1989 1:183b7d2bea01 72 wait(0.1); //Wait 100ms
PedroS1989 1:183b7d2bea01 73
PedroS1989 1:183b7d2bea01 74 wait(1);
PedroS1989 1:183b7d2bea01 75 lcd.locate(0,1);
PedroS1989 1:183b7d2bea01 76 lcd.printf(" Teste LCD 16x2 ");
PedroS1989 1:183b7d2bea01 77 lcd.locate(0,0);
PedroS1989 1:183b7d2bea01 78 lcd.printf("* Pedro Santos *");
PedroS1989 1:183b7d2bea01 79 wait(1);
PedroS1989 1:183b7d2bea01 80
PedroS1989 1:183b7d2bea01 81
PedroS1989 1:183b7d2bea01 82 led_r = 0;
PedroS1989 1:183b7d2bea01 83 wait(0.1); //Wait 100ms
PedroS1989 1:183b7d2bea01 84 led_r = 1;
PedroS1989 1:183b7d2bea01 85 wait(0.1); //Wait 100ms
kenjiArai 0:171b4ca846a6 86 }
kenjiArai 0:171b4ca846a6 87 }