Ir ao conteúdo

Posts recomendados

Postado

Olá galera estou aqui porque agr estou com outroo problema serio tenho q fazer no pic a programaçao pra quando eu aperta um botao acende o led e no display aparece por exemplo ‘sala’ foto do pic no final do post \/ dps vou fla todas entrada q vou utilizar 

 

Ok irei utilizar as porta rb7,rb6,rb5, rb4 para os button 

o display vai estar ligado nas porta rd0, rd1,rd2,rd3

E os led ligado nas porta rd7,rd6,rd5,rd4

e a programacao 

 

sbit LCD_EN at RA5_bit;

sbit LCD_RS at RE0_bit;

sbit LCD_D7 at RD3_bit;

sbit LCD_D6 at RD2_bit;

sbit LCD_D5 at RD1_bit;

sbit LCD_D4 at RD0_bit;

//direção dos pinos

sbit lcd_en direction at trisa5_bit;

sbit lcd_rs direction at trise0_bit;

sbit lcd_d7 direction at trisd3_bit;

sbit lcd_d6 direction at trisd2_bit;

sbit lcd_d5 direction at trisd1_bit;

sbit lcd_d4 direction at trisd0_bit;

 

Void main () {

lcd_init ();

lcd_cmd (_lcd_cursor_off);

trisb=0xff;

trisd=0;

portd=0;

Intcon2.rbpu=0;

while (1)

{

if(button(&portb,4,50,0))

portd.rd4=~portd.rd4;

while (portb.rd4==0);

lcd_out(1,1,”sala”);

delay_ms(1000);

{

Lcd_cmd(_lcd_clear);

if(button(&portb,5,50,0))

portd.rd5=~portd.rd5;

while (portb.rd5==0);

lcd_out(1,1,”cozinha”);

delay_ms(1000);

{

Lcd_cmd(_lcd_clear);

if(button(&portb,6,50,0))

portd.rd6=~portd.rd6;

while (portb.rd6==0);

lcd_out(1,1,”quarto”);

delay_ms(1000);

{

Lcd_cmd(_lcd_clear);

if(button(&portb,7,50,0))

portd.rd7=~portd.rd7;

while (portb.rd7==0);

lcd_out(1,1,”banheiro”);

delay_ms(1000);

lcd_cmd(_lcd_clear);

}

}

}

}

}

 

 

Nessa programaçao esta ligando os led mais n ta aparecendo nos display e n sei aonde arumar :/ aguardo resposta Obrigado.

4A9DDE31-554B-4417-A177-6A53F78F78E7.jpeg

image.jpg

image.jpg

Postado

Antes de entrar em código queria saber se o display liga a luz deles, aparece algum carácter quadrado ou coisa do tipo? Algum sinal de vida?

Postado

Hum... tenta faze um código hellow world. Eu uso um potenciômetro para regular a tensão no terceiro pino da esquerda para direita. Mas na prática em vez do potenciômetro Uso um resistor de 1k e outro de 10k sendo que o de 1k ligando no terra e o 10k ligado no 5V e no meio ligado a esse pino que falei.

 

No segundo pino agora da direita ta para a esquerda eu uso um resistor de 220ohm para luz do lcd...

 

Como disse tenta um código aleatória ai de hello world. Se já fez esse teste e está funcionando até mesmo com os teus resistores podemos continuar ^^

 

 

__

OFF-

meu português está piorando hehehe

Postado

@Bommu Perneta ss o circuito esta funcionando só nao aparece escrito no display quando aperto um botao , e como faz esse codigo hellow world q eu nunca ouvi fla kkkk porque velho eu olhei pra essa programação q eu fiz era pra funcionar e n funciona n sei porque n sei aonde errei se ta certo ou n 

  • Membro VIP
Postado

Pode ser um mondicoisa. Entre elas destaco a programação dos fuses, pino de reset, cristal com problema, alimentação, cagadinhas na montagem, e claro o tradicional etc. Veja se no proteus simula direito. Se sim... é problema entre teclado e cadeira mesmo kk. Ah sim, um hello world pro micromundo pode ser traduzido pra pisca led. "Rebobine a fita" e veja se consegue fazer piscar.

 

off2

9 horas atrás, Bommu Perneta disse:

OFF-

meu português está piorando hehehe

Tadinho. Ele tá gripado é? kk

aff

  • Confuso 1
Postado

@Isadora Ferraz hah fechado vou testar no proteus so q apenas quinta porque to meio gripado e cabei dexando meu notebook com

o grupo ai eu retorno aqui pra ver se é realmente a programaçao mesmo ou o circuito , agr essa parte ai do hellow world 

tenho q colocar em cima do void main? 

Usa tipo um #define? 

  • Membro VIP
Postado
11 horas atrás, Lucas Lorena disse:

essa parte ai do hellow world 

tenho q colocar em cima do void main? 

Usa tipo um #define? 

hmmmm... acho que precisas de um pouco mais de ajuda que vou ter dificuldade em te fornecer. "hello world" é uma expressão do mundo da programação quando você consegue fazer seu primeiro programa. No mundo dos mc´s pode ser considerado um "pisca led" como o abaixo (que digito online). É um exemplo simples com zero biblioteca externa que geralmente forneço pros noviços (não rebeldes) e quase fácil de entender. Serve pra virtualmente qualquer mc

#define led portd.rd4
void delay(unsigned int dl)
{
while(dl--);
}
//...
void main(void) //nem precisa do void mas como falou nele. perceba também o #define led
{
//inicializa hw
for(;;)
{
led^=1; //Taí... hello world pisca led
delay(10000);
}
}

Taí... hello world pisca led. A partir daqui pode partir pra dominação do mundo!

 

  • Haha 1
Postado

@Isadora Ferraz oky isa testei a programaçao no protheus e n funciono o display liga e fica aparecendo quarto , banheiro etc e fica mudando. E os botao quando aperta n acende os led como era pra acender e aparece no display acendeu um led e o quarto apago , acendeu outro e a sala kk bom vou tenta ve esse codigo hellow world pra ve se fica mais fácil de fazer 

  • Membro VIP
Postado

Uma pista...

Em 09/10/2017 às 21:03, Lucas Lorena disse:

if(button(&portb,4,50,0))

o que isso faz? Parece que  lê o bit 4 do portb. O que significam 50,0? Bem isso não é importante agora. Tente inverter algo como

if(!(button(&portb,4,50,0)));// ou

if(~(button(&portb,4,50,0)));//

Também percebo agora excesso de { e }

Além disso seu código pode ser melhorado... Aguarde seu momento

  • Triste 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!