Exercicio compementar
Led Apaga/Acende
Descrição do Projeto:
O LED conectado a porta Rb7 acende e apaga no ciclo do microcontrolador. O microcontrolador está conectado a um oscilador de 4 MHz de freqüência. O reset do programa é realizado ao se desligar a fonte de alimentação do microcontrolador. Usou-se o PIC16F84.
Diagrama do circuito do microcontrolador e componentes eletrônicos.
Abaixo segue o diagrama do circuito para montagem elétrica.
[pic]
Diagrama de fluxo do projeto
[pic]
Estrutura do programa e explicação dos comandos
list p=pic16f84a ; determina qual o microcontrolador que será usado.
INCLUDE ;a inclusão deste arquivo é um padrão da Microchip ;Ele contem definições de endereços onde acessamos os registradores pelo nome.
__CONFIG _XT_OSC & _CP_OFF & _WDT_OFF & _PWRTE_ON ; configuração de algumas opções do microcontrolador. ; _cp_off é o code protect, bloqueia ou não a leitura do código depois de gravado. ( neste caso estamos desbloqueado ) ; _pwrte _on significa que temos um circuito RC ligado ao pino de reset internamente, isso permite que ao ligar a alimentação ; o Microcontrolador espere alguns milissegundos antes de iniciar, permite a estabilização da tensão. ; _xt_osc habilita o tipo do oscilador de cristal de 4MHz ; _wdt_off informa que o watchdog está desligado ( o watchdog serve como interruptor do programa caso ele tenha algum erro)
clrf PORTB ; FAZ TODOS OS BITS DE PORTB=ZERO bsf STATUS,RP0 ; VAI PARA O BANCO 1 DA MEMORIA RAM clrf TRISB ; FAZ A PORTB TODA DE SAIDA (TRISB 1 ENTRADA, 0 SAIDA) bcf STATUS,RP0 ; VOLTA PARA O BANCO 0 DA RAM
loop ; REPETIÇÃO
bsf PORTB,7 ; SETA 1 NA PORTB 7 bcf PORTB,7 ; SETA 0 NA PORTB 7
goto loop ; VAI PARA LOOP
end
[pic]
Anexo os códigos de .err, .hex e