OMicrocontrolador PIC16F877A apresenta dois módulos
|
|
|
- João Henrique Back Ribeiro
- 7 Há anos
- Visualizações:
Transcrição
1 Módulo CCP Roteiro N o 06 Fundação Universidade Federal de Rondônia, Núcleo de Ciência e Tecnologia, Departamento de Engenharia - DEE Curso de Bacharelado em Engenharia Elétrica - Disciplina de Sistemas Microprocessados Elaboração: Ivan S. de Oliveira - Revisão: Prof. M.Sc. Ciro Egoavil Laboratório de Sistemas Microprocessados I. INTRODUÇÃO OMicrocontrolador PIC16F877A apresenta dois módulos CCPs, chamados CCP1 e CCP2. O módulo CCP pode funcionar em três modos distintos, que são os seguintes: Captura - mede o tempo entre dois eventos, ou seja, neste modo, os módulos CCP1 ou CCP2 efetua a medição de um sinal aplicado nas entradas CCP1 ou CCP2, respectivamente. Comparação - neste modo, o valor do registrador de 16 bits do módulo CCP é comparado com o valor do Timer1, e quando ocorre uma coincidência, pode-se setar os pinos CCP1 ou CCP2, resetar os pinos CPP1 ou CCP2, o TMR1, ou gerar uma interrupção CCPxIF. Uma das utilidades do modo de comparação é a geração de pulsos de largura controlada por software. PWM (modulação por largura de pulso) - controla a tensão entregue a uma determinada carga, modificando a largura do pulso de sinal, dentro de um período de tempo prefixado. Cada um desses dois módulos é composto dos registradores CCPxCON, CCPRxH e CCPRxL, onde o x pode ser 1 ou 2, dependendo do módulo. O resultado da captura é baseado no Timer1, onde as configurações deste devem ser realizadas no registrador T1CON. O prescaler funciona da seguinte forma: caso seja elecionado o prescaler 1:1, serão necessárias duas bordas de descida ou subida para que seja feita uma captura; caso seja 1:16, serão necessárias 16 bordas para que a captura seja concluída. No final da captura, caso a interrupção deste módulo esteja habilitada, o bit CCPxIF será setado e a interrupção ocorrerá. Neste modo de operação, o Timer1 não deve estar configurado como contador assíncrono, pois neste estado o módulo pode não funcionar corretamente. Toda vez que uma captura é realizada, este resultado é armazenado nos registradores de contagem CCPRxH:CCPRxL. Para determinar o tempo de período, precisa-se de duas amostragens, pois a segunda amostragem deve ser subtraída da primeira para que o período seja encontrado. Com base no conhecimento supracitado, apresenta-se um projeto de um periodímetro simples utilizando um microcontrolador PIC programado em Linguagem C, cujo o esquema elétrico é mostrado na Figura 1. II. OBJETIVOS Este trabalho tem por objetivo apresentar os módulos CCPs disponíveis no microcontrolador PIC16F877A em três possíveis aplicações: Periodímetro, controle de servomotor e controle de velocidade de motor DC. III. SOFTWARES UTILIZADOS MPLAB; CCS C Compiler; PROTEUS Professional. IV. MODO DE CAPTURA O módulo de captura, como o próprio nome sugere, faz a captura entre bordas na entrada do CCP1 (pino RC2) ou CCP2 (pino RC1). Desta forma, dependendo do módulo CCP a qual se está utilizando, será necessário configurar o bit específico do registrador TRISC como entrada. A captura pode ocorrer de acordo como apresentado abaixo: Captura na borda de descida; Catura na borda de subida; Captura na borda de descida com prescaler 1:4; Captura na borda de descida com prescaler 1:16. Figura 1. Esquema Elétrico do Circuito - Periodímetro O periodímetro apresentado é capaz de medir um sinal de clock de 100 ms (10 Hz) à 1250 us (800 Hz) com boa precisão e apresentar o resultado em um display LCD.
2 O código, escrito em linguagem C, responsável por executar tal tarefa é apresentado abaixo: #include <16f877a.h> #fuses xt, nowdt, noprotect, put, brownout #use delay(clock= ) #define RS PIN_E0 #define EN PIN_E1 void void void Inicializa(void); Lcd_Inst(char dado); Lcd_Dado(char dado); int16 periodo1,periodo2; int32 periodo; boolean flag=0; void main() Inicializa(); Lcd_Inst(0x82); printf(lcd_dado, "Periodimetro"); while(true) Lcd_Inst(0xC2); printf(lcd_dado, "T = %lu us\f",periodo); #int_ccp1 void ccp1_int() if(flag==0) periodo1=ccp_1; flag =1; periodo2=ccp_1; periodo = ((periodo2-periodo1)*2); Set_Timer1(0); flag = 0; void Inicializa(void) Setup_Timer_1(T1_INTERNAL T1_DIV_BY_2); Setup_ccp1(CCP_CAPTURE_RE); Enable_Interrupts(INT_CCP1 ); Lcd_Inst(0x38); Lcd_Inst(0x38); Lcd_Inst(0x0C); Lcd_Inst(0x06); Lcd_Inst(0x01); void Lcd_Inst(char dado) Disable_Interrupts(GLOBAL); output_low(rs); output_d(dado); delay_cycles(2); output_high(en); output_low(en); void Lcd_Dado(char dado) Disable_Interrupts(GLOBAL); output_high(rs); output_d(dado); delay_cycles(2); output_high(en); output_low(en); No programa, inicialmente são declaradas três variáveis: int16 periodo1,periodo2; int32 periodo; boolean flag=0; As variáveis periodo1 e periodo2 são do tipo int16, ou seja, inteiras de 16 bits. A variável periodo é do tipo int32, ou seja, inteira de 32 bits. Já a variável flag é do tipo boolean, ou seja, possui um único bit, onde são representados apenas dois estados. Na função main() são enviadas as mensagens apresentadas no LCD e também realizada as configurações iniciais de funcionamento do PIC. Nesta, também, encontra-se um laço while, onde o resultado da captura é continuamente atualizado no LCD. As configurações iniciais do PIC são realizados na função inicializa(), que é reproduzida a seguir: void Inicializa(void) Setup_Timer_1(T1_INTERNAL T1_DIV_BY_2); Setup_ccp1(CCP_CAPTURE_RE); Enable_Interrupts(INT_CCP1 ); Lcd_Inst(0x38); Lcd_Inst(0x38); Lcd_Inst(0x0C); Lcd_Inst(0x06); Lcd_Inst(0x01); Nesta função, é realizada a inicialização do display LCD e, também, as seguintes configurações iniciais do PIC: Setup T imer 1(T 1 INT ERNAL T 1 DIV BY 2)- ajusta o Timer1 para operar com clock interno (Fosc/4) e com prescaler de 1:2; Setup ccp1(ccp CAP T URE RE) - configura o módulo CCP1 no modo de captura na borda de subida; Enable Interrupts(GLOBAL) - habilita as interrupções;
3 Enable Interrupts(IN T CCP 1) - habilita a interrupção do módulo CCP1. O resultado da captura é tratado dentro da função de interrupção do modo de captura: #int_ccp1 void ccp1_int() if(flag==0) periodo1=ccp_1; flag =1; periodo2=ccp_1; periodo = ((periodo2-periodo1)*2); Set_Timer1(0); flag = 0; Na função de tratamento da interrupção do módulo CCP1, o realizado uma primeira captura da borda de subida do sinal e o tempo decorrido para esta é armazenado na variável periodo1, então a variável flag é setada para sinalizar que a primeira captura foi realizada. Na próxima interrupção que ocorrer, o tempo será armazenado na variável periodo2 e, então, na variável periodo é armazenado o valor da diferença entre periodo1 e periodo2 multiplicado por 2 devido ao prescaler estar em 1:2, e este valor corresponde ao período total do sinal aplicado. V. RELATÓRIO - PARTE I Altere o programa anteriormente apresentado, transformando o periodímetro em um frequencímetro capaz de efetuar a medida das frequências de 10 Hz à 800 Hz. VI. MODO DE COMPARAÇÃO No modo de comparação, a contagem do Timer1 é constantemente comparada com o valor armazenado no par de registradores CCPRxL e CCPRxH. No caso de coincidência, um dos seguintes eventos é disparado: Inverte a saída no evento de comparação; Inicializa o pino CCPx em nível baixo e quando a comparação ocorrer, seta o pino CCPx; Inicializa o pino CCPx em nível alto e quando a comparação ocorrer, coloca o pino CCPx em nível baixo; Seta o bit de interrupção CCPxIF e não altera o pino CCPx; Ocorre o evento especial do trigger e o bit CCPxIF é setado. No evento especial, o Timer1 será resetado e uma conversão A/D será iniciada, se esta estiver habilitada. Uma das possíveis aplicações do módulo de comparação, como já mencionado, é a geração de pulsos de largura controlada por software. Portanto, nesta parte do roteiro será apresentado o controle de servomotores com o módulo de comparação. O servomotor é um mecanismo eletromecânico utilizado em diversas aplicações, as mais comuns sendo em antenas parabólicas e aeromodelos, pois a precisão de controle que este mecanismo atinge é considerada boa. Esta precisão é devida à largura dos pulsos e à duração entre esses pulsos aplicados à sua entrada. Se o pulso de entrada tiver duração de 1,0 ms o rotor do servomotor irá girar para a posição de -90 o, se o pulso tiver duração de 1,5 ms o rotor do servomotor irá permanecer na posição de 0 o e se o pulso tiver duração de 2,0 ms o rotor do servomotor irá gira para a posição de 90 o, conforme Figura 2. Para obter estes ângulos, os pulsos devem ser enviados ao servomotor continuamente em intervalos de cerca de 18 ms. Figura 2. Funcionamento do Servomotor O esquema elétrico para simulação no PROTEUS é o da Figura 3. Como pode ser observado, um botão é conectado ao PIC (pino RB1), e caso este esteja pressionado, o rotor do servomotor irá girar para a posição de 90 o e caso não esteja pressionado, o rotor do servomotor irá para a posição 0 o. O programa escrito em linguagem C que irá executar a operação descrita é apresentado a seguir: #include <16f877a.h> #fuses xt, nowdt, noprotect, put, brownout #use delay(clock= ) #define BOTAO PIN_B1 void Inicializa(void); long Nivel_Baixo = 18000; long Nivel_Alto; boolean flag=1; void main()
4 Inicializa(); while(true) if(!input(botao)) Nivel_Alto = 2000; Nivel_Alto = 1500; #int_ccp1 void ccp1_int() if(flag==0) output_high(pin_c1); CCP_1 = Nivel_Alto; flag =1; output_low(pin_c1); CCP_1 = Nivel_Baixo; flag = 0; void Inicializa(void) Setup_Timer_1(T1_INTERNAL); Setup_ccp1(CCP_COMPARE_RESET_TIMER); Enable_Interrupts(INT_CCP1); Port_b_Pullups(TRUE); CCP_1 = 0; O código é iniciado com as instruções reproduzidas abaixo: #include <16f877a.h> #fuses xt, nowdt, noprotect, put, brownout #use delay(clock= ) #define BOTAO PIN_B1 void Inicializa(void); long Nivel_Baixo = 18000; long Nivel_Alto; boolean flag=1; Neste trecho, é realizada a inclusão do ficheiro com as características do PIC16F877A, microcontrolador utilizado no projeto, é declarada a função Inicializa(void) e o pino RB1 é denominado de BOT AO. A variável Nivel Baixo é declara como do tipo long, 16 bits, com valor inicial de 18000, que corresponde ao intervalo de 18 ms entre os pulsos enviados ao servomotor. A variável Nivel Alto é responsável por armazenar o intervalo de tempo entre 1 ms e 2 ms em que o sinal permanecerá em nível alto. A variável flag tem a função de indicar se o sinal que está sendo enviado ao servomotor naquele momento está em nível baixo (flag = 0) ou em nível alto (flag = 1). Figura 3. Esquema Elétrico do Circuito - Controle de Servomotor Na função main é executada a função Inicializa() responsável por realizar a configuração inicial do PIC. Na função main, o comando while(true) cria um laço onde é realizado o teste do botão conectado ao pino RB1. Caso o botão não esteja pressionado o valor 1500 (1, 5 ms) será armazenado na variável Nivel Alto e caso o botão esteja pressionado o valor 2000 (2 ms) será armazenado na variável Nivel Alto. void main() Inicializa(); while(true) if(!input(botao)) Nivel_Alto = 2000; Nivel_Alto = 1500; A execução permanecerá testando o botão até que corra uma interrupção do módulo CCP. Ocorrendo a interrupção a execução será desviada para a função que irá tratá-la. #int_ccp1 void ccp1_int() if(flag==0) output_high(pin_c1); CCP_1 = Nivel_Alto; flag =1;
5 output_low(pin_c1); CCP_1 = Nivel_Baixo; flag = 0; este periférico é principalmente o fato de ele manter uma frequência constante na saída CCPx enquanto o ciclo ativo do sinal é alterado, permitindo desta forma controlar velocidade de motores ou a intensidade de uma lâmpada, por exemplo. A Figura 4 ilustra o funcionamento do módulo PWM. Na função de tratamento da interrupção, ccp1 int(), o valor de flag é testado, caso este esteja zerado o sinal de saída no pino RC1 é posto em nível alto e o valor da variável Nivel Alto é enviado a CCP 1 e esta determinará o tempo em que o sinal irá permanecar neste estado. Caso flag esteja setado, o pino RC1 é posto em nível baixo e permanecerá neste estado pelo tempo determinado por N ivel Baixo, que sempre será de 18 ms. Na função Inicializa(),é realizada a configuração inicial do PIC através das instruções mostradas abaixo: Setup T imer(t 1 IN T ERN AL) - ajusta o Timer1 para operar com clock interno (Fosc/4); Setup ccp1(ccp COMP ARE RESET T IMER) - configura o módulo CCP1 no modo de comparação com reset do Timer1. Enable Interrupts(GLOBAL) - Habilita todas as interrupções; Enable Interrupts(IN T CCP 1) - Habilita a interrupção do módulo CCP1; P ort b P ullups(t RUE) - Liga os pull-ups da PORTB. CCP 1 = 0 - inicializa a variável CCP 1 em zero. A variável CCP 1 tem 16 bits e executa a mesma função dos registradores CCPRxH e CCPRxL. void Inicializa(void) Setup_Timer_1(T1_INTERNAL); Setup_ccp1(CCP_COMPARE_RESET_TIMER); Enable_Interrupts(INT_CCP1); Port_b_Pullups(TRUE); CCP_1 = 0; VII. RELATÓRIO - PARTE II Altere o programa em linguagem C e o circuito apresentado na Figura 3 para que considere quatro botões. Cada botão deve girar o rotor do servomotor para uma posição específica, conforme listado a seguir: Botão1 - gira o rotor do servomotor para 90 o ; Botão2 - gira o rotor do servomotor para 45 o ; Botão3 - gira o rotor do servomotor para -45 o ; Botão4 - gira o rotor do servomotor para -90 o ; Caso nenhum botão esteja pressionado, o rotor do servomotor deve permanecer na posição 0 o. VIII. MODO PWM O modo PWM (Pulse Width Modulation) é de fato um dos mais importantes do módulo CCP. O que caracteriza Figura 4. Modulação por Largura de Pulso - PWM No primeiro sinal, durante o intervalo de um período prefixado no Timer2, 75 % do período fica ativo. Como a tensão máxima DC deste sistema é de 5 V, a tensão média entre a carga é de 3,75 V. No segundo sinal, 50 % do período fica ativo, então a tensão média é de 2,5 V. E no terceiro, apenas 20 % do período fica ativo e a tensão média é de 1,0 V. O princípio de funcionamento do módulo PWM no PIC é o seguinte: A base de tempo do sinal é gerada pelo Timer2. Isto significa que o período (e consequentemente a frequência) do sinal é determinado pela programação do Timer2. O período ativo é configurado através dos registradores CCPRXL e CCPXCON (bits 5 e 4). Como este PWM é de 10 bis, os 8 bits mais significativos ficam no registrador CCPRxL e os dois bits menos significativos nos bits 5 e 4 do registrador CCPxCON. No início da contagem do Timer2, o pino CCPx será levado a 1 se os registradores CCPRxL e CCPxCON (5:4) forem diferentes de 0. Quando o resultado da contagem do Timer2 for igual aos registradores de ciclo, o pino CCPx será levado a 0 e aguardar-se-á início de uma nova contagem. Para configurar o período do PWM, é necessário duas informações: Frequência de funcionamento do PWM; Frequência do microcontrolador (Fosc). Desta forma, pode-se utilizar a Equação 1 para encontrar o valor do registrador PR2, responsável por determinar o período do sinal gerado. P R2 = F osc F pwm 4 P rescaler 1 (1) onde - F osc = frequência do oscilador do microcontrolador;
6 - F pwm = frequência do PWM; - P rescaler = prescaler do Timer2. Na Equação 1, o valor de prescaler deve inicializar em 1 e, caso o resultado para PR2 seja maior que 255, o prescaler deve ser aumentado de forma qu obedeça o limite de oito bits do registrador PR2. Como exemplo, caso deseja-se determinar o valor de PR2 para o PWM operando em 10 KHz para um microcontrolador com Fosc de 4 MHz e prescaler do Timer2 configurado em 1:1, pode-se utilizar a Equação 1 da seguinte forma: P R2 = = 99 (2) 4 1 Apesar de o PWM ser de 10 bits, dependendo da frequência utilizada nem sempre será possível esta resolução. Para determinar a resolução máxima do PWM, utiliza-se a Equação 3 Rpwm = log( F osc F pwm ) log(2) A resolução do PWM do exemplo apresentado será então: Rpwm = (3) log( ) 3 = 8(bits) (4) log(2) Neste exemplo, este será o número máximo de resolução em bits e que somente a parte inteira é que tem validade, sendo truncado o resultado da resolução do log. O período ativo do sinal é dado pela Equação 5: (CCP RXL + CCP XCON(5 : 4)) (P rescaler) T ativo = F osc (5) O valor (CCPRxL + CCPxCON(5:4)) refere-se ao valor decimal correspondente aos 10 bits resultntes da associação dos 8 bits de CCPRxL mais os bits 5 e 4 do registrador CCPxCON. A. Controle de Velocidade de Motor DC - Assembly O controle de velocidade de um motor DC pode ser feito utilizando o CCP, no modo PWM, conectando ao pino de saída deste módulo um CI do tipo ULN2003A, cuja função é fornecer a corrente elétrica adequada ao funcionamento do motor. O esquema elétrico do circuito é apresentado na Figura 5. Neste circuito, o microcontrolador PIC16F877A possui três botões conectados a PORTB. O primeiro botão, ligado ao pino RB1, quando pressionado, aciona o motor com período ativo de 100 %, ou seja, o motor é acionado a velocidade máxima. O segundo botão, pino RB2, aciona o motor com 60 % do período ativo, ou seja, o motor é acionado a 60 % de sua velocidade máxima. Já botão conectado ao pino RB3 aciona o motor a 20 % de sua velocidade máxima. O código escrito em Assembly, gravado no PIC, com objetivo de executar as operações descritas, é apresentado a seguir: Figura 5. #include <P16F877A.INC> Esquema Elétrico - PWM CONFIG _CP_OFF&_PWRTE_OFF& _WDT_OFF & _XT_OSC #DEFINE BANCO0 BCF STATUS,RP0 #DEFINE BANCO1 BSF STATUS,RP0 #DEFINE BOTAO1 PORTB,1 #DEFINE BOTAO2 PORTB,2 #DEFINE BOTAO3 PORTB,3 ORG 0X0000 GOTO INICIO ORG 0X0004 RETFIE INICIO BANCO1 MOVLW B MOVWF TRISB MOVLW B MOVWF TRISC MOVLW B MOVWF PR2 MOVLW B MOVWF OPTION_REG MOVLW B MOVWF ADCON1 BANCO0 MOVLW B MOVWF INTCON MOVLW B MOVWF T2CON
7 MOVLW B MOVWF CCP1CON MOVLW B MOVWF ADCON0 CLRF PORTB CLRF PORTC BSF T2CON,TMR2ON LOOP BTFSC BOTAO1 GOTO BOTAO_2 BSF CCP1CON,4 BSF CCP1CON,5 MOVLW B MOVWF CCPR1L GOTO LOOP BOTAO_2 BTFSC BOTAO2 GOTO BOTAO_3 BCF CCP1CON,4 BSF CCP1CON,5 MOVLW B MOVWF CCPR1L GOTO LOOP BOTAO_3 BTFSC BOTAO3 GOTO PARAR BSF CCP1CON,4 BCF CCP1CON,5 MOVLW B MOVWF CCPR1L GOTO LOOP PARAR BCF CCP1CON,4 BCF CCP1CON,5 MOVLW B MOVWF CCPR1L GOTO LOOP END Os registradores relevantes na configuração do módulo PWM são o T2CON que configura o Timer2 com prescaler de 1:1, o registrador PR2 que é carregado com o valor 249 para que o PWM funcione a frequência de 4 KHz e o registrador CCP1CON que configura o módulo CCP1 para operar no modo PWM. O rótulo LOOP é a parte do código responsável pelo teste dos botões. Caso o botão conectado ao pino RB1 esteja pressionado, o valor 1024 (10 bits) é enviado ao registrador CCPR1L e aos bits 4 e 5 do registrador CCP1CON, desta forma o período ativo do sinal de saída será de 100 % e o motor irá operar a velocidade máxima. Caso o botão conectado ao pino RB2 esteja pressionado, o valor 614 é transferido ao registrador CCPR1L e aos bits 4 e 5 do registrador CCP1CON, o que corresponde a um período ativo do sinal de saída de 60 %, pois 60 % de 1024 é aproximadamente 614, assim, o motor será acionado a 60 % de sua velocidade máxima. Se o botão conectado ao pino RB3 estiver pressionado, o valor 205 é enviado ao registrador CCPR1L e as bits 4 e 5 do registrador CCP1CON, assim, o motor será acionado a 20 % da velocidade máxima, pois 20 % de 1024 (10 bits) é aproximadamente 205. Caso nenhum botão esteja pressionado a execução será desviada para o rótulo P ARAR, onde o valor 0 é enviado ao registrador CCPR1L e as bits 4 e 5 do registrador CCP1CON, e o sinal não terá período ativo, ocasionando o desligamento do motor. B. Controle de Velocidade de Motor DC - Linguagem C O controle de velocidade do motor DC, anteriormente realizado na Linguagem Assembly, pode ser implementado, também, na Linguagem C. No entanto, esta linguagem apresenta funções prontas que auxiliam a elaboração do programa. Desta forma, a seguir é apresentado o código em Linguagem C que executa a mesmas operações apresentadas no código anterior, escrito em Assembly: #include <16f877a.h> #fuses xt, nowdt, noprotect, put, brownout #use delay(clock= ) #define BOTAO1 PIN_B1 #define BOTAO2 PIN_B2 #define BOTAO3 PIN_B3 void Inicializa(void); void main() Inicializa(); while(true) if(!input(botao1)) Set_Pwm1_Duty(255); if(!input(botao2)) Set_Pwm1_Duty(153); if(!input(botao3)) Set_Pwm1_Duty(51); Set_Pwm1_Duty(0); void Inicializa(void) Setup_Timer_2(T2_DIV_BY_1,249,1); Setup_ccp1(CCP_PWM); Disable_Interrupts(GLOBAL); Port_b_pullups(TRUE); Neste código a função Inicializa() é responsável pelas configurações iniciais do PIC, conforme listado a seguir:
8 Setup T imer 2(T 2 DIV BY 1, 249, 1) - ajusta o Timer2 para operar com prescaler de 1:1, PR2 com valor de 249 (para frequência de operação do PWM de 4 KHz) e postscaler de 1:1; Setup ccp1(ccp P W M) - configura o módulo CCP1 no modo PWM Disable Interrupts(GLOBAL) - Desabilita as interrupções; P ort b P ullups(t RUE) - Liga os pull-ups da PORTB. Na função main(), os botões conectados a PORTB são testados. Caso o botão ligado ao pino RB1 esteja pressionado, o comando Set P wm1 Duty(255) ajusta o período ativo do sinal de saída para 100 %, isto é obtido através do argumento do comando, que neste caso, é 255. Na Linguagem C do CCS C Compile, a resolução máximo do PWM que pode ser configurada é de 8 bits, por isso o valor para um ciclo ativo de 100 % é de 255 (8 bits), diferentemente da Linguagem Assembly onde os 10 bits de resolução máxima do PWM podem ser alterados. Caso o botão ligado ao pino RB2 esteja pressionado, o comando Set P wm1 Duty(153) irá ajustar o ciclo ativo do sinal para 60 % do período, e o motor irá operar a 60 % de sua velocidade máxima. Se o botão conectado ao pino RB3 estiver pressionado, o Set P wm1 Duty(51) o motor irá operar a 20 % de sua velocidade máxima. Caso nenhum botão esteja pressionado, o motor será desligado. IX. RELATÓRIO - PARTE III Altere os programas em linguagem C e em Assembly, para que acione dois motores de acordo com as seguintes condições: Botão1 - aciona motor 1 à velocidade máxima e motor 2 a 20 % da velocidade máxima; Botão2 - aciona motor 1 a 80 % da velocidade máxima e motor 2 a 60 % da velocidade máxima; Botão3 - aciona motor 1 a 60 % da velocidade máxima e motor 2 a 80 % da velocidade máxima; Botão4 - aciona motor 1 a 20 % da velocidade máxima e motor 2 à velocidade máxima; Caso nenhum botão esteja pressionado, os motores deverão ser desligados. REFERÊNCIAS [1] Souza, Vitor Amadeu, Projetando com os microcontroladores da família PIC 18: Uma nova percepção, 1 a Ed., São Paulo: Ensino Profissional, [2] Souza, David José de, Desbravando o PIC: ampliado e atualizado para PIC 16F628A, 6 a Ed., São Paulo: Érica, [3] Pereira, Fábio, Micrcontroladores PIC: Técnicas Avançadas, 6 a Ed., São Paulo: Érica, [4] Apostila de Linguagem C para PIC16F877A com base no CCS - Cerne Tecnologia e Treinamento LTDA.
9 1 A - REGISTRADORES R/W - leitura/escrita R - somente leitura U - não implementado O valor após o traço é o valor inical, após reset. APÊNDICE 1 - T2CON bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 - TOUTPS3 TOUTPS2 TOUTPS1 TOUTPS0 TMR2ON T2CKPS1 T2CKPS0 U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 Tabela I REGISTRADOR T2CON TOUTPS3:TOUTPS0 - seleção do postscaler do Timer2; TOUTPS3 TOUTPS2 TOUTPS1 TOUTPS0 Divisor : : : : : : : : : : : : : : : :16 TMR2ON - controle habilitação/desabilitação Timer2; 0 - Timer2 desativado, contagem parada; 1 - Timer2 habilitado, contagem correndo; T2CKPS1:T2CKPS0 - Seleção de prescaler do Timer2; T2CKPS1 T2CKPS0 Divisor 0 0 1: : : :16
10 2 2 - CCP1CON E CCP2CON bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 - - CCPxX CCPxY CCPxM3 CCPxM2 CCPxM1 CCPxM0 U-0 U-0 R/W-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0 Tabela II REGISTRADORES CCP1CON E CCP2CON CCPxX e CCPxY - Bits menos signitificativos do registrador de ciclo ativo quando em modo PWM. Quando o módulo CCP está operando em modo de captura ou comparação, esses bits não têm significado; CCPxM3:CCPxM0 - seleção do modo de operação do módulo CCPx; CCPxM3:CCPxM0 Modo 0000 Módulo CCPx desligado 0100 Captura a cada borda de descida 0101 Captura a cada borda de subida 0110 Captura a cada 4 a borda de subida 0111 Captura a cada 16 a borda de subida 1000 Comparação, seta pino CCPx em caso de coincidência (seta CCPxIF) 1001 Comparação, zera pino CCPx em caso de coincidência (seta CCPxIF) 1010 Comparação, em caso de coincidência gera interrupção (CCPxIF) 1011 Comparação, em caso de coincidência gera interrupção (CCPxIF) e reseta TMR1 11xx Modo PWM
OMódulo Comparador Analógico consiste em um conjunto
Módulo Comparador Analógico Roteiro N o 05 Fundação Universidade Federal de Rondônia, Núcleo de Ciência e Tecnologia, Departamento de Engenharia - DEE Curso de Bacharelado em Engenharia Elétrica - Disciplina
Sistemas Digitais e Microcontrolados
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ DEPARTAMENTO ACADÊMICO DE ELETROTÉCNICA CURSO DE ENGENHARIA INDUSTRIAL ELÉTRICA TECNOLOGIA EM AUTOMAÇÃO INDUSTRIAL Sistemas Digitais e Microcontrolados - PIC16F877A
Sistemas Microcontrolados. Período Aula 9. 1 Saulo O. D. Luiz
Sistemas Microcontrolados Período 2009.2 Aula 9 1 Saulo O. D. Luiz Roteiro Módulos CCP Captura Comparação Modulação por largura de pulso (PWM) 2 Saulo O. D. Luiz Módulos CCP Os módulos CCP são formados
OMicrocontrolador PIC16F877A implementa um conversor
Conversor A/D com PIC Roteiro N o 04 Fundação Universidade Federal de Rondônia, Núcleo de Ciência e Tecnologia, Departamento de Engenharia - DEE Curso de Bacharelado em Engenharia Elétrica - Disciplina
Sistemas Digitais e Microcontrolados
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ DEPARTAMENTO ACADÊMICO DE ELETROTÉCNICA CURSO DE ENGENHARIA INDUSTRIAL ELÉTRICA TECNOLOGIA EM AUTOMAÇÃO INDUSTRIAL Sistemas Digitais e Microcontrolados Contador/Temporizador
Sistemas Digitais e Microcontrolados
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ DEPARTAMENTO ACADÊMICO DE ELETROTÉCNICA CURSO DE ENGENHARIA INDUSTRIAL ELÉTRICA TECNOLOGIA EM AUTOMAÇÃO INDUSTRIAL Sistemas Digitais e Microcontrolados Contador/Temporizador
Arquitetura PIC - PWM
Arquitetura PIC - PWM Guilherme Luiz Moritz 1 1 DAELT - Universidade Tecnológica Federal do Paraná 03 de 2013 Objetivos Aprender o que é a técnica de PWM Compreender a utilidade da técnica Aprender a utilizar
6. Estrutura do Programa em Assembly
6. Estrutura do Programa em Assembly Professor: Vlademir de Oliveira Disciplina: Microcontroladores e DSP A estrutura se baseia em um formato sugerido pela própria Microchip para programação da família
OMPLAB é um programa para PC, que roda sobre a
Ambiente de Programação MPLAB Roteiro N o 02 Fundação Universidade Federal de Rondônia, Núcleo de Ciência e Tecnologia, Departamento de Engenharia - DEE Curso de Bacharelado em Engenharia Elétrica - Disciplina
1.1 Noções básicas sobre interrupções em Microcontroladores
Capítulo 1 Interrupções 1.1 Noções básicas sobre interrupções em Microcontroladores PIC Interrupções é obrigação em uma programação profissional. Quando um evento ocorrer, uma bandeira de interrupção será
Eder Terceiro. Programação C com o PIC16F628a. Eder Terceiro. 31 de Outubro de 2016
Programação C com o PIC16F628a 31 de Outubro de 2016 2016-2 2 Conteúdo 3 2016-2 4 Capítulo 1 Interrupções Timer0 1.1 Registradores relacionados as Interrupcoes 1.1.1 Registrador OP T ION R EG Configura
Sistemas Microcontrolados
Ciência da Computação Sistemas Microcontrolados Função dos Registradores no PIC Prof. Sergio F. Ribeiro Os Registradores Especiais que Controlam Tudo Vimos que configurações podem ser feitas para definir
Interrupções e Timers
Interrupções e timers Guilherme Luiz Moritz 1 1 DAELT - Universidade Tecnológica Federal do Paraná 4 de dezembro de 2013 Objetivos Compreender o funcionamento de um display de sete segmentos Compreender
BANKSEL ADCON1 clrf ADCON1 bsf ADCON1,ADFM ; seta AD para VCC, GND e entradas analogicas, setando o bit ADFM configura como justificado a direita
include CONFIG 3F33 ;; configura automaticamente os bits do ocilador, watchdog timer, etc ;VARIÁVEIS CBLOCK 0x20 ; iniciando registradores que vão ser usados no programa ENDC tempo EQU 0x21
Funções dos Microcontroladores Microcontroladores e Microprocessadores Especialização em Automação Industrial
Funções dos Microcontroladores Microcontroladores e Microprocessadores Especialização em Automação Industrial 1 LCD - PIC Configure um projeto normalmente e na aba LCD (External) marque as opções Use LCD
Interrupção Externa. Capítulo 1. Noções básicas sobre interrupções em Microcontroladores PIC
Capítulo 1 Interrupção Externa Noções básicas sobre interrupções em Microcontroladores PIC Seção 1.1 Interrupções é obrigação em uma programação profissional. Quando um evento ocorrer, uma bandeira de
Sistemas Microcontrolados
Sistemas Microcontrolados Aula 3: Microcontroladores PIC e Programação Assembly Marco Jose da Silva [email protected] Especificação de um uc Qual escolher? Capacidade de processamento 8 bits (16 bits
1.2 Registradores relacionados as Interrupções. 3. TOSE Sentido da transição da borda do sinal aplicado am TMR0
Capítulo 1 Interrupções 1.1 O que são interrupções? Como o nome sugere interrompe a execução normal e exige atenção urgente da CPU. São eventos não previsíveis e assim não pode ser oferecido tempo de CPU
Microcontroladores: Programação em C
Aula 09 Microcontroladores: Programação em C Prof. Tecgº Flávio Murilo 10/04/2013 1 PWM Conceitos Definição PWM é a sigla para Pulse Width Modulation (Modulação por Largura de Pulso). É uma técnica utilizada
Curso de Microcontroladores PIC 16F84A
Curso de Microcontroladores PIC 16F84A João Neto Caetano [email protected] Marciel Gonçalves Azevedo [email protected] Célio Rodrigues Pinto Treinamentos em geral, suporte a alunos universitários
Arquitetura de Computadores. Prof. João Bosco Jr.
Arquitetura de Computadores Prof. João Bosco Jr. Aula 4 (nivel ISA Arquitetura PIC) Características do Controlador 16F628A 18 Pinos Até 20 Mhz (5M instruções por segundo) PortA e PortB 10 Interrupções
Sistemas Microcontrolados. Período Aula 6. 1 Saulo O. D. Luiz
Sistemas Microcontrolados Período 2009.2 Aula 6 1 Saulo O. D. Luiz Roteiro Entrada e saída Portas 2 Saulo O. D. Luiz Porta Porta um registrador conectado aos pinos do microcontrolador 3 Saulo O. D. Luiz
Sistemas Microcontrolados
Sistemas Microcontrolados Aula 5: Interrupções e Temporizadores Marco Jose da Silva [email protected] Interrupções Interrupção é um evento externo ao programa que provoca: A parada da sua execução;
Atividade de laboratório 005. Prof: Carlos Eduardo de Brito Novaes 20 de maio de Alunos RA Nome Curso Semestre
Atividade de laboratório 005 Prof: Carlos Eduardo de Brito Novaes 20 de maio de 2016 Alunos RA Nome Curso Semestre Resumo Atividade da unidade curricular: Laboratório Integrado de Microprocessadores e
Sequencial Supermáquina (TEMPORIZAÇÃO SIMPLES)
Sequencial Supermáquina (TEMPORIZAÇÃO SIMPLES) Roteiro Sequencial Supermáquina Materiais Pinos do PIC Fluxograma Temporização Circuito no protoboard Melhoramentos Sugestão de Atividades Sequencial Um sequencial
C:\Users\House\Desktop\fluxo.c 1: /****************************************************************************** 2: * Objetivo: Este projeto visa
1: /****************************************************************************** 2: * Objetivo: Este projeto visa monitorar uma tensão de um sensor e mostrar * 3: * e após a conversão necessária da escala
Microcontroladores PIC. Interrupções e Timers
Microcontroladores PIC Interrupções e Timers 1 Sumário Interrupções Timers e Contadores Contagem do Tempo no PIC Exercícios 2 Interrupções na Linguagem C do PIC Dependem do Compilador. Duas formas para
Construção de Robôs Jogadores de Futebol (2ª Parte)
Construção de Robôs Jogadores de Futebol (2ª Parte) Wânderson de Oliveira Assis, Alessandra Dutra Coelho, Marcelo Marques Gomes, Cláudio Guércio Labate, Daniel Franklin Calasso, João Carlos Gonçalves Conde
Circuito Eletrônico. Entendendo o circuito eletrônico na robótica. domingo, 28 de agosto de 11
Circuito Eletrônico Entendendo o circuito eletrônico na robótica Circuito Integrado Um circuito integrado híbrido é um circuito eletrônico miniaturizado constituído de dispositivos semicondutores individuais,
EPUSP PCS 2011/2305/2355 Laboratório Digital. Frequencímetro
Frequencímetro Versão 2014 RESUMO Esta experiência tem como objetivo a familiarização com duas classes de componentes: os contadores e os registradores. Para isto, serão apresentados alguns exemplos de
Conhecendo o PIC24 e o mikropascal
Conhecendo o PIC24 e o mikropascal Vitor Amadeu Souza [email protected] Introdução Os novos microcontroladores de 16 bits da Microchip chamados de PIC24 chegam ao mercado com diversos recursos que
AAAA AAAA SEL Aplicação de Microprocessadores I. Aula 5 Temporização e Interrupção. Marcelo Andrade da Costa Vieira
SEL 0629 Aplicação de Microprocessadores I Aula 5 Temporização e Interrupção Marcelo Andrade da Costa Vieira Contagem de Tempo Contando tempo Existem 3 maneiras de contarmos tempo com os microcontroladores
Placa McLab1 Upgrade PIC16F84A p/ PIC16F62x
Placa Upgrade PIC16F84A p/ PIC16F62x Sumário 1. UTILIZANDO OS PICS 16F62X...3 1.1. INTRODUÇÃO...3 2. ATUALIZAÇÃO DO HARDWARE...4 2.1. UPGRADE DA PLACA MCLAB1 PARA TRABALHAR COM PIC16F627 / PIC16F628...4
Microcontrolador PIC 16F877
Microcontrolador PIC 16F877 Parte 1 Instruções de MOV, e PORT Microcontrolador PIC 16F877 Termos utilizados nas instruções: Campo f w ou W b k d Descrição registro entre 0 e 127 registro Work bit utilizado
Temporizadores e Contadores (Timer/Counter)
SEL-433 APLICAÇÕES DE MICROPROCESSADORES I O 8051 possui 2 (ou 3) T/C internos de 16 Bits programáveis e com capacidade de operação independente da CPU. Contadores crescentes (up-counter) que geram sinal
Na figura abaixo é mostra os pinos do microcontrolador utilizado no montagem da placa, o PIC16F628A.
Escrito por Wandery Ap Ramos CLP PIC Wantronics Hoje em dia nas industrias em geral se utilizam muitos inversores de frequência, CLPs, controladores de velocidade, temporizadores, controladores de temperatura,
Implementando PWM por soft - um método simples. Por Renie S. Marquet reniemarquet.sites.com.br - versão
Implementando PWM por soft - um método simples. Por Renie S. Marquet reniemarquet.sites.com.br - versão 25.02.2005 O PWM (Pulse Width Modulation Modulação por largura de pulso) consiste em controlar o
Microcontroladores 2 EL08D Turma M12
Microcontroladores 2 EL08D Turma M12 Prof. Gabriel Kovalhuk E-mail: [email protected] Site: http://paginapessoal.utfpr.edu.br/kovalhuk TEMPORIZADORES / CONTADORES NO MSP430 Este material foi retirado
Cerne. Conhecimento para o Desenvolvimento. Cerne Tecnologia e Treinamento
Conhecimento para o Desenvolvimento Cerne Tecnologia e Treinamento Apostila de Assembly para o PIC16F628A (21) 4063-9798 (11) 4063-1877 E-mail: [email protected] MSN: [email protected] Skipe:
Arduino. Aula 3 motores
Arduino Aula 3 motores O que são motores elétricos? São dispositivos capazes de converter energia elétrica em energia mecânica No Arduino : Entradas e saídas digitais Entradas analógicas Lembrete!!! Ondas
LABORATÓRIO DE ARQUITETURA DE COMPUTADORES PREPARAÇÃO 03: INTERRUPÇÕES
AEVSF Autarquia Educacional do Vale do São Francisco FACAPE Faculdade de Ciências Aplicadas e Sociais de Petrolina Curso de Ciência da Computação LABORATÓRIO DE ARQUITETURA DE COMPUTADORES Prof. Sérgio
O Pino P2.7 não está sendo usado e cada Display mostrará valores de 0 a 9.
Lista de Exercícios 2 Conceitos envolvidos: a) Interface serial RS232 b) Interface com Teclado Matricial c) Interface com Displays de 7 segmentos d) Interface com LCD e) Interface com Conversores A/D e
Sistemas Microcontrolados. Período Aula Saulo O. D. Luiz
Sistemas Microcontrolados Período 2009.2 Aula 10 1 Saulo O. D. Luiz Roteiro Conversor A/D 2 Saulo O. D. Luiz Introdução Símbolo do Conversor A/D Diagrama de blocos Fonte: ZANCO, Wagner da Silva. Microcontroladores
Microcontroladores: Programação em C
Aula 10 Microcontroladores: Programação em C Prof. Tecgº Flávio Murilo 11/04/2013 1 Conversor A/D Conceitos Conversores analógico digitais (conversores A/D ou ADC) convertem um sinal analógico em um equivalente
Comunicação RC5 com o dspic Vitor Amadeu Souza
Comunicação RC5 com o dspic Vitor Amadeu Souza [email protected] Neste artigo, irei apresentar aos leitores um exemplo prático de comunicação via infravermelho, utilizando neste caso o protocolo RC5.
Interrupção. Prof. Adilson Gonzaga
Interrupção Prof. Adilson Gonzaga Estrutura de Programação Assembly Programa Principal Chamada de Sub-rotina1 Programa Principal Chamada de Sub-rotina2 Sub-rotina1 Subrotina2 Programa Principal Chamada
Plano de Aula. 1 o semestre. Cronômetro Interrupções, Timers. Utilizar interrupções para criar um cronômetro com parciais
Diretoria de Curso Plano de Aula 1 o semestre Nome do curso Nome da Unidade Curricular Aula número Tema Período Turma Eng. Ciências da Computação + TI + TADS + Eng. Elétrica Microprocessadores e Microcontroladores
Prof. Adilson Gonzaga
Prof. Adilson Gonzaga Temporização da CPU Todos os Microcontroladores da família MCS-51 têm um oscilador interno. Para uso deste oscilador deve-se conectar um cristal entre os pinos Xtal1 e Xtal2 da CPU.
Montagem do Robô. Especificações. domingo, 28 de agosto de 11
Montagem do Robô Especificações Componentes São necessários para o robô funcionar alguns componentes básicos: Bateria 9V Regulador L7805 Motor DC 1 4 Diodos 1N4004 Motor DC 2 4 Diodos 1N4004 Ponte H L298N
Lista de Exercícios 2
Conceitos envolvidos: a) Contadores e Temporizadores b) Interface serial RS232 c) Interrupções Lista de Exercícios 2 1. Fazer um contador hexadecimal que coloque o valor de contagem na porta P1 em intervalos
Microcontroladores PIC
Microcontroladores PIC Prática MSc. Gustavo Souto de Sá e Souza Revisado por José Wilson Nerys Introdução O principal microcontrolador utilizado nesse estudo é o PIC18F4550, cujas características principais
Temporização Interrupções. Prof: Evandro L. L. Rodrigues. Rotinas de Atraso
Temporização Interrupções Prof: Evandro L. L. Rodrigues Rotinas de Atraso Temporização da CPU Todos os Microcontroladores da família MCS-51 têm um oscilador interno. Para uso deste oscilador deve-se conectar
PIC32 Uma Nova Tecnologia
VITOR AMADEU SOUZA PIC32 Uma Nova Tecnologia Com base no modelo PIC32MX320F032H Programado em C pelo Compilador C32 Microchip Vitor Amadeu Souza 2010 by Cerne Tecnologia e Treinamento Ltda. 2010 by Vitor
Lista de Exercícios 1
Conceitos envolvidos: a) Contadores e Temporizadores b) Interface serial RS2322 c) Interrupções Lista de Exercícios 1 1. Fazer um contador hexadecimal que coloque o valor de contagem na porta P1 em intervalos
Servo-Motor. por. Nuno Monteiro & Gabriel Dinis Eng. Electrotécnica, UTAD Junho de 2001. [email protected] gabrieldinis@portugalmail.
Servo-Motor por [email protected] [email protected] Um servo-motor é um pequeno dispositivo cujo veio pode ser posicionado numa determinada posição angular de acordo com um sinal
Laboratório de Microprocessadores e Microcontroladores
Escola de Engenharia Elétrica, Mecânica e de Computação Universidade Federal de Goiás Laboratório de Microprocessadores e Microcontroladores Experimento 2: Interrupções Externas e Relés Alunos: Matrícula:
Seqüencial de Leds utilizando o microcontrolador PIC16F628A Vitor Amadeu
Seqüencial de Leds utilizando o microcontrolador PIC16F628A Vitor Amadeu A Cerne Tecnologia e Treinamento, estará neste mês de agosto, abrindo várias seções mostrando o que é, para que servem e onde são
MICROPROCESSADORES E MICROCONTROLADORES PROVA 2 - RESPOSTA ESPERADA
MICROPROCESSADORES E MICROCONTROLADORES PROVA 2 - RESPOSTA ESPERADA 1. Escreva as instruções para as configurações pedidas. Valor: 2,0 a) Habilita as interrupções externas zero e um e a interrupção do
Jadsonlee da Silva Sá
Introdução aos Sistemas Microcontrolados Jadsonlee da Silva Sá [email protected] www.univasf.edu.br/~jadsonlee.sa Introdução aos Sistemas Microcontrolados Assembly, C, java,... Circuito Reset
Laboratório de Microprocessadores e Microcontroladores
Escola de Engenharia Elétrica, Mecânica e de Computação Universidade Federal de Goiás Laboratório de Microprocessadores e Microcontroladores Experimento 2: Interrupções Externas e Relés Alunos: Matrícula:
Manual do Usuário. McMaster Desenvolvimento de Sistemas com Microcontroladores PIC
Manual do Usuário McMaster Desenvolvimento de Sistemas com Microcontroladores PIC Índice CAPÍTULO 1 - INTRODUÇÃO... 1 CAPÍTULO 2 - MCMASTER DESENVOLVIMENTO DE SISTEMAS COM MICROCONTROLADORES PIC... 3
MICROPROCESSADORES E MICROCONTROLADORES PROVA 2 UMA SOLUCAO POSSÍVEL
MICROPROCESSADORES E MICROCONTROLADORES PROVA 2 UMA SOLUCAO POSSÍVEL Aluno: Matrícula: 1. Escreva as instruções necessárias para atender a cada uma das configurações solicitadas. Valor: 2,0 (a) Interrupção
Temporizadores e Contadores
Temporizadores e Contadores Temporizadores e Contadores (Timer/Counter) O 8051 possui 2 T/C internos de 16 Bits programáveis e com capacidade de operação independente da CPU. Contadores crescentes (up-counter)
EPUSP PCS 2011/2305/2355 Laboratório Digital. Frequencímetro
Frequencímetro Versão 2012 RESUMO Esta experiência tem como objetivo a familiarização com duas classes de componentes: os contadores e os registradores. Para isto, serão apresentados alguns exemplos de
Microcontroladores: Programação em C
Aula 06 Microcontroladores: Programação em C Prof. Tecgº Flávio Murilo 02/04/2013 1 Microcontroladores PIC São fabricados pela Microchip Technology. PIC significa Programmabile Intelligent Computer, ou
Laboratório de Microprocessadores e Microcontroladores
Escola de Engenharia Elétrica, Mecânica e de Computação Universidade Federal de Goiás Laboratório de Microprocessadores e Microcontroladores Experimento 3: Temporizadores e Display LCD Alunos: Matrícula:
TREINADOR LÓGICO. O treinador lógico destina-se ao desenvolvimento de experiências com circuitos digitais em Laboratório Convencional.
TREINADOR LÓGICO O treinador lógico destina-se ao desenvolvimento de experiências com circuitos digitais em Laboratório Convencional. Visão geral: 1 A concepção inicial desse treinador é para ensaios com
Cerne. Conhecimento para o Desenvolvimento. Cerne Tecnologia e Treinamento. Apostila de BASIC para PIC16F628A
Cerne Conhecimento para o Desenvolvimento Cerne Tecnologia e Treinamento Apostila de BASIC para PIC16F628A (21) 43-9798 (11) 43-1877 E-mail: [email protected] MSN: [email protected] Skipe: cerne-tec
Microprocessadores. Cap. 4 Assembly
Microprocessadores Cap. 4 Assembly Parte 1: Entendendo o hardware do 18F4550 e precursores 2 Apresentando o hardware do 18F4550 x 16F877A 3 O 16F877A: 4 O 18F4550: 5 Divisão clock interno: 6 Osciladores
V1 5V +V. (14)Vdd (6)RB0 PIC 16F628A. (16) Clk-out. C1 33pF. C2 33pF. Figura 1 Circuito pisca-pisca.
AUTOR Maurício Madeira Oliveira Página pessoal (fonte): www.seguidorsolar.com.br Este curso pode ser usado e divulgado, sem fins comerciais, citar fonte e autor Prévia: Curso de Microcontroladores PIC
INTRODUÇÃO: MICROCONTROLADORES
INTRODUÇÃO: MICROCONTROLADORES MICROCONTROLADOR X MICROPROCESSADOR Baixa capacidade de processamento Freq. Operação em MHz Custo de R$ 7,00 a 30,00 Aplicações mais restrita Alta capacidade de processamento
1.1. Microprocessadores e microcontroladores Sistemas genéricos e sistemas dedicados. 2. Microcontrolador PIC:
PLANO DE ENSINO Curso: Engenharia mecânica com habilitação em controle e automação Disciplina: Eletiva I Carga Horária Semanal: 04 Carga Horária Total 80 EMENTA Introdução à linguagem Assembly, microcomputador
Temporização da CPU SEL-433 APLICAÇÕES DE MICROPROCESSADORES I. Ciclos de Máquina. Ciclos de Máquina. Temporização Interrupções Rotinas de Atraso
SEL-433 APLICAÇÕES DE MICROPROCESSADORES I Temporização da CPU Todos os Microcontroladores da família MCS-51 têm um oscilador interno. Para uso deste oscilador deve-se conectar um cristal entre os pinos
MICROPROCESSADORES E MICROCONTROLADORES PROVA 2 (Tema: Microcontrolador 8051) Resposta Esperada
MICROPROCESSADORES E MICROCONTROLADORES PROVA 2 (Tema: Microcontrolador 8051) Resposta Esperada 1. Tema: programação geral do microcontrolador 8051. Valor: 2,5 A Tabela 1 mostra um programa, em linguagem
CONTROLE DE LUMINOSIDADE DE UMA SALA
CONTROLE DE LUMINOSIDADE DE UMA SALA Luis Fernando Chaves Paulin 1, Renato de Mesquita Morettim 2, Severino dos Santos 3 [email protected] [email protected] [email protected] Resumo-
Introdução ao PIC. Guilherme Luiz Moritz 1. 6 de novembro de DAELT - Universidade Tecnológica Federal do Paraná
Guilherme Luiz Moritz 1 1 DAELT - Universidade Tecnológica Federal do Paraná 6 de novembro de 2013 Características do PIC Arquitetura Harvard RISC, 35 instruções 8 a 84 pinos Mais de 180 modelos Vários
Suporta os microcontroladores: R. Leonardo da Vinci, Campinas/SP CEP F.: (19) Kit de Desenvolvimento ACEPIC 28
Suporta os microcontroladores: PIC16F870, PIC16F872, PIC16F873A, PIC16F876A, PIC16F886, PIC18F2420, PIC18F2520, PIC18F2525, PIC18F2620, PIC18F2455, PIC 18F2550 e outros com 28 pinos O Kit de desenvolvimento
Kit Clp Pic 40B Manual do usuário. Manual do usuário - Kit Clp Pic 40B v2.0. Copyright VW Soluções
Manual do usuário - Kit Clp Pic 40B v2.0 Kit Clp Pic 40B 40 v2.0 Manual do usuário 1 Apresentação O ClpPic40-B v2.0 foi desenvolvido com base no microcontrolador PIC16F887, mas pode ser utilizado qualquer
C:\seminario\guiao_aluno\trab6\trab6.asm
Trabalho nº 6 Semáforo Rodoviário (automóveis & peões) ******************************************************************** NomeFicheiro: trab6.asm * Data: 3/Junho/2005 * Versão: 1.0 * Autores: José Miguel
CONTROLE DE UM SERVO MOTOR
CONTROLE DE UM SERVO MOTOR Versão 2015 RESUMO Esta experiência tem como objetivo a familiarização e o projeto de um circuito de controle simples de um servo motor. A parte experimental inclui atividades
EPUSP PCS 2011/2305/2355 Laboratório Digital. Frequencímetro
Frequencímetro E.T.M./2005 E.T.M./2006 (revisão) E.T.M./2011 (revisão) RESUMO Esta experiência tem como objetivo a familiarização com duas classes de componentes: os contadores e os registradores. Para
Registros do 16F628A. Prof. Luiz Antonio Vargas Pinto Prof. Vargas
Registros do 16F628A www.mikroe.com Prof. Luiz Antonio Vargas Pinto www.vargasp.com STATUS (03) STATUS (03) Após RESET Chave dos bancos STATUS (03) Bit 7: IRP - Seleção de banco de registradores 0 - seleciona
Introdução ao Microcontrolador PIC
Introdução ao Microcontrolador PIC Nikolas Libert Aula 11 Eletrônica Digital ET52C Tecnologia em Automação Industrial Memórias Memórias Memória de dados Núcleo do μc Memória de código Normalmente os microcontroladores
Sistemas Embarcados:
Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Sistemas Embarcados: Interfaces de Entradas e Saídas DCA0119 Sistemas Digitais Heitor Medeiros Florencio
Cerne. Conhecimento para o Desenvolvimento. Cerne Tecnologia e Treinamento
Cerne Conhecimento para o Desenvolvimento Cerne Tecnologia e Treinamento Apostila de Pascal Avançado para PIC16F877A (21) 4063-9798 (11) 4063-1877 E-mail: [email protected] MSN: [email protected]
Placa de desenvolvimento USB AFSmartBoard utiliza PIC18F4550 da Microchip, microcontrolador com o Flash 32kb, 2048 bytes de memória RAM
Guia rápido AFSmart Board PIC18F4550-I/P Placa de desenvolvimento USB AFSmartBoard utiliza PIC18F4550 da Microchip, microcontrolador com o Flash 32kb, 2048 bytes de memória RAM Características Placa para
MICROPROCESSADORES E MICROCONTROLADORES. Prova 1 Resposta Esperada
MICROPROCESSADORES E MICROCONTROLADORES Prova 1 Resposta Esperada 1. Tema: Conceitos Gerais Valor: 1,0 Os microcontroladores da família 8051 possuem arquitetura CISC, e os microcontroladores da família
