Neste desafio aprimoramos a caixa de água dos desafios anteriores com um lcd. Ele mostrará mensagens de caixa cheia, vazia ou falta de água.
link do desafio
http://www.4shared.com/office/MNc-89Rd/desafio12.html?
OBS: nao usar o pino 0.14 pois este não funcionará corretamente, usar o 0.21.
link para download do arquivo lcd.h
http://www.4shared.com/file/QZIoHjW8/lcd.html?
este arquivo é programa do lcd que já está pronto.
O programa não é muito diferente do anterior, o que muda é somente os comandos do lcd que vou destacar em amarelo.
#include <lpc213x.h>
#include "E:\Douglas\TEC. ELETRONICA\SISTEMAS MICROCONTROLADOS\lcd\3_LCD 2X 16\lcd.h"
#define maximo (1<<16)
#define minimo (1<<17)
#define bomba (1<<18)
#define dmae (1<<21)
int main (void)
{
IODIR0 = 0XFFFFDFFF;
IODIR1 = 0XFFDCFFFF;
init_lcd();
while(1)
{
if (!(IOPIN1&(dmae)))
{
IOCLR1 = bomba;
lcd_clr (); // LIMPA A TELA
lcd_puts ("falta de agua"); // MENSAGEM DA TELA
}
else
{
if (IOPIN1&(maximo))
{
IOCLR1 = bomba;
lcd_clr (); // LIMPA A TELA
lcd_puts ("nivel alto"); // MENSAGEM DA TELA
}
else
if(!(IOPIN1&(minimo)))
{
IOSET1 = bomba;
lcd_clr (); // LIMPA A TELA
lcd_puts ("nivel baixo"); // MENSAGEM DA TELA
}
}
}
}
Após criar todo o programa, criamos o arquivo .hex e começamos a montar o circuito no Proteus para testar o funcionamento do programa.


Nenhum comentário:
Postar um comentário