Ir ao conteúdo
  • Cadastre-se

Contador de 1 a 8 com pic16f84


valdenir pv

Posts recomendados

Ola pesual é a primeira vez posto neste forum. vocês estão de parabens gostei muito do forum.

Eu gostaria que alguen podesse me ajudar me mandace ou me esplicace como fazer um programa de um contador de 1 a 8, con tecla UP & DOWN com displai de 7 segmentos.

Des-de-já agradeço mui mesmo.......

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

É difícil explicar como funciona um programa mesmo que seja simples, se você é leigo em programação e não tem qualquer experiência em MCs.

No seu caso, além das rotinas de leitura de portas e incremento/decremento, ainda tem a conversão binário ou BCD para 7 segmentos.

O programa é simples. Complicado é explicar.

Link para o comentário
Compartilhar em outros sites

ola pessoal sou eu d novo, eu tenho este programa aqui ele vai de 0 a 9 mais eu preciso que ele volte pres. outro botão quais as instruções eu devo somar a esse programa para que ele suba ou dessa quando eu precisar....

des-de-já estou agradecendo

;Projeto: Contando de 0 a 9 no display de segmentos

List P = 16F84

;#include <p16F84.inc>

;__CONFIG 1Bh _CP_OFF & _PWRTE_ON & _WDT_OFF & _RC_OSC

ORG 0 ;Este é o início da memória para o programa.

SetUp BSF 03,5 ;Vá para Bank 1

CLRF 06 ;Torna saída todas as portas em B

MOVLW 01 ;Carrega 0000 0001 em W

MOVWF 05 ;Torna RA0 entrada

BCF 03,5 ;Vá para Bank 0 – a area de memória para o programa

CLRF 1F ;Limpa o arquivo de botão-pressionado

GOTO Main

Table ADDWF 02h,1 ; Soma W ao Contador do Programa p/ criar um salto.

RETLW 3fh ;0 formato= gfedcba

RETLW 06h ;1 Se qualquer valor da tabela iniciar com uma letra

RETLW 5Bh ;2 ela deve ser precedida por "0." E.g: 0A3h, 0FFh, 0CCh

RETLW 4Fh ;3

RETLW 66h ;4

RETLW 6Dh ;5

RETLW 7Dh ;6

RETLW 07h ;7

RETLW 7Fh ;8

RETLW 6Fh ;9

Delay NOP ;Cria o delay de 1ms para debounce

DECFSZ 1A,1

GOTO Delay

RETURN

Main MOVLW 0FFh ;1E tem valor do contador. Prox. incremento: file=1

MOVWF 1E ;O incremento seguinte fará file=0

Main1 BTFSS 05,0 ;Testar a linha de entrada no porto A

GOTO Main2 ;Botão não pressionado

CALL Delay ;Debounce para o botão

BTFSC 1F,0 ;Botão pressionado pela primeira vez?

GOTO Main1 ;Botão já pressionado

INCF 1E,1 ;Primeiro acionamento do botão. Incrementa contador.

MOVLW 0A ;Has count reached ten?

XORWF 1E,0 ;Compare arquivo 1E com dez

BTFSC 03,2 ;Verifica a flag zero no arquivoStatus

GOTO Main ;A contagem alcançou dez

MOVF 1E,0 ;Copia o contador em W

CALL Table ;W retornará com o valor do display

MOVWF 06 ;Exibe o valor no display

BSF 1F,0 ;Liga a flag botão pressionado

GOTO Main1 ;Loop Main1

Main2 CALL Delay ;Botão não pressionado. Chama Delay

BCF 1F,0 ;Limpa a flag botão-pressionado

GOTO Main1 ;Loop para Main1

END ;Informa ao assembler para encerrar o programa

Link para o comentário
Compartilhar em outros sites

  • 3 semanas depois...

Ola pessoal.... Preciso da ajuda de vocês em relação ao ares (proteus) pois nao consigo montar altomaticamente a placa de circuito inpresso, consigo apenas manualmente editando as trilhas...

Queria saber o q tenho q fazer depois q o esquema estiver pronto e testado no "isis para chegar até o lai-out da placa e como ligar a alimentação e terra nos CIs, por q no esquema do ISIS os CIs não tem o pino positivo e nem o negativo....

Des-de já estou muito agradecido....my.php?image=imagemqv6.jpg

Link para o comentário
Compartilhar em outros sites

Ola pessoal.... Preciso da ajuda de vocês em relação ao ares (proteus) pois nao consigo montar altomaticamente a placa de circuito inpresso, consigo apenas manualmente editando as trilhas...

Queria saber o q tenho q fazer depois q o esquema estiver pronto e testado no "isis para chegar até o lai-out da placa e como ligar a alimentação e terra nos CIs, por q no esquema do ISIS os CIs não tem o pino positivo e nem o negativo....

Des-de já estou muito agradecido....my.php?image=imagemqv6.jpg

Trabalhei (ou melhor fucei...:lol:)no proteus umas 5 vezes.... pelo q me lembro o automatico dele e no roetador electra!

Eu utilizo o Eagle e lá, para aparecer os pinos de alimentação de alguns CI's clico numa opção chamada Invoke!

Espero q te ajude um pouco!

Link para o comentário
Compartilhar em outros sites

Valeu galera.... Sobre o contador de 1 a 8, eu ja resolvi, vol utilizar o 40193 que o nosso amigo Delphing citou.

O que estou precisando que me ajudem é em relação ao PROTEUS, minhas duvidas são as seguintes;

como rotear componentes para criar o PCB no ARESe como fazer para ligar os pinos de alimentação e terra no ISIS para que quando eu for rotear as trilhas os pinos terra e positivo dos CIs ja ficarem todos ligados. mui obrigado a todos.......

Link para o comentário
Compartilhar em outros sites

:unsure:Como rotear componentes para criar o PCB no ARES, como rotear trilhas e colocar jumpers e como fazer para ligar os pinos de alimentação e terra no ISIS para que quando eu for rotear as trilhas os pinos terra e positivo dos CIs ja ficarem todos ligados. mui obrigado a todos.......

Link para o comentário
Compartilhar em outros sites

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...