Plymouth ELEC351 Group T / Mbed 2 deprecated 2017_12_271329_LCDTrial

Dependencies:   mbed

Committer:
chills
Date:
Wed Dec 27 16:12:38 2017 +0000
Revision:
3:6ee7c8ce0b7a
Parent:
2:ed06e716cca2
Child:
4:2759062f4264
2017_12_27 16:09; Write_Data is about to be deleted;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
chills 0:87888ca85258 1 #include "mbed.h"
chills 1:23bf1845cc2f 2 #include <string>
chills 0:87888ca85258 3
chills 0:87888ca85258 4 DigitalOut myled(LED1);
chills 0:87888ca85258 5
chills 0:87888ca85258 6 DigitalOut RS(D9);
chills 0:87888ca85258 7 DigitalOut RW(D4);
chills 0:87888ca85258 8 DigitalOut E(D8);
chills 0:87888ca85258 9 BusInOut DB(A0, A1, A2, A3, D7, D6, D3, D1); //LSB First
chills 0:87888ca85258 10
chills 0:87888ca85258 11 void clock_in();
chills 0:87888ca85258 12 void Function_Set();
chills 0:87888ca85258 13 void Display_Off();
chills 0:87888ca85258 14 void Display_Clear();
chills 0:87888ca85258 15 void Entry_Mode_Set();
chills 0:87888ca85258 16 void Display_On();
chills 0:87888ca85258 17 void DDRAM_Address(int Address);
chills 1:23bf1845cc2f 18 void Write_Data(string Letter);
chills 1:23bf1845cc2f 19 void Write_String(string Word);
chills 2:ed06e716cca2 20 void Initialise();
chills 0:87888ca85258 21
chills 0:87888ca85258 22 int main() {
chills 0:87888ca85258 23
chills 0:87888ca85258 24 DB.output();
chills 2:ed06e716cca2 25 Initialise();
chills 2:ed06e716cca2 26
chills 3:6ee7c8ce0b7a 27 DDRAM_Address(0x40);
chills 3:6ee7c8ce0b7a 28 Write_String("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA");
chills 0:87888ca85258 29
chills 0:87888ca85258 30 }
chills 0:87888ca85258 31
chills 3:6ee7c8ce0b7a 32 void clock_in(){E = 1; wait(0.001); E = 0; wait(0.001); E = 1;}
chills 0:87888ca85258 33
chills 3:6ee7c8ce0b7a 34 void Function_Set(){RS = 0; RW = 0; DB = 0x3C; clock_in();}
chills 0:87888ca85258 35
chills 3:6ee7c8ce0b7a 36 void Display_Off(){RS = 0; RW = 0; DB = 0x08; clock_in();}
chills 0:87888ca85258 37
chills 3:6ee7c8ce0b7a 38 void Display_Clear(){RS = 0; RW = 0; DB = 0x01; clock_in();}
chills 0:87888ca85258 39
chills 3:6ee7c8ce0b7a 40 void Entry_Mode_Set(){RS = 0; RW = 0; DB = 0x06; clock_in();}
chills 0:87888ca85258 41
chills 3:6ee7c8ce0b7a 42 void Display_On(){RS = 0; RW = 0; DB = 0x0F; clock_in();}
chills 2:ed06e716cca2 43
chills 2:ed06e716cca2 44 void Initialise(){
chills 2:ed06e716cca2 45 Function_Set();
chills 2:ed06e716cca2 46 wait(0.020);
chills 2:ed06e716cca2 47 Display_Off();
chills 2:ed06e716cca2 48 wait(0.020);
chills 2:ed06e716cca2 49 Display_Clear();
chills 2:ed06e716cca2 50 wait(0.020);
chills 2:ed06e716cca2 51 Entry_Mode_Set();
chills 2:ed06e716cca2 52 wait(0.020);
chills 2:ed06e716cca2 53 Display_On();
chills 2:ed06e716cca2 54 wait(0.020);
chills 2:ed06e716cca2 55 DDRAM_Address(0);
chills 2:ed06e716cca2 56 wait(0.020);
chills 0:87888ca85258 57 }
chills 0:87888ca85258 58
chills 3:6ee7c8ce0b7a 59 void DDRAM_Address(int Address){RS = 0; RW = 0; DB = 0x80 + Address; clock_in();}
chills 0:87888ca85258 60
chills 1:23bf1845cc2f 61 void Write_Data(string Letter){
chills 1:23bf1845cc2f 62 int ASCII_Converted[32];
chills 1:23bf1845cc2f 63 for (int i = 0; i < Letter.length(); i++)
chills 1:23bf1845cc2f 64 {
chills 3:6ee7c8ce0b7a 65 ASCII_Converted[i] = Letter.at(i);
chills 1:23bf1845cc2f 66 }
chills 1:23bf1845cc2f 67 RS = 1; RW = 0; DB = ASCII_Converted[0]; clock_in();
chills 0:87888ca85258 68 }
chills 1:23bf1845cc2f 69
chills 1:23bf1845cc2f 70 void Write_String(string Word){
chills 1:23bf1845cc2f 71
chills 1:23bf1845cc2f 72 int ASCII_Converted;
chills 1:23bf1845cc2f 73 for (int i = 0; i < Word.length(); i++)
chills 1:23bf1845cc2f 74 {
chills 1:23bf1845cc2f 75 ASCII_Converted = Word.at(i);
chills 1:23bf1845cc2f 76 RS = 1; RW = 0; DB = ASCII_Converted; clock_in();
chills 2:ed06e716cca2 77 }
chills 1:23bf1845cc2f 78 }