Ir ao conteúdo

Botoes com 16F628A


CIS

Posts recomendados

Postado

o que sera preciso para usar botões e leds com o 16F628A ?? não consigo nada meu codigo esta assim

void main()

{

trisa = 0xFF;

trisb = 0x00;

porta = 0x00;

portb = 0x00;

while(1)

{

if(porta.f0 == 1) {

portb.f0 = 0 ;

}

else {

portb.f0 = 0;

}

if(porta.f1 == 1) {

portb.f1 = 1;

}

else {

portb.f1 = 0;

}

}

}

Postado

Você deve desativar o comparador analógico do PIC:

CMCON = 7;

Esse trecho do código não tem nenhuma função:

if(porta.f0 == 1) {

portb.f0 = 0 ; //Não teria que ser igual a 1?

}

else {

portb.f0 = 0;

}

Postado
Você deve desativar o comparador analógico do PIC:

CMCON = 7;

Esse trecho do código não tem nenhuma função:

if(porta.f0 == 1) {

portb.f0 = 0 ; //Não teria que ser igual a 1?

}

else {

portb.f0 = 0;

}

desculpa, errei ao digita-lo aqui, mas vou corrigir quando for tentar de novo...

vou configurar o comparador, mas uma duvida, todos os pics que possuem comparadores analogicos são desabilitados com o numero decimal 7 ?? pergunto isso porque ja brinquei um pouco com o 12F675...

Além do código,voce precisa do Hardware...

tenho o hardware aqui, vou verificar sobre o comparador, o restante fiz tudo certo...

Postado

Eu não tenho certeza, mas acredito que todos os pics que possuem comparadores analogicos são desabilitados setando os últimos 3 bits do registrador CMCON. Alguns você deve também colocar todas as portas do conversor ad como digital.

Para ter certeza, é só dar uma olhada no datasheet.

Postado

agora uma duvida gritante para um iniciante... Vdd , Vcc, e Vss...

Vss e sempre o massa, terra, nivel logico zero certo???

Vdd e Vcc são sempre tensão positiva, nivel logico 1 ???

sera que estou certo ??? e que as vezes me confundo....

Postado

valeu, obrigado!!!

alguem sabe onde baixar gratis o livro "Desbravando o pic 16F628A"...

ja tentei varios links que dão erro quando vou abrir o arquivo... alguem tem um link que realmente de certo?

Postado
valeu cara!!! e que esse eu ja tenho, optei ate por imprimi-lo... obrigado pela dica

agora outro desafio!!! escrever no lcd com o pic 16F628A, ja tentei alguns codigos mas não obtive sucesso... to agora com o kit de desenvolvimento ACEPIC18 ... se alguem puder me ajudar

Postado
Eu tenho um código, mas está em asm.

não sei quase nada em assembly... acho que to com mais duvida mesmo na inicialização do pic e do lcd...

tipo assim: a inicialização do lcd não é igual para todos os pics???

e quanto ao 16F628A, o que fazer para trabalhar com ele e o lcd...

Postado

A inicialização do LCD é igual apara qualquer microcontrolador. Já quebrei muito a cabeça com drivers para LCD. Eu fiz um em assembly no modo 4-bits de comunicação, e foi o único que não me deu dor de cabeça.

Dependendo do compilador que você usa, ele já tem uma biblioteca para o controle do LCD.

Postado
http://www.4shared.com/office/ABA5B2ow/Desbravando_o_PIC_8_Edio_16f62.html

ai esta a apostila que disse que não achava do 628

mas surge um problema pra você ele ensina em assembly que você disse que não sabe quase nada

baixa a apostila do mulder fox

valeu mister, a apostila do mulder eu tenho, ja peguei aqui mesmo no forun a alguns dias... to recorrendo muito a ela , mas com dificuldades devido ser em assembly, agora o link citado por você não retornou nada sobre o 628...

to usando o mickro c versão 5.40, acho que a versão mais recente... o programa principal em assembly eu ate consigo ler e passar pra C, mas a inicialização do lcd, no mickroC que ta me esquentando a cabeça... e a inicialização do controlador, porque o programa que montei, compilou sem erros, gravou tudo ok, mas no kit (to usando um ACEPIC 18, ja ouviu falar??? )não executou nada... eis o codigo:

// LCD module connections

sbit LCD_RS at RA0_bit;

sbit LCD_EN at RA1_bit;

sbit LCD_D4 at RB4_bit;

sbit LCD_D5 at RB5_bit;

sbit LCD_D6 at RB6_bit;

sbit LCD_D7 at RB7_bit;

sbit LCD_RS_Direction at TRISA0_bit;

sbit LCD_EN_Direction at TRISA1_bit;

sbit LCD_D4_Direction at TRISB4_bit;

sbit LCD_D5_Direction at TRISB5_bit;

sbit LCD_D6_Direction at TRISB6_bit;

sbit LCD_D7_Direction at TRISB7_bit;

// End LCD module connections

char txt1[] = "Cristiano";

char txt2[] = "PIC 16F628A";

void main(){

CMCON = 0X07;

Lcd_Init(); // Inicialização do LCD

Lcd_Cmd(_LCD_CLEAR); // limpando o display

Lcd_Cmd(_LCD_CURSOR_OFF); // Cursor off desligado

Lcd_Out(1,1,txt1); // linha 1 , coluna 1 , primeiro texto

Lcd_Out(2,1,txt2); // linha 2 , coluna 1 , segundo texto

Delay_ms(2000);

}

tem erros no codigo???

obrigado pessoal...

Postado

Tente assim:

Delay_ms(200);//Dá um delay de 200ms antes de iniciar o display

Lcd_Init(); // Inicialização do LCD

Lcd_Cmd(_LCD_CLEAR); // limpando o display

Lcd_Cmd(_LCD_CURSOR_OFF); // Cursor off desligado

Lcd_Cmd(_LCD_TURN_ON);//Liga o display

Postado
mas a inicialização do lcd, no mickroC que ta me esquentando a cabeça... e a inicialização do controlador, porque o programa que montei, compilou sem erros, gravou tudo ok, mas no kit (to usando um ACEPIC 18, ja ouviu falar??? )não executou nada... eis o codigo:

Não vi erro no código, mas esqueceu um detalhe.

Onde está a configuração do TRISA e TRISB logo depois do CMCON, dizendo se os pinos serão entradas ou saídas :confused::confused::confused:

Tente aí e retorne com os resultados.

Abç.

Postado
Não vi erro no código, mas esqueceu um detalhe.

Onde está a configuração do TRISA e TRISB logo depois do CMCON, dizendo se os pinos serão entradas ou saídas :confused::confused::confused:

Tente aí e retorne com os resultados.

Abç.

beleza, vou fazer isso e retorno os resultados sim

valeu!!!!

beleza, vou fazer isso e retorno os resultados sim

valeu!!!!

não obtive resultados positivos... mas vou continuar tentando...

Postado
Já tentou o que eu disse no post anterior?

ja tentei sim, tambem não funcionou, mas como disse vou continuar tentando...

eu chego la.... vou gravar o codigo e tentar na protoboard com outro display...

Postado

pessoal, to precisando muito de ajuda, tava ate indo bem com o 16F877A, mas o 16F628A ta complicado pra mim... coisas tipo.... o 16F628A tem oscilador interno?? como usa-lo no mickroC ???

como trabalhar o comparador, habilitando e desabilitando...

to voltando para os leds e to tendo problemas com a inicalização do PIC16F628A... preciso da ajuda de vocês, uso o compilador MICKROC... a quem puder me ajudar, muito obrigado, quero iniciar pelos leds mesmo....

Postado
... o 16F628A tem oscilador interno??

Perfeitamente.

como usa-lo no mickroC ???

Pressione CTRL + Shift + E (com o aplicativo aberto e um novo projeto iniciado com o PIC16F628A e clock em 4MHz... este é o editor dos fuses)

Na opção "Oscillator Selection" escolha:

INTOSC oscillator: I/O function on RA6/OSC2/CLOCKOUT pin, I/O function on RA7/OSC1/CLOCKIN

como trabalhar o comparador, habilitando e desabilitando...

CMCON |= 0x07;

to voltando para os leds e to tendo problemas com a inicalização do PIC16F628A... preciso da ajuda de vocês, uso o compilador MICKROC... a quem puder me ajudar, muito obrigado, quero iniciar pelos leds mesmo....

Tente iniciar com o pedaço abaixo. Não esqueça do MCLR no editor dos fuses, se deixar ativado será necessário um resistor de pullup neste pino.

void main() {
CMCON |= 0x07; //desativa os comparadores
TRISA = 0x00; //tudo saidas no portA
TRISB = 0x00; //tudo saidas no portB
PORTA = 0; //portA desligado inicialmente
PORTB = 0; //portB desligado inicialmente
while(1){
//escreva algum código aqui.
}
}

Postado

vou tentar aqui e retorno os resultados... você ja me ajudou muito com o 12F675, lembra???

agora é o 16F... eu tava lendo algo sobre PCON, mas você não comentou nada, então acho que isso vai estar um pouco mais a frente né, e é melhor eu não apressar muito...kkkk

valeu obrigado!!!

Postado

pcon é um registrador

O registo PCON contém flags para diferenciar qual reset ira acontecer tipo diferenciar o que esta resetando o pic nunca usei ele nunca vi alguem usalo e acho que você também não vai usar não ele diferencia entre um Power-on reset, Reset MCLR externo,

WDT Reset ou um Reset Brown-out.

agora o link citado por você não retornou nada sobre o 628...

eu upei ele no 4shared é pra ta ai sim vou repostar o link depois

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

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!