Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouLevi de Almeida Rodrigues Alterado mais de 7 anos atrás
1
INTRODUÇÃO: MICROCONTROLADORES
2
MICROCONTROLADOR X MICROPROCESSADOR Baixa capacidade de processamento Freq. Operação em MHz Custo de USD 7,00 a 30,00 Aplicações mais restrita Alta capacidade de processamento Freq. Operação em GHz Custo de USD 200,00 Aplicações mais genéricas
3
O QUE É UM MICROCONTROLADOR? Componente integrado que contém em um único dispositivo todos os circuitos necessários para realizar um sistema digital completo e programável. COMPONETES INTERNOS DO MICROCONTROLADOR CONVERSOR AD RAM MEMÓRIA DE PROGRAMA OSCILADO INTERNO TEMPORIZADORES COMUNICAÇÃO SERIAL PORTAS DE I/O CPU
4
RECURSOS DO PIC 16F877 33 portas configuráveis (entradas/saídas) 15 interrupções Memória de programa de 8 K word Memória E2PROM (não volátil) 256 bytes Memória RAM com 368 bytes 3 timers (2x8 bits e 1x16 bits) Comunicações seriais: 8 Conversor analógico de 10 bits 2 comparadores analógicos 2 módulos CCP: Capture, compare e PWM
5
PARTES DE UM MICROCONTROLADOR REGISTRADOR Circuito eletrônico que memoriza (armazena) o estado de um byte, no qual será realizada a leitura/escrita nesse registrador.
6
REGISTRADOR DE FUNÇÃO ESPECIAL – SFR- Special function register Circuitos eletrônicos que controlam outros blocos menores, sendo responsáveis pelo funcionamento do microcontrolador (AD, TRISA, TRISB).
7
PORTAS DE ENTRADA/SAÍDA (I/O) Conexão física entre a CPU e o mundo exterior, podendo ser acessado para leitura ou escrita de um valor nesses pinos. Valor 0 – 0 volts Valor 1 – 5 volts
8
MEMÓRIA Circuito eletrônico utilizado para armazenar dados. Onde cada endereço de memória corresponde a uma posição. Podendo ser lido ou escrito os dados nessas posições.
9
CPU- UNIDADE CENTRAL DE PROCESSAMENTO Monitora e controla todos os processos dentro do microcontrolador. ULA- Unidade lógica e Aritmética responsável pelas operações lógicas e aritméticas. Decodificador de instrução- Reconhece as instruções de programa e faz funcionar os outros circuitos ACUMULADOR- É um registrador SFR responsável pela operação da ULA. Armazena todos os dados que são usados para executar uma operação, além dos resultados.
10
OSCILADOR Normalmente é utilizado um cristal de quartzo, para ter uma oscilação estabilizada. Sendo que os pulsos gerados pelo oscilador, possibilitam a operação síncrona de todos os circuitos do microcontrolador. As instruções não são executadas pelo frequência do oscilador, mas, algumas vezes mais lento, já que cada instrução é executada em vários passos.
11
TEMPORIZADOR E CONTADORES Para medir o tempo entre dois eventos, basta contar os pulsos enviados pelo oscilador. Clock_int = Clock_ext/4 Tempo_clock_interno = 1/Clock_int
12
FLUXOGRAMA AULA 2
13
DEFINIÇÃO É uma representação gráfica de um determinado processo, geralmente apresentado utilizando figuras geométricas normalizadas.
14
SÍMBOLOS UTILIZADOS NOS FLUXOGRAMAS Início / Fim do programa Decisão: Indica desvio na sequência lógica de execução do programa Processamento: qualquer operação com alteração do conteúdo de uma variável Linhas de fluxo: Indica a sequência das etapas e a direção do fluxo
15
EXEMPLO 1 Fazer um fluxograma para o seguinte processo. Ao pressionar um chave uma vez, acende-se um led, ao pressionar essa chave novamente, desliga esse led.
16
EXEMPLO 1 Fazer um fluxograma para o seguinte processo. Ao pressionar um chave uma vez, acende-se um led, ao pressionar essa chave novamente, desliga esse led.
17
AULA 3 INSTRUÇÕES UTILIZADAS NO MICROCONTROLADOR
18
TRASFERÊNCIA DE DADOS INSTRUÇÃODESCRIÇÃOFLAG AFETADO MOVLW kMove literal para WW = K- MOVWF fMove W para ff =W- MOVF f,dMove f para dd = fz CLRWLimpa WW =0z CLRF fLimpa ff =0z SWAPF f,dInverte o conteúdo entre as partes alta e baixa e guarda o resultado em d f(3:0),(7:4)=F(7:4),(3,0) f = registro entre 0 a 127 (posição de memória) w = registrador work (trabalho) b = bit utilizado pela operação (0 a 7) k = constante entre 0 a 255 d = resultado da operação d = 0, resultado é armazenado em w d = 1, resultado é armazenado no próprio registrador
19
LÓGICAS E ARITMÉTICAS INSTRUÇÃODESCRIÇÃOFLAG AFETADO ADDLW kAdiciona literal a WW= k + WC,DC,Z ADDWF f,dAdiciona W a f e guarda em dd=W + fC,DC,Z SUBLW kSubtrai W de literalW=k - WC,DC,Z SUBWF f,d Subtrai W de f e guarda em dd=k - WC,DC,Z ANDLW kLógica “E” entre k e WW=K AND WZ ANDWF f,dLógica “E” entre f e W e resultado é guardado em dd= f AND WZ IORLW kLógica “OU” entre k e WW=K OU WZ IORWF f,dLógica “OU” entre f e W e o resultado é guardado em dd=K OU WZ XORLW kLógica “OU EXCLUSIVO” entre k e WW=K XOR WZ XORWF f,dLógica “OU EXCLUSIVO” entre f e W, resultado em dd=f XOR WZ INCF f,dIncrementa ff=f +1Z DECF f,dDecrementa ff=f -1Z RLF f,dRotaciona f 1 bit para a esquerda, resultado em dC RRF f,dRotaciona f 1 bit para a direita, resultado em dC COMPF f,dComplementa f (porta lógica NOT), resultado em dZ
20
RLF e RRF
21
DIRECIONAMENTO DO PROGRAMA INSTRUÇÃODESCRIÇÃOFLAG AFETADO BTFSC f,dTesta o bit do registrador e pula a próxima linha se ele for zero Salta se f(b) = 0 BTFSS f,dTesta o bit do registrador e pula a próxima linha se ele for 1 Salta se f(b) = 1 DECFSZ f,dDecrementa f, e pula próxima linha se der zerod=f – 1 Salta se f(b) = 0 INCFSZ f,dIncrementa f e pula a próxima linha de ser zerod=f + 1 Salta se f(b) = 0 GOTO RVai para a rotina RR PC CALL RExecuta a subrotina R (retorna uma linha abaixo ao encontrar o comando RETURN, RETLW) PC TOS R PC RETURNRetorno de subrotinaTOS PC RETLW kRetorno com literal em WK W TOS PC RETFIERetorno de interrupçãoTOS PC 1 GIE
22
OPERAÇÕES SOBRE BITS INSTRUÇÃODESCRIÇÃOFLAG AFETADO BCF f,d Limpa o bit d do registrador fd=0- BSF f,dSeta o bit d do registrador fd=1- OUTRAS INSTRUÇÕES INSTRUÇÃODESCRIÇÃOFLAG AFETADO NOP Nenhuma operação (perde um ciclo de máquina) CLRWDTLimpa o temporizador do watchdog WDT=0 TO=1 PD=1 TO, PD SLEEPModo de economia de energiaWDT=0 TO=1 PD=0 TO, PD
23
EXEMPLOS TRASFERÊNCIA DE DADOS SINTAXE: MOVLW K ---------------------------------------------------- MOVLW B'00001001' ---------------------------------------------------- ANTES DA INTRUÇÃO W=? APÓS A INSTRUÇÃO W=00001001 SINTAXE: MOVWF f ---------------------------------------------------- MOVWF OPTION ---------------------------------------------------- ANTES DA INSTRUÇÃO W=0x9 ANTES DA INSTRUÇÃO OPTION=? ---------------------------------------------------- APÓS A INSTRUÇÃO W=0x9 APÓS A INSTRUÇÃO OPTION=0X9 SINTAXE: MOVF f,d ---------------------------------------------------- MOVF TRISA,0 ---------------------------------------------------- ANTES DA INSTRUÇÃO TRISA=0x7 ANTES DA INSTRUÇÃO W=0x9 ---------------------------------------------------- APÓS A INSTRUÇÃO TRISA=0x7 APÓS A INSTRUÇÃO W=0x7 Move valor para W Move o conteúdo do W para registrador f Move o conteúdo do registrador para W MOVLW K k W MOVWF f w f MOVF f,d f W
24
SINTAXE: SWAPF f,d ----------------------------------------------------------------- SWAPF PORTB ----------------------------------------------------------------- ANTES DA INSTRUÇÃO PORTB=B'00001001' ----------------------------------------------------------------- APÓS A INSTRUÇÃO PORTB=B'10010000' EXEMPLOS TRASFERÊNCIA DE DADOS SINTAXE: CLRW --------------------------------------------- CLRW --------------------------------------------- ANTES DA INTRUÇÃO W=? --------------------------------------------- APÓS A INSTRUÇÃO W=0x00 SINTAXE: CLRF f -------------------------------------------------------- CLRF PORTA -------------------------------------------------------- ANTES DA INTRUÇÃO PORTA=? -------------------------------------------------------- APÓS A INSTRUÇÃO PORTA=?=0x00
25
EXEMPLOS LÓGICAS E ARITMÉTICAS SINTAXE: ADDLW k ---------------------------------------------------- MOVLW.12 ADDLW.6 ---------------------------------------------------- ANTES DA INTRUÇÃO W=? APÓS A INSTRUÇÃO W=00010010
26
MAPA DE MEMÓRIA E REGISTRADORES ESPECIAIS AULA 5
27
MAPA DE MEMÓRIA
28
ORGANIZAÇÃO DA MEMÓRIA SELEÇÃO DO BANCO DE MEMÓRIA
29
REGISTRADOR TRISA e PORTA TRIS serve para configurar um pino como entrada/saída 0 = Output (saída) 1 = Input (entrada)
30
REGISTRADOR TRISA e PORTA # DEFINE BANK1BSF STATUS,RP0 BANK1 MOVLW B'xxx10x01' MOVWF TRISA CONFIGURAÇÃO: BANK1 PROGRAMA: BANK0
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.