KAIQUE DOGNANI
/
LCD_JOYSTICK
Utilizando a Nucleo F103RB com um módulo LCD e um Joystick para interface
Diff: LCD_ka.h
- Revision:
- 0:bf743d54917c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/LCD_ka.h Tue Jun 09 00:35:52 2020 +0000 @@ -0,0 +1,99 @@ +#ifndef LCD_H +#define LCD_H +#include "mbed.h" +#include <string> +#include <stdio.h> + +class LCD : public Stream { +public: + LCD(PinName rs, PinName e, PinName d4, PinName d5, PinName d6, PinName d7); + +/* + ******************************* + **** DEFINIÇÕES DE ROTINAS **** + ******************************* +*/ + + +// Função de inicialização do LCD: + void Inicia_LCD(void); + +// Função que define se o cursor saiu do display: + void fim_de_curso(void); + +// Comando que indica para o LCD que metade dos bits foram enviados: + void bate_enable(void); + +// Função que escreve na CGRAM(Memória) ou na DDRAM(Tela): + void WRI(int value); + +// Função que manda comando para o LCD: + void CMD(int value); + +// Função que inicializa os caracteres definidos em si: + void setup_chars(); + +/* + ******************************* + **** DEFINIÇÕES DE FUNÇÕES **** + ******************************* +*/ + +// Função que retorna um array de chars contendo a posição ["(", "1", ",", "1", ")"] + string Lepos(void); + +// Função que escreve na DDRAM o caracter colocado em hex + void putc(int value); + +// Função que limpa o display e volta o cursor para (1,1): + void clc(void); + +// Função que volta o cursor para (1,1): + void home(void); + +// Função que manda o cursor para a direita: + void direita(void); + +// Função quem manda o cursor para a esquerda: + void esquerda(void); + +// Função que manda o display para linha de cima: + void cima(void); + +// Função que manda o display para linha de baixo: + void baixo(void); + +// Função que apaga o que está no cursor: + void apaga(void); + +// Função que posiciona o cursor na linha e coluna inseridas: + void pos(int linha, int coluna); + +// Função que faz um relógio girar no LCD + void Clock(int li, int co); + +/* + ******************************** + **** DEFINIÇÕES DE ENTRADAS **** + ******************************** +*/ + DigitalOut RS, E; // Saídas digitais de RS e Enable + BusOut dados; // Saídas digitais de comunicação com o display + +/* + ******************************** + **** DEFINIÇÃO DE VARIÁVEIS **** + ******************************** +*/ + + int _coluna; // Posição do cursor em relação a coluna + int _linha; // Posição do cursor em relação a linha + char _chars[2][16]; // Array que guarda o que tá escrito no display + + +// Stream implementation functions + virtual int _putc(int value); + virtual int _getc(); +}; + +#endif