Post on 19-Feb-2016
description
Microcontrolador
Microcontrolador
SENAI-SP – INTRANET AA-376-08
Curso Técnico em Mecatrônica - Microcontrolador © SENAI-SP, 2005 Trabalho organizado e atualizado a partir de conteúdos extraídos da Intranet por Meios Educacionais da Gerência de Educação e CFPs 1.01, 1.09, 1.23, 3.01, 4.02, 5.01 e 6.01 da Diretoria Técnica do SENAI-SP. Equipe responsável
Coordenação Airton Almeida de Moraes Elaboração Luís Carlos Ribeiro dos Santos
Revisão técnica Álvaro Mamoru Horikoshi Revisão de texto Marcos Luesch Reis
Capa José Joaquim Pecegueiro
SENAI Serviço Nacional de Aprendizagem Industrial Departamento Regional de São Paulo Av. Paulista, 1313 - Cerqueira César São Paulo - SP CEP 01311-923
Telefone
Telefax SENAI on-line
(0XX11) 3146-7000 (0XX11) 3146-7230 0800-55-1000
Home page senai@sp.senai.br http://www.sp.senai.br
Microcontrolador
SENAI-SP – INTRANET AA-376-08
Sumário
Microcontrolador PIC 5 Ler e escrever nos registradores 19 Manipular registradores 21 Ler e escrever nos dispositivos de entrada e saída 23 Programar rotina de tempo 25 Programar pisca-pisca 27 Programar seqüencial com salto incondicional 29 Programar seqüencial com salto condicional 31 Programar contador de 0 a 9 33 Programar contador de 0 a 99 35 Programar contador crescente e decrescente 37 Gerar onda quadrada 39 Gerar PWM 41 Referência bibliográfica 43
Microcontrolador
SENAI-SP – INTRANET AA-376-08
Microcontrolador
SENAI-SP – INTRANETAA-235-05 5
Microcontrolador PIC
Este capítulo apresenta uma visão geral sobre microcontroladores de 8 bits PIC.Maiores informações podem ser obtidas com o estudo do datasheet do componente eda literatura disponível em português.
Histórico
A empresa Microchip, fundada em 1989, com sede no estado de Arizona, nos EstadosUnidos, fabrica, dentre vários componentes eletrônicos, uma linha demicrocontroladores que vem se popularizando por sua versatilidade e aceitação portécnicos e engenheiros eletrônicos.
O microcontrolador PIC incorpora tecnologia RISC, e é muito disseminado devido àfacilidade de uso que oferece. Possui, internamente, um pequeno set de instruções ememória flash EEPROM para gravação do programa desenvolvido pelo projetista.
Um dos mais populares microcontroladores dessa linha é o PIC16F84, devido ao seubaixo custo e à enorme quantidade de informações disponíveis na Internet.
O PIC16F84 é um microcontrolador com apenas alguns periféricos internos. Nãocontém, por exemplo, interface serial e conversor AD. Entretanto, conhecê-lo éimportante porque os sets de instruções da família PIC são os mesmos para todos oscomponentes da linha. Portanto, se souber programar um 16F84 saberá tambémprogramar um 16F877. Para tanto, basta consultar o datasheet do 16F877 e verificarquais periféricos são acrescidos nele em relação ao 16F84.
Microcontrolador
SENAI-SP – INTRANETAA-235-056
A seguir, apresentamos algumas figuras extraídas do datasheet do 16F84. Asidentificações são em inglês. Não foram traduzidos para que você se habitue comtermos técnicos nesse idioma, já que se tornaram universais para quem trabalha comeletrônica.
Principais características do PIC16F84• Memória de programa Flash (1.024 linhas de 14bits);• memória de dados 68 bytes para armazenamento temporário (GPR);• memória de dados 22 bytes para funções especiais (SFR);• memória EEPROM 64 bytes;• 13 Entradas/Saídas que podem ser configurados individualmente;• corrente máxima de entrada 25mA por pino;• corrente máxima de saída 20mA por pino;• 4 tipos diferentes de interrupção;• code-protection;• modo de economia (sleep);• watchdog timer (WDT).
Pinos Função
Vdd e Vss Alimentação do CI
RA0 a RA4 PortA com 5 bits
RB0 a RB7 PortB com 8 bits
OSC1/CLKIN Conexão com cristal oscilador / entrada de clock externo
OSC2/CLKOUT Conexão com cristal oscilador / no modo RC gera clock de 1/4 freqosc
MCLR Reset e pino de programação
Microcontrolador
SENAI-SP – INTRANETAA-235-05 7
ArquiteturaA arquitetura interna do PIC é do tipo Harvard, e trabalha com dois barramentos, umde 8 bits para dados e outro para instrução que pode ter 12,14 ou 16 bits. Isso dá aessa arquitetura uma velocidade maior em relação aos microcontroladores dearquitetura Von Neumam, considerando-se o cristal oscilador.
Observe abaixo o diagrama de blocos do PIC16F84:
Memórias no PIC16F84
O PIC16F84 possui 3 memórias internas:• Memória de programa
- do tipo ROM de 1.024 linhas de 14 bits, onde será gravado o programa dousuário;
Microcontrolador
SENAI-SP – INTRANETAA-235-058
• Memória de dados;- 128 bytes de memória RAM dividida em 2 grupos: GPR, registradores de uso
geral, para dados temporários e os SFR, registradores de função especial,destinados à configuração e ao uso do microcontrolador;
• Memória de dados permanente.- 64 bytes do tipo EEPROM para armazenamento de dados de trabalho, mesmo
após a retirada da alimentação do dispositivo.
Tipos de memória de programa
Basicamente existem 5 tipos de memória de programa.ROM – Os dados são gravados no momento de sua fabricação, e não podem serexcluídos.
OTP – (One Time Program) – Com auxilio de um gravador e um PC, essa memóriapode ser gravada uma única vez, e os dados armazenados não podem ser excluídos.
EPROM – Com auxilio de um gravador e um PC, os dados podem ser gravados eexcluídos várias vezes, submetendo o chip por alguns minutos a raios ultravioleta,através de uma janela de cristal na face superior do chip.
EEPROM – Neste tipo de memória, os dados podem ser gravados e excluídoseletricamente.
FLASH – Essa memória é similar à EEPROM, com auxílio de um programadorconectado ao PC, o usuário pode gravar e excluir dados.
Memória de Dados
O microcontrolador PIC 16F84 tem implementado dois bancos de memória de 128bytes cada, e somente as 80 primeiras posições podem ser acessadas, ou seja, de00H a 4FH.
As 12 primeiras posições, de 00H a 0BH, estão reservadas para uso dos registradoresde uso especial, os SFR (Special Function Register), e o restante para uso geral GRP(General Purpose Register).
Microcontrolador
SENAI-SP – INTRANETAA-235-05 9
Os SFR controlam o funcionamento dos recursos internos dos microcontroladores, queatuam como registro de controle programável.
Os GPRs correspondem as 68 posições finais de cada banco que são compreendidasentre 0CH a 4FH, e são utilizados como registradores de uso geral, mapeados nobanco 0 e espelhado no banco 1.
Microcontrolador
SENAI-SP – INTRANETAA-235-0510
Unidade Lógica Aritmética (ULA)
As operações lógicas e aritméticas são realizadas na ULA, e os resultados podem serarmazenados em W ou em uma posição de memória GPR.
Existe um registrador interno chamado de registrador W (work). Esse registrador tem amesma função do acumulador em outros microcontroladores. W é sempre envolvidocom as operações ocorridas na ULA.
Ciclo de MáquinaO microcontrolador PIC executa uma instrução ao final de 4 ciclos de clock, que échamado de ciclo de máquina. Algumas instruções gastam mais de um ciclo demáquina para serem executadas.
Portando, se tivermos ligado ao PIC um cristal de 4MHz teremos um ciclo de máquinacom uma freqüência de 1MHz.
Como a maioria das instruções é executada em 1 ciclo de máquina, temos umainstrução ocorrendo a cada 1µs. Isso nos dá 1 milhão de instruções em 1 segundo.Para designar milhões de instruções por segundo na área de microcontoladores aunidade usada é MIP. Podemos dizer, portanto, que o PIC, está trabalhando em 1 MIP.
Microcontrolador
SENAI-SP – INTRANETAA-235-05 11
Conhecendo os registradores SFR
Registrador STATUSEste registrador mostra os estados da ULA (Unidade Lógica Aritmética), e seleciona osbancos de memória.
Registrador: STATUS Endereços: 03h e 83hBit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0R/W R/W R/W R R R/W R/W R/WIRP RP1 RP0 /TO /PD Z DC C
IRP: Seletor de banco de memória:0 = Banco 0 e 1 ( 00h – FFh ).1 = Banco 2 e 3 ( 100h – 1FFh ).
Como esse PIC não possui os bancos 2 e 3, será mantido o status do IRP sempre em0.
RP1 e RP0: Seletor de banco de memória:00 = Banco 0 (00h – 7Fh ).01 = Banco 1 (80h – FFh ).10 = Banco 2 (100h – 17Fh ).11 = Banco 3 (180h – 1FFh ).
Cada banco possui 128 bytes, porém o PIC 16F84, não possui os bancos 2 e 3, sendomantido RP1 sempre em 0.
/TO: Time-out:0 = Ocorreu um estouro de Watch Dog Time (WDT).1 = Ocorreu um power up ou foram executadas as instruções de CLRWDT ou SLEEP.
/PD: Power down:0 = Indica que a instrução SLEEP foi executada.1 = Ocorreu um power up ou a instrução CLRWDT foi executada.
Z: Zero:0 = Indica que a última operação lógica ou aritmética não foi zero.1 = Indica que a última operação lógica ou aritmética resultou em zero.
Microcontrolador
SENAI-SP – INTRANETAA-235-0512
DC: Digit Carry / Borrow0 = A última operação da ULA não ocasionou um estouro de dígito.1 = A última operação da ULA ocasionou um estouro (carry) entre os bits 3 e 4, istoquando se trabalha com palavras de 4 bits.
C: Carry / Borrow:0 = A última operação da ULA não ocasionou um estouro (carry).1 = A última operação da ULA ocasionou um estouro (carry) no bit mais significativo, oresultado ultrapassou os 8 bits disponíveis.
Registrador OPTION
Este registrador configura uma série de opções internas para operação domicrocontrolador. Ele será referenciado em nossos programas pelo nome OPTION-REG.
Registrador: OPTION Endereços: 81hBit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0R/W R/W R/W R/W R/W R/W R/W R/W
/RBPU INTEDG TOCS TOSE PSA PS2 PS1 PS0
/RBPU: Habilitação dos pull-ups internos do PORTB:0 = Pull-ups habilitados para todos os pinos do PORTB, configurados como entrada.1 = Pull-ups desabilitados.
INTEDG: Configuração de interrupção externa no pino RB0:0 = Interrupção reconhecida na borda de descida.1 = Interrupção reconhecida na borda de subida.
TOCS: Configuração de clock para o TMR0:0 = TMR0 será incrementado pelo clock interno da máquina.1 = TMR0 será incrementado externamente pelo pino RA4/TOCKI.
TOSE: Configuração da entrada de clock externo no pino RA4/TOCKI para o TMR0:0 = O incremento ocorrerá na borda de subida.1 = O incremento ocorrerá na borda de descida.
Microcontrolador
SENAI-SP – INTRANETAA-235-05 13
PSA: Aplicação do prescaler:0 = Será aplicado no TMR0.1 = Será aplicado no WDT.
PS2, PS1 e PS0: Configuração do prescaler:
Bits 2,1,0 TMR0 WDT000 1:2 1:1001 1:4 1:2010 1:8 1:4011 1:16 1:8100 1:32 1:16101 1:64 1:32110 1:128 1:64111 1:256 1:128
O TMR0 é um contador de 8 bits que pode ser incrementado pelo clock interno damáquina ou por um sinal externo, estourando a cada 256µs, quando utilizado o clockinterno de 1µs. O estouro desse contador gera uma interrupção independente doprograma que esta sendo executado.
Para aumentar o tempo em que ocorrerá um estouro, utilizamos o prescaler daseguinte forma:• Se o prescaler estiver configurado em 1:4, significa que o TMR0 só será
incrementado a cada 4µs, portando o estouro só ocorrerá em 1024µs.
O WDT é um contador interno que estoura a cada 18ms sem o uso do prescaler, o queocasiona um reset no microcontrolador. A mesma analogia do TMR0 podemos aplicarao WDT. Se o prescaler estiver em 1:4 o contador estourará em 72ms.
Microcontrolador
SENAI-SP – INTRANETAA-235-0514
Registrador INTCON
Este registrador configura e identifica as interrupções.
Registrador: INTCON Endereços: 0Bh e 8BhBit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0R/W R/W R/W R/W R/W R/W R/W R/WGIE EEIE TOIE INTE RBIE TOIF INTF RBIF
GIE: Habilitação geral das interrupções:0 = Nenhuma interrupção será tratada.1 = As interrupções habilitadas serão tratadas individualmente.
EEIE: Interrupção de final de escrita na EEPROM:0 = A interrupção não será tratada.1 = A interrupção será tratada.
TOIE: Interrupção por TMR0:0 = A interrupção não será tratada.1 = A interrupção será tratada.
INTE: Interrupção externa no pino RB0:0 = A interrupção não será tratada.1 = A interrupção será tratada.
RBIE: Interrupção por mudanças de estados nos pinos RB4 a RB7:0 = A interrupção não será tratada.1 = A interrupção será tratada.
TOIF: Identificação de estouro do TMR0:0 = A interrupção não ocorreu.1 = A interrupção ocorreu.
INTF: Identificação da interrupção externa no pino RB0:0 = A interrupção não ocorreu.1 = A interrupção ocorreu.
Microcontrolador
SENAI-SP – INTRANETAA-235-05 15
RBIF: Identificação da interrupção por mudança de estado nos pinos RB4 a RB7.0 = A interrupção não ocorreu.1 = A interrupção ocorreu.
Registradores PCL e PCLATH
O PCL é um registrador que armazena os 8 bits menos significativos do PC (ProgramCounter) e o PCLTH armazena os 5 bits mais significativos, no qual é indicada apróxima linha de programa a ser executada.
Esses registradores são controlados diretamente pelo hardware interno domicrocontrolador, não sendo necessário acessá-los pelo programa. No entanto, essesregistradores podem ser alterados pelo programa, mas isso deve ser feito com muitacautela, para que o sistema não se perca.
Registradores TRISA e TRISB
Esses registradores permitem configurar os pinos das portas como entrada ou comosaída.
Registrador: TRISA Endereços: 85hBit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
- - - R/W R/W R/W R/W R/W- - - RA4 RA3 RA2 RA1 RA0
Registrador: TRISB Endereços: 86hBit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0R/W R/W R/W R/W R/W R/W R/W R/WRA7 RA6 RA5 RA4 RA3 RA2 RA1 RA0
Microcontrolador
SENAI-SP – INTRANETAA-235-0516
Registradores PORTA e PORTB
Os estados lógicos dessas portas podem ser acessados diretamente em duasposições distintas. Quando o pino desta porta está configurado como entrada eefetuamos a sua leitura, estaremos lendo o nível lógico aplicado no pino, e quandoestá configurado como saída podemos alterar seu valor, escrevendo diretamente no bitselecionado.
Registrador: PORTA Endereços: 05hBit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
- - - R/W R/W R/W R/W R/W- - - RA4 RA3 RA2 RA1 RA0
Registrador: PORTB Endereços: 06hBit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0R/W R/W R/W R/W R/W R/W R/W R/WRA7 RA6 RA5 RA4 RA3 RA2 RA1 RA0
Os registradores EEADR, EEDATA, EECONS são utilizados para leitura e escrita daEEPROM interna do PIC 16F84. Essa é uma memória não volátil, que possui 64posições de 8 bits, e que mantém os dados armazenados, mesmo quando o sistema édesligado.
Os registradores FSR e INDF são utilizados para acessar indiretamente uma posiçãode memória, como se fosse um ponteiro.
Registrador: FSR Endereços: 04h e 84hBit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0R/W R/W R/W R/W R/W R/W R/W R/W
Ponteiro para endereçamento indiretoRegistrador: INDF Endereços: 00h e 80h
Valor do endereçamento indireto
Microcontrolador
SENAI-SP – INTRANETAA-235-05 17
Construção dos nomes das instruções
O nome de uma instrução é composto por uma função e uma ação, conforme segue aseguir: INCFSZ = Incrementa (INC) o registrador (F) e salta (Skip) se o resultado forzero (Z)
Resumo do set de instruções
Podemos dividir as 35 instruções em quatro grupos que realizam:• operações com registradores,• operações com valores literais,• operações com bits;• operações de controle.
Operações com RegistradoresInstrução Argumento Descrição
ADDWF f,d Soma W e f, e guarda o resultado em d.ANDWF f,d Lógica Ë entre W e f, guarda o resultado em d.CLRF f Limpa o registrador f.COMF f,d Calcula o complemento de f, guarda o resultado em d.DECF f,d Decrementa f e guarda o resultado em d.DECFSZ f,d Decrementa f, guarda o resultado em d, e salta a
próxima instrução se o resultado for zero.INCF f,d Incrementa f e guarda o resultado em d.INCFSZ f,d Incrementa f, guarda o resultado em d, e salta a
próxima instrução se o resultado for zero.IORWF f,d Operação lógica OU entre W e f, guardando o
resultado em d.MOVF f,d Move f para d (cópia).MOVWF f Move W para f (cópia).RLF f,d Rotaciona f 1 bit para esquerda.RRF f,d Rotaciona f 1 bit para direita.SUBWF f,d Subtrai W de f (f-W), guarda o resultado em d.SWAPF f,d Executa uma inversão entre as partes alta e baixa de f,
guardando o resultado em d.XORWF f,d Operação lógica ou exclusivo entre W e f, guarda o
resultado em d.
Microcontrolador
SENAI-SP – INTRANETAA-235-0518
Operações com literaisInstrução Argumento Descrição
ADDLW K Soma k com W, guarda o resultado em W.ANDLW K Lógica E entre W e k, guarda o resultado em W.IORLW K Lógica OU entre W e k, guarda o resultado em W.MOVLW K Move k para W.SUBLW K Subtrai W de k (k-W), guarda o resultado em W.XORLW K Lógica OU exclusiva entre W e k, guarda o resultado
em W.
Operações com bitsInstrução Argumento Descrição
BCF f,b Impõe 0 (zero) ao bit b do registrador f.BSF f,b Impõe 1 (um) ao bit b do registrador f.BTFSC f,b Testa o bit b do registrador f, e salta a próxima
instrução se ele for 0 (zero).BTFSS f,b Testa o bit b do registrador f, e salta a próxima
instrução se ele for 1 (um).
Operações de controleInstrução Argumento Descrição
CLRW - Limpa o registrador W.NOP - Gasta um ciclo de máquina sem executar nada.CALL R Chama uma sub-rotina R.CLRWDT - Limpa o registrador WDT para não ocorrer o reset.GOTO R Desvia para o ponto R, mudando o PC.RETFIE - Retorna de uma interrupção.RETLW K Retorna de uma rotina, com K em W.RETURN - Retorna de uma rotina sem afetar W.SLEEP - O PIC entra em modo sleep, para economia de
energia.
Microcontrolador
SENAI-SP – INTRANETAA-235-05 19
Ler e escrever nosregistradores
O objetivo desse ensaio é ler e escrever valores literais em hexadecimal (dados) nosregistradores internos do microprocessador.
Procedimentos
1. Fazer fluxograma com a lógica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar e executar o programa.
4. Ler o conteúdo dos registradores internos e comparar com o valor armazenado.
Microcontrolador
SENAI-SP – INTRANETAA-235-0520
Microcontrolador
SENAI-SP – INTRANETAA-235-05 21
Manipular registradores
O objetivo desse ensaio é manipular dados entre os registradores internos domicroprocessador, realizando a transferência de dados de um registrador para outro.
Procedimentos
1. Fazer fluxograma com a lógica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar e executar o programa.
4. Ler o conteúdo dos registradores internos e comparar com o valor armazenado.
Microcontrolador
SENAI-SP – INTRANETAA-235-0522
Microcontrolador
SENAI-SP – INTRANETAA-235-05 23
Ler e escrever nosdispositivos de entrada e
saída
O objetivo desse ensaio é manipular dados entre a CPU e os dispositivos deentrada/saída.
Procedimentos
1. Fazer fluxograma com a lógica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.
Microcontrolador
SENAI-SP – INTRANETAA-235-0524
Microcontrolador
SENAI-SP – INTRANETAA-235-05 25
Programar rotina de tempo
O objetivo desse ensaio é elaborar uma rotina de tempo, utilizando comandos de testede byte, incremento, decremento e salto condicional.
Procedimentos
1. Fazer fluxograma com a lógica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.
Microcontrolador
SENAI-SP – INTRANETAA-235-0526
Microcontrolador
SENAI-SP – INTRANETAA-235-05 27
Programar pisca-pisca
O objetivo desse ensaio é elaborar um pisca-pisca com um conjunto de LEDsconectados a um dispositivo de saída utilizando subrotinas de tempo.
Procedimentos
1. Fazer fluxograma com a lógica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.
Microcontrolador
SENAI-SP – INTRANETAA-235-0528
Microcontrolador
SENAI-SP – INTRANETAA-235-05 29
Programar seqüencial comsalto incondicional
O objetivo desse ensaio é rotacionar para direita e para esquerda o dado armazenadoem um registrador interno da CPU sendo transferido para um conjunto de LEDsconectados na saída, utilizando salto incondicional.
Procedimentos
1. Fazer fluxograma com a lógica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.
Microcontrolador
SENAI-SP – INTRANETAA-235-0530
Microcontrolador
SENAI-SP – INTRANETAA-235-05 31
Programar seqüencial comsalto condicional
O objetivo desse ensaio é elaborar um programa que teste um bit em um dispositivo deentrada e rotacione um dado em um registrador interno da CPU para direita ou paraesquerda, mostrando o resultado em um dispositivo de saída por meio de um conjuntode LEDs, utilizando comandos de salto condicional.
Procedimentos
1. Fazer fluxograma com a lógica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.
Microcontrolador
SENAI-SP – INTRANETAA-235-0532
Microcontrolador
SENAI-SP – INTRANETAA-235-05 33
Programar contador de 0 a 9
O objetivo desse ensaio é elaborar um contador de 0 a 9, mostrando o resultado emum conjunto de LEDs conectado à saída, utilizando comandos de incremento,comparação de byte e salto condicional.
Procedimentos
1. Fazer fluxograma com a lógica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.
Microcontrolador
SENAI-SP – INTRANETAA-235-0534
Microcontrolador
SENAI-SP – INTRANETAA-235-05 35
Programar contador de 0 a 99
O objetivo desse ensaio é elaborar um contador de 0 a 99, mostrando a dezena nosquatro LEDs mais significativos e a unidade nos quatro LEDs menos significativos,utilizando comandos de incremento, comparação de byte, salto condicional eoperações lógicas.
Procedimentos
1. Fazer fluxograma com a lógica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.
Microcontrolador
SENAI-SP – INTRANETAA-235-0536
Microcontrolador
SENAI-SP – INTRANETAA-235-05 37
Programar contadorcrescente e decrescente
O objetivo desse ensaio é testar um bit em um dispositivo de entrada e fazer umacontagem crescente ou decrescente de 0 a 9, mostrando o resultado em um conjuntode LEDs conectado a saída, utilizando comandos de incremento, decremento, teste debit, teste de byte e salto condicional.
Procedimentos
1. Fazer fluxograma com a lógica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.
Microcontrolador
SENAI-SP – INTRANETAA-235-0538
Microcontrolador
SENAI-SP – INTRANETAA-235-05 39
Gerar onda quadrada
O objetivo desse ensaio é gerar uma onda quadrada simétrica, com freqüência de1kHz, utilizando subrotina de tempo.
Procedimentos
1. Fazer fluxograma com a lógica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.
Microcontrolador
SENAI-SP – INTRANETAA-235-0540
Microcontrolador
SENAI-SP – INTRANETAA-235-05 41
Gerar PWM
O objetivo desse ensaio é gerar um PWM, variando a largura do pulso (duty cicle) pormeio da leitura de um bit em um dispositivo de entrada.
Procedimentos
1. Fazer fluxograma com a lógica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.
Microcontrolador
SENAI-SP – INTRANETAA-235-0542
Microprocessador
SENAI-SP – INTRANETAA-235-05 43
Referência bibliográfica
SENAI-SP. Técnico em mecatrônica - Microprocessadores. Por Gilberto Possatti eRegina Célia Roland Novaes. São Paulo, 1990.
Microprocessador
SENAI-SP – INTRANETAA-235-0544