ET53C - SISTEMAS DIGITAIS

Documentos relacionados
Projeto para interligação do Teclado Matricial 4X3 o módulo PIC PCI-208 Princípio de Funcionamento:

Notas de Aula. Microcontroladores PIC - Compilador: MikroC

TECLADO MATRICIAL. Universidade Tecnológica Federal do Paraná - UTFPR Sistemas Microcontrolados Monitor da disciplina: Luís Paulo Custódio

EL08D - MICROCONTROLADORES

ET53C - SISTEMAS DIGITAIS

Introdução ao Uso do LCD Inteligente (Versão Preliminar) Por Gilson Yukio Sato. Introdução

LCDs Inteligentes. LCD Inteligente. Gabriel Kovalhuk DAELN / UTFPR

Módulo de Cristal Líquido LCD

ET53C - SISTEMAS DIGITAIS

Copyright 2011 VW Soluções

UNIVERSIDADE FEDERAL DO PARANÁ MICROCONTROLADOR PIC 18F452 / PROTEUS

Departamento de Engenharia Elétrica e de Computação SEL 384 Laboratório de Sistemas Digitais I

C:\Users\House\Desktop\fluxo.c 1: /****************************************************************************** 2: * Objetivo: Este projeto visa

Sistema Digitais. Bacharelado de Informática UEM DIN - Prof. Elvio 2016

USO DO DIODO 1N4148 COMO SENSOR LINEAR DE TEMPERATURA

Usando Display Gráfico com C18 e C30

Usando display LCD tipo 16x2

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ CENTRO DE CIÊNCIAS EXATAS ENGENHARIA DE COMPUTAÇÃO DOCUMENTAÇÃO DO PROJETO CONTROLE DE LOTAÇÃO

Experiência. Montagem Kit Didático. 2. Turma: Nota: 5. MICRO-I Prof. Mauricio. Identificação dos Alunos:

Linguagem C para Microcontroladores

Introdução a Engenharia Elétrica

SEL PROGRAMAÇÃO EM C

8051 PROGRAMAÇÃO EM C

MSP430 Lab 05 Biblioteca básica para comunicação com o Display do Nokia5110

TE091 Programação Orientada a Objetos Engenharia Elétrica

Microcontroladores PIC. Operação com Displays de Cristal Líquido LCDs

Curso introdutório de microcontroladores - Plataforma Arduino

Revisão Linguagem C Parte 1

Funções dos Microcontroladores Microcontroladores e Microprocessadores Especialização em Automação Industrial

Oxímetro Bluetooth e LCD 16 2 em Python

Comunicação RC5 com o dspic Vitor Amadeu Souza

Projetos de Automação. Édilus de Carvalho Castro Penido Pedro Luis Almeida de Oliveira Costa

Interface com Displays de 7 Segmentos. Interface com Displays

Sistemas Digitais e Microcontrolados

01/08/2011 PROGRAMAÇÃO EM LINGUAGEM C. Histórico

,17580(17$d (&72$ &DOLEUDomRGHXPVHQVRUGHWHPSHUDWXUDFRPD SODFDFRQWURODGRUD.'

Fundamentos de Programação

uc e sistemas de interface You created this PDF from an application that is not licensed to print to novapdf printer (

Arduino. Conectores, Fonte, USB, LEDs. Compilador, Bibliotecas, Editor, Burner

Programação do Arduino. Parte 1. IDE Wiring

Objetivos MICROCONTROLADORES SOFTWARE PROGRAMAÇÃO (PARTE: 04) Programação em Linguagem C

Introdução ao Arduino ESCOLA DE ARTES VISUAIS DO PARQUE LAGE. Núcleo de Arte e Tecnologia. julio lucio martin. Aula 07

Placa de desenvolvimento USB AFSmartBoard utiliza PIC18F4550 da Microchip, microcontrolador com o Flash 32kb, 2048 bytes de memória RAM

Revisão C++ - Parte 1

Copyright 2013 VW Soluções

Por Fernando Koyanagi

Módulo Lógica Programação com aplicações em Java. Projeto khouse Profissionalizante Profª Larissa Brandão

PSI2662 Projeto em Sistemas Eletrônicos Embarcados: Sensores e Atuadores. Temporizadores e Interrupção, AD/DA, Display, Integração com MatLab

Sistemas Digitais e Microcontrolados

Laboratório de Microprocessadores e Microcontroladores

MICROPROCESSADORES E MICROCONTROLADORES Parte 3 Microcontrolador 8051

Manual do usuário - Kit DLS v4.0. Kit DLS v4.0 Display LCD serial Manual do usuário. Copyright VW Soluções

Arduino. Conectores, Fonte, USB, LEDs. Compilador, Bibliotecas, Editor, Burner

PROGRAMAÇÃO I E N T R A DA E S A Í DA D E DA D O S

Prof. Adilson Gonzaga. Interface com Displays

BANKSEL ADCON1 clrf ADCON1 bsf ADCON1,ADFM ; seta AD para VCC, GND e entradas analogicas, setando o bit ADFM configura como justificado a direita

Microcontroladores e Robótica - FACAPE

Conhecendo o PIC24 e o mikropascal

Curso de robótica 2. Novos conceitos de programação

Módulo 1. Introdução. AEDS I C++ (Rone Ilídio)

Laboratório de Microprocessadores e Microcontroladores

Puca Huachi Vaz Penna

Periféricos do PIC - Comparadores e UART

Introdução a Engenharia Elétrica Comunicação serial, Acelerômetro, Display LCD

Introdução ao Microcontrolador PIC

ENG1450. Introdução para a tarefa do Braço Robótico. Microcontroladores e Sistemas Embarcados. Autor: Adriano Branco Prof.: Moisés H.

Portas de entrada e saída; Interrupções; Interrupções externas; Temporizadores Contadores; Interface Serial

Aula 06 Introdução à Programação Matrizes

Microprocessadores e Microcontroladores

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO

Display Torre. Índice

Sistemas Digitais e Microcontrolados

Técnicas de Programação em Engenharia Elétrica I - Engenharia de Sistemas Embarcados - Prof. Alessandro Zimmer Introdução à Linguagem C

Arduino Lab 02 Sensor de luminosidade e display de LCD 16 2

Programação Básica em Arduino Aula 2

Computação eletrônica:

LABORATÓRIO DE ARQUITETURA DE COMPUTADORES PREPARAÇÃO 02: DISPLAY DE 7 SEGMENTOS MICROCONTROLADO

PIC - PROGRAMAÇÃO LINGUAGEM C. AUTOR: ENG. ANTONIO CARLOS LEMOS JÚNIOR

Comunicando com um teclado PS2 Vitor Amadeu Souza

Comunicação Serial 1

Projecto de uma placa com DIP-Switches e LCD com ligação à placa DETIUA

Programação com Acesso a BD. Programação com OO Acesso em Java

INTRODUÇÃO AO ARDUINO DUE, CANAL DIGITAL, FUNÇÃO DELAY

Laboratório de Hardware

Estruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões.

/* Este programa realiza um somatório e exibe o resultado na tela do computador */

Arduino: primeiros passos para aprender e configurar.

ALGORITMOS, ARQUITETURA E ARDUINO

ET51D - INFORMÁTICA. Algoritmos - Estruturas de Decisão. Prof. Glauber G. O. Brante e Profa. Mariana Furucho

2a Prova de ELT024 Programação para Sistemas Embarcados Prof. Rodrigo Maximiano Antunes de Almeida

DIAGRAMA DE BLOCOS PINAGEM

Disciplina de. Organização de Computadores Digitais

Sistemas Microcontrolados

Laboratório de Microprocessadores e Microcontroladores

Microcontroladores: Programação em C

LINGUAGEM C. Comandos de Controle do Vídeo, Teclado e especiais. Lógica de Programação

Recuperação P1 de Estrutura de Dados

Transcrição:

ET53C - SISTEMAS DIGITAIS Display de Cristal Líquido Profs: Glauber Brante e Mariana Furucho gbrante@utfpr.edu.br marianafurucho@utfpr.edu.br UTFPR Universidade Tecnológica Federal do Paraná DAELT Departamento Acadêmico de Eletrotécnica Prof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 1 / 21

Objetivos Estudar o funcionamento básico do Display LCD Utilizar as funções de controle do Display LCD no MikroC Prof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 2 / 21

Display de Cristal Líquido Prof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 3 / 21

Display de Cristal Líquido Prof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 4 / 21

Display de Cristal Líquido Gráfico Grande e mais complicado Utiliza controladores externos e tem uma taxa de atualização Texto Simples de usar, porém um pouco mais limitado É suficiente para muitas aplicações!! Prof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 5 / 21

Display de Cristal Líquido Baseado no controlador HD44780 Prof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 6 / 21

Pinos do LCD Prof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 7 / 21

Comandos Básicos I/D: 1 = Increment (by 1) 0 = Decrement (by 1) S: 1 = Display shift on 0 = Display shift off R/L: DL: 1 = Shift right 0 = Shift left 1 = 8-bit interface 0 = 4-bit interface D: 1 = Display on 0 = Display off U: 1 = Cursor on 0 = Cursor off N: 1 = Display in two lines 0 = Display in one line F: 1 = Character format 5x10 dots 0 = Character format 5x7 dots D: 1 = Blink on 0 = Blink off D/C: 1 = Display shift 0 = Cursor shift rof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 8 / 21

Memórias Internas do Display LCD Um display LCD contém três blocos de memória: DDRAM Display Data RAM; CGRAM Character Generator RAM; CGROM Character Generator ROM. Prof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 9 / 21

CGROM ROM com tabela ASCII Prof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 10 / 21

CGRAM Prof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 11 / 21

Hardware Prof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 12 / 21

Programação Funções da Biblioteca do MikroC: Lcd_Init (); Lcd_Out (char row, char column, char *text); Lcd_Out_Cp (char *text); Lcd_Chr (char row, char column, char out_char); Lcd_Chr_Cp (char out_char); Lcd_Cmd (char out_char); Prof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 13 / 21

Comandos Comando _LCD_FIRST_ROW _LCD_SECOND_ROW _LCD_CLEAR _LCD_RETURN_HOME _LCD_CURSOR_OFF _LCD_UNDERLINE_ON _LCD_BLINK_CURSOR_ON _LCD_MOVE_CURSOR_LEFT _LCD_MOVE_CURSOR_RIGHT _LCD_TURN_ON _LCD_TURN_OFF _LCD_SHIFT_LEFT _LCD_SHIFT_RIGHT Ação Move para 1a. linha Move para 2a. linha Limpa display (limpa RAM) Retorna cursor/display para posição inicial Desliga cursor Liga cursor traço Liga cursor piscando Move cursor para esquerda Move cursor para direita Liga display Desliga display Desloca display para esquerda Desloca display para direita Prof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 14 / 21

Exemplo (configuração padrão - 4 bits) Exemplo MikroC: // LCD module connections sbit LCD_RS at RD0_bit ; sbit LCD_EN at RD1_bit ; sbit LCD_D4 at RD4_bit ; sbit LCD_D5 at RD5_bit ; sbit LCD_D6 at RD6_bit ; sbit LCD_D7 at RD7_bit ; sbit LCD_RS_Direction at TRISD0_bit ; sbit LCD_EN_Direction at TRISD1_bit ; sbit LCD_D4_Direction at TRISD4_bit ; sbit LCD_D5_Direction at TRISD5_bit ; sbit LCD_D6_Direction at TRISD6_bit ; sbit LCD_D7_Direction at TRISD7_bit ; // End LCD module connections char * text = " Hello World!!! "; void main () { TRISD = 0 x00 ; // configura PORTD como saída Lcd_Init (); // Inicializa display segundo conexoes acima Lcd_Cmd ( _LCD_CLEAR ); // Limpa display Lcd_Cmd ( _LCD_CURSOR_OFF ); // Desliga cursor Lcd_Out (1, 1, text ); // Imprime text no display iniciando na linha 1, coluna 1 rof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 15 / 21

Exemplo (N linhas e com deslocamento) Exemplo MikroC: // LCD module connections sbit LCD_RS at RD0_bit ; sbit LCD_EN at RD1_bit ; sbit LCD_D4 at RD4_bit ; sbit LCD_D5 at RD5_bit ; sbit LCD_D6 at RD6_bit ; sbit LCD_D7 at RD7_bit ; sbit LCD_RS_Direction at TRISD0_bit ; sbit LCD_EN_Direction at TRISD1_bit ; sbit LCD_D4_Direction at TRISD4_bit ; sbit LCD_D5_Direction at TRISD4_bit ; sbit LCD_D6_Direction at TRISD6_bit ; sbit LCD_D7_Direction at TRISD7_bit ; // End LCD module connections char txt1 [] = " Aula de Sistemas "; char txt2 [] = " Digitais "; char txt3 [] = " Exemplo "; char txt4 [] = "N linhas LCD "; char i; // Loop variable void Move_Delay () { // Function used for text moving Delay_ms (500) ; // You can change the moving speed here rof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 16 / 21

Continuação (N linhas e com deslocamento) Exemplo MikroC: void main (){ TRISD = 0 x00 ; Delay_ms (1000) ; Lcd_Init (); // Initialize LCD Delay_ms (2000) ; Lcd_Cmd ( _LCD_CLEAR ); // Clear display Delay_ms (1000) ; Lcd_Cmd ( _LCD_CURSOR_OFF ); // Cursor off Delay_ms (1000) ; Lcd_Out (1,6, txt3 ); // Write text in first row Delay_ms (1000) ; Lcd_Out (2,4, txt4 ); // Write text in second row Delay_ms (1000) ; Lcd_Cmd ( _LCD_CLEAR ); // Clear display Delay_ms (1000) ; Lcd_Out (1,1, txt1 ); // Write text in first row Delay_ms (2000) ; Lcd_Out (2,5, txt2 ); // Write text in second row Delay_ms (2000) ; rof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 17 / 21

Continuação (N linhas e com deslocamento) Exemplo MikroC: // Moving text for (i =0; i <4; i ++) { // Move text to the right 4 times Lcd_Cmd ( _LCD_SHIFT_RIGHT ); Move_Delay (); Delay_ms (500) ; while (1) { // Endless loop for (i =0; i <8; i ++) { // Move text to the left 7 times Lcd_Cmd ( _LCD_SHIFT_LEFT ); Move_Delay (); Delay_ms (500) ; for (i =0; i <8; i ++) { // Move text to the right 7 times Lcd_Cmd ( _LCD_SHIFT_RIGHT ); Move_Delay (); Delay_ms (500) ; rof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 18 / 21

Exibindo Caracter Especial Exemplo MikroC: // LCD module connections sbit LCD_RS at RD0_bit ; sbit LCD_EN at RD1_bit ; sbit LCD_D4 at RD4_bit ; sbit LCD_D5 at RD5_bit ; sbit LCD_D6 at RD6_bit ; sbit LCD_D7 at RD7_bit ; sbit LCD_RS_Direction at TRISD0_bit ; sbit LCD_EN_Direction at TRISD1_bit ; sbit LCD_D4_Direction at TRISD4_bit ; sbit LCD_D5_Direction at TRISD5_bit ; sbit LCD_D6_Direction at TRISD6_bit ; sbit LCD_D7_Direction at TRISD7_bit ; // End LCD module connections char *text = " Feliz na Aula!!"; const char character [] = {14,14,4,21,31,4,31,0; void CustomChar ( char pos_row, char pos_char ) { char i; Lcd_Cmd (64) ; for (i = 0; i <=7; i ++) Lcd_Chr_CP ( character [i]); Lcd_Cmd ( _LCD_RETURN_HOME ); Lcd_Chr ( pos_row, pos_char, 0); rof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 19 / 21

Continuação - Exibindo Caracter Especial Exemplo MikroC: void main () { int i,j; TRISD = 0 x00 ; // configura PORTD como saída Lcd_Init (); // Inicializa display segundo conexoes acima Lcd_Cmd ( _LCD_CLEAR ); // Limpa display Lcd_Cmd ( _LCD_CURSOR_OFF ); // Desliga cursor Lcd_Out (1, 1, text ); // Imprime text no display iniciando na linha 1, coluna 1 while (1) { for (i =1; i ++; i <=16) { delay_ms (500) ; Lcd_Cmd ( _LCD_CLEAR ); // Limpa display CustomChar (1,i); rof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 20 / 21

Exercício Adicional Cronômetro Digital: Desenvolva um cronômetro digital para contar segundos e minutos na forma 00:00 até 59:59 e o exiba no LCD. Simule seu funcionamento no Proteus. rof. Glauber Brante e Mariana Furucho (UTFPR) Display LCD 21 / 21