Introdução aos Microcontroladores PIC16Fxx (Material Incompleto)

Tamanho: px
Começar a partir da página:

Download "Introdução aos Microcontroladores PIC16Fxx (Material Incompleto)"

Transcrição

1 Introdução aos Microcontroladores PIC16Fxx (Material Incompleto) Luis Claudio Gambôa Lopes Engenharia de Controle e Automação ETN07 - Laboratório de Microprocessadores Informática Industrial/Automação SDM - Sistemas Digitais e Microprocessados CEFET-MG Campus III - Leopoldina 18 de agosto de 2011

2 Resumo Esse material tem como objetivo introduzir os conceitos básicos do uso de microcontroladores PIC e utilização das ferramentas de desenvolvimento de software e hardware. Os conceitos utilizados são válidos para outros microcontroladores e ferramentas de desenvolvimento. Maiores informações específicas sobre o microcontrolador PIC16F628A e seu uso podem ser obtidas no datasheet [1] ou nos livros [2, 3].

3 Conteúdo Introdução Introdução Microcontroladores Linguagem C PIC16Fxx (SDCC) Hardware PIC16Fxx Hardware Usando o Simulador PicsimLab

4 Introdução Atualmente com o avanço das tecnologias na área da eletrônica, é cada vez mais comum o uso de dispositivos baseados nessas tecnologias, cada vez é mais fácil encontrar dispositivos com tecnologia de processamento digital como computadores, calculadoras, palmtops, celulares entre outros. Entender como realmente funcionam estes dispositivos permite o melhor uso dos mesmos e até a idealização de outras aplicações para os mesmos.

5 Conteúdo Introdução Introdução Microcontroladores Linguagem C PIC16Fxx (SDCC) Hardware PIC16Fxx Hardware Usando o Simulador PicsimLab

6 Representação numérica - Conversão 123 = = 0x7B x 1 = 1 x 2 = 2 x 4 = 0 x 8 = = 0xB

7 Representação numérica - Complemento a 2 Positivo x7B Complemento x84 Complemento A x85 Negativo x85 Bit de sinal

8 Representação numérica - Figura 2x2 8 bits r:0x00 g:0x00 b:0x00 r:0xff g:0x00 b:0x00 r:0x00 g:0x00 b:0xff r:0xff g:0xff b:0xff r: g: b: r: g: b: r: g: b: r: g: b:

9 Representação numérica - Som 8 bits T 20 amostras (1ms) Para Fs=20Khz T=50us XE2 0x28 0xF6 0xEC 0xE2 0xD8 0xEC 0x14 0x28 0x28 0x0A 0xF6 0xE2 0xD8 0xE2 0xEC 0x14 0x28 0x0A 0xEC

10 Tabela ASCII 000 0x00 (nul) 032 0x x x01 (soh) 033 0x21! 065 0x41 A 097 0x61 a 002 0x02 (stx) 034 0x22 " 066 0x42 B 098 0x62 b 003 0x03 (etx) 035 0x23 # 067 0x43 C 099 0x63 c 004 0x04 (eot) 036 0x24 $ 068 0x44 D 100 0x64 d 005 0x05 (enq) 037 0x25 % 069 0x45 E 101 0x65 e 006 0x06 (ack) 038 0x26 & 070 0x46 F 102 0x66 f 007 0x07 (bel) 039 0x27 ' 071 0x47 G 103 0x67 g 008 0x08 (bs) 040 0x28 ( 072 0x48 H 104 0x68 h 009 0x09 (tab) 041 0x29 ) 073 0x49 I 105 0x69 i 010 0x0A (lf) 042 0x2A * 074 0x4A J 106 0x6A j 011 0x0B (vt) 043 0x2B x4B K 107 0x6B k 012 0x0C (np) 044 0x2C 076 0x4C L 108 0x6C l 013 0x0D (cr) 045 0x2D x4D M 109 0x6D m 014 0x0E (so) 046 0x2E x4E N 110 0x6E n 015 0x0F (si) 047 0x2F / 079 0x4F O 111 0x6F o 016 0x10 (dle) 048 0x x50 P 112 0x70 p 017 0x11 (dc1) 049 0x x51 Q 113 0x71 q 018 0x12 (dc2) 050 0x x52 R 114 0x72 r 019 0x13 (dc3) 051 0x x53 S 115 0x73 s 020 0x14 (dc4) 052 0x x54 T 116 0x74 t 021 0x15 (nak) 053 0x x55 U 117 0x75 u 022 0x16 (syn) 054 0x x56 V 118 0x76 v 023 0x17 (etb) 055 0x x57 W 119 0x77 w 024 0x18 (can) 056 0x x58 X 120 0x78 x 025 0x19 (em) 057 0x x59 Y 121 0x79 y 026 0x1A (eof) 058 0x3A : 090 0x5A Z 122 0x7A z 027 0x1B (esc) 059 0x3B ; 091 0x5B [ 123 0x7B { 028 0x1C (fs) 060 0x3C < 092 0x5C \ 124 0x7C 029 0x1D (gs) 061 0x3D = 093 0x5D ] 125 0x7D } 030 0x1E (rs) 062 0x3E > 094 0x5E ˆ 126 0x7E 031 0x1F (us) 063 0x3F? 095 0x5F _ 127 0x7F

11 Microprocessador Lógica digital versus lógica processada Processo: Entrada -> Processador -> Saída Diferenças: Microcontrolador Microprocessador Microcomputador

12 S V U1 +5V A15 A14 A13 A12 A11 A10 A9 A8 AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0 ALE CLK OUT X1 X Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q A14 2 A12 21 A10 25 A8 4 A6 6 A4 8 A2 10 U OE GND CS 20 D7 D6 D5 D4 D3 D A0 11 Vcc VPP W27E U3 +5V 3 U V 40 Vcc GND 20 U4 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 PC0 PC1 PC2 PC3 PC4 PC TITLE FILE: PAGE +5V OF R2 R3 R4 R5 R6 R S4 S5 S3 S1 S2 1 R D1 D3 D4 D5 D6 D7 D8 REVISION: Luis Claudio Gamboa Lopes DRAWN BY: Sistema Mínimo Microprocessado U Processador 8 bits U2-74LS573 - Latch 8 bits U3 - W27E257 - Memória EEPROM 32k x 8 U Memória RAM estática 256 x 8 com Portas de E/S e Temporizador U Portas OU U Inversores R11 R10 R16 R17 D14 R22 C SOD 5 SID 7 RST7.5 8 RST6.5 9 RST5.5 6 TRAP 10 INTR 11 INTA 39 HOLD 38 HLDA 32 RD 31 WR 34 IO/M 33 S1 29 S0 3 RESETOUT 36 RESETIN 35 READY GND Vcc 40 C2 U6 2 D1 3 D2 4 D3 5 D4 6 D5 7 D6 8 D7 9 D8 1 OE 11 LE U2 26 A13 23 A11 24 A9 3 A7 5 A5 7 A3 9 A1 D1 12 D0 7 IO/M 19 AD7 18 AD6 17 AD5 16 AD4 15 AD3 14 AD2 13 AD1 12 AD0 8 CE 11 ALE 9 RD 10 WR 4 RESET 3 TIMER IN 6 TIMER OUT 8085 Basic System

13 1 2 +5V U1 RA2 RA3 RA4 MCLR/RA5 Vss RB0 RB1 RB2 RB3 RA1 RA0 RA7/OSC1 RA6/OSC2 Vdd RB7 RB6 RB5 RB V +5V TITLE FILE: PAGE OF REVISION: DRAWN BY: Sistema Microcontrolado U1 Microcontrolador PIC16F628A R11 R10 R16 R17 S4 S5 S3 S1 S7 R8 S2 D1 R1 D3 R2 R3 D4 R4 D5 R5 D6 R6 D7 R7 D8 PIC Basic System Luis Claudio Gamboa Lopes

14 Tipos de Memórias RAM Estática Dinâmica ROM ROM PROM EPROM EEPROM (FLASH)

15 Camadas de software (Tempo de Execução) Microcomputador Microcontrolador Aplicação Bibliotecas (dll) Aplicação Hardware Sistema Operacional Drivers Hardware

16 Etapas de processamento de um programa Linguagem gráfica (fluxograma) alto nível Tradutor Linguagem estruturada (c) Compilador (Compiler) Linguagem assembly baixo nível Assemblador (Assembler) Linguagem de máquina

17 Fluxograma Início Configuração hardware Inicialização Laço principal Botão 1 Pressionado S N Liga Saída Botão 2 Pressionado S N Desliga Saída

18 Fluxograma PIC Início CONFIG=0x2929 CMCON=0x07 TRISA=0xFE TRISB=0x00 RB0=0 Laço principal RA1 == 0 RB0=1 RA2 == 0 RB0=0

19 Programa em c: #include <pic16f628a.h> //configuração hardware typedef unsigned int word; word at 0x2007 CONFIG = 0x2929; void main() { //configuração hardware CMCON=0x07; TRISA=0xFE; TRISB=0x00; //inicialização RB0=0; //laço principal while(1) { //liga saída if(ra1 == 0)RB0=1; //desliga saída if(ra2 == 0)RB0=0; } }

20 Programa em assembly: #include <p16f628a.inc> ;configuração hardware CONFIG 0x2929 org 0x00 inicio: ;configuração hardware MOVLW 0x07 MOVWF CMCON BSF STATUS,RP0 MOVLW 0xFE MOVWF TRISA CLRF TRISB BCF STATUS,RP0 ;inicialização BCF PORTB,0 ;laço principal laco: ;liga saída BTFSS PORTA,1 BSF PORTB,0 ;desliga saída BTFSS PORTA,2 BCF PORTB,0 GOTO END laco

21 Programa em linguagem de máquina: 0x3007 0x009F 0x1683 0x30FE 0x0085 0x0186 0x1283 0x1006 0x1C85 0x1406 0x1D05 0x1006 0x280A

22 Conteúdo Introdução Introdução Microcontroladores Linguagem C PIC16Fxx (SDCC) Hardware PIC16Fxx Hardware Usando o Simulador PicsimLab

23 Modificadores Segue os mesmos padrões do Ansi c. Modificadores de tipo: short - divide número de bits por 2. long - dobra número de bits. unsigned - variável sem sinal. signed - variável com sinal. Modificadores de acesso: const - Variável não pode ser modificada pelo programa. volatile - Variável pode mudar de valor sem previsão (evita otimização de código). extern - Variável declarada em outro arquivo static - Variável local tem o valor mantido entre as chamadas da função a que pertence. register -Variável local deve ser armazenada nos registradores da CPU para aumentar velocidade de acesso.

24 Tamanho tipos inteiros Tipo N bits N bytes signed unsigned char > > +255 short int > > int > > long int > > float /- (3.4 e-38 -> 3.4 e+38)

25 Considerações Como o processador é de 8 bits, usar preferencialmente variáveis do tipo char. Utilizar declarações em condições booleanas como if(a) ao invés de if(a == 1).

26 Mascaramento variável & 0x0F if((porta & 0x1E)!= 0x1E)...

27 Atraso Código para gerar atraso em ms: /* atraso aproximado em ms para clock 4Mhz*/ void atraso(unsigned int valor) { unsigned int i,j; for (i =0; i< valor; i++) { for (j =0 ; j < 200; j++) //laço de 1ms aproximado { _asm NOP NOP NOP NOP NOP _endasm; } } }

28 Conteúdo Introdução Introdução Microcontroladores Linguagem C PIC16Fxx (SDCC) Hardware PIC16Fxx Hardware Usando o Simulador PicsimLab

29 Características especiais Oscillator Selection Reset Power-on Reset (POR) Power-up Timer (PWRT) Oscillator Start-up Timer (OST) Brown-out Reset (BOR) Interrupts Watchdog Timer (WDT) Sleep Code Protection ID Locations In-Circuit Serial Programming Low-Voltage In-Circuit Serial Programming In-Circuit Debugger (só no 877A)

30 Saídas O microcontrolador PIC16F628A possui duas portas de 8 bits (PORTA e PORTB), já microcontrolador PIC16F877A possui cinco portas, sendo 3 de 8 bits (PORTB, PORTC e PORTD), uma de 6 bits (PORTA) uma de 3 bits (PORTE). Os pinos das portas podem ser configurados com entrada e saída através dos registradores TRIS*, se o bit do TRIS* for 1 o pino e entrada e se for 0 é saída.

31 Saídas Código assembly para configurar as portas como entrada e saída: MOVLW 0X07 MOVWF CMCON BANKSEL TRISA MOVLW B MOVWF TRISA MOVLW B MOVWF TRISB BANKSEL PORTA Código equivalente em c: ;DESLIGA COMPARADORES PORTA CMCON=0x07; TRISA=0xFE; TRISB=0x00; //só RA0 saída, o resto entrada (RA7, RA6... RA2 e RA1) //todos RB* com saída

32 Portas O acesso as portas é feito usando os registradores PORT*. Código assembly de escrita ao PORTB MOVLW 0X0F MOVWF PORTB Código equivalente em c: PORTB= 0X0F;

33 TMR0 O TMR0 é um timer de 8 bits, que gera uma interrupção quando há um estouro de contagem (255 -> 0). Fosc/4 T0CKI pin T0SE 0 T0CS 1 Divisor PS2 PS1 PS0 1 PSA 0 TMR0 Estouro FF S Q R T0IF T0IE Interrupção Borda de subida BCF INTCON,T0IF GIE

34 Registros utilizados pelo TMR0 Nome Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 TMR0 Registrador TMR0 INTCON GIE PEIE T0IE INTE RBIE T0IF INTF RBIF OPTION NOT_RBPU INTEDG T0CS T0SE PSA PS2 PS1 PS0 TRISA TRIS7 TRIS6 TRIS5 TRISA4 TRIS3 TRIS2 TRIS1 TRIS0

35 TMR0 A frequência e o período de estouro do TIMER0 é dado pela equação: F TMR0 = Fosc 4 Divisor (256 TMR0) T TMR0 = 4 Fosc Divisor (256 TMR0) (1)

36 Programa TMR0 Programa para piscar PORTB a cada segundo (aproximado )usando o TMR0(Fosc = 4Mhz): void main() { char a; CMCON=0x07; TRISA=0xFE; TRISB=0x00; //disable analog comparators //configure input/output //Configura TMR0 T0CS=0; PSA=0; PS2=1; PS1=0; PS0=1; while(1) { for(a=0;a<125;a++) { TMR0=131; T0IF=0; while(!t0if); } PORTB^=0xFF; } }

37 TMR1 O TMR1 e um timer de 16 bits, que gera uma interrupção quando há um estouro de contagem ( > 0). Fosc/4 TMR1CS T1SYNC RB7 pin RB6 pin Osc. 0 1 Divisor T1CK PS1 PS0 Sincroniza 1 0 TMR1H TMR1 TMR1L Estouro FF S Q R TMR1IF Interrupção Borda de subida T1OSCEN TMR1ON BCF PIR1,TMR1IF TMR1IE GIE PEIE

38 Registros utilizados pelo TMR1 Nome Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 INTCON GIE PEIE T0IE INTE RBIE T0IF INTF RBIF PIR1 EEIF CMIF RCIF TXIF - CCP1IF TMR2IF TMR1IF PIE1 EEIE CMIE RCIE TXIE - CCP1IE TMR2IE TMR1IE TMR1L Parte baixa do registrador TMR1 TMR1H Parte alta do registrador TMR1 T1CON - - T1CKPS1 T1CKPS0 T1OSCEN T1SYNC TMR1CS TMR1ON

39 TMR1 A frequência e o período de estouro do TIMER1 é dado pela equação, onde (TMR1 = ((TMR1H << 8) TMR1L). F TMR1 = Fosc 4 Prescaler (65536 TMR1) T TMR1 = 4 Fosc Prescaler (65536 TMR1) (2)

40 TMR1 Programa Programa para piscar PORTB usando o TMR1 a cada segundo (aproximado) (Fosc = 4Mhz): void main() { char a; CMCON=0x07; TRISA=0xFE; TRISB=0x00; //disable analog comparators //configure input/output //Configura TMR1 TMR1CS=0; T1CKPS1=1; T1CKPS0=1; while(1) { for(a=0;a<2;a++) { TMR1ON=0; TMR1H=0x0B; TMR1L=0xDC; TMR1IF=0; TMR1ON=1; while(!tmr1if); } PORTB^=0xFF; } }

41 TMR2 O TMR2 e um timer de 8 bits, que gera uma interrupção quando o valor do TMR2 é igual ao registrador PR2. Fosc/4 Divisor T2CK PS1 PS TMR2ON TMR2 COMP PR2 Estouro Divisor TOUT PS3 PS2 PS1 PS FF S R Q TMR2IF TMR2IE BCF PIR1,TMR2IF GIE PEIE Interrupção Borda de subida

42 Registros utilizados pelo TMR2 Nome Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 INTCON GIE PEIE T0IE INTE RBIE T0IF INTF RBIF PIR1 EEIF CMIF RCIF TXIF - CCP1IF TMR2IF TMR1IF PIE1 EEIE CMIE RCIE TXIE - CCP1IE TMR2IE TMR1IE TMR2 Registrador TMR2 PR2 Registrador PR2 T1CON - TOUTPS3 TOUTPS2 TOUTPS1 TOUTPS0 TMR2ON T2CKPS1 T2CKPS0

43 TMR2 A frequência e o período de estouro do TIMER2 é dado pela equação: F TMR2 = Fosc 4 Prescaler (PR2+1) Postscaler (3) T TMR2 = 4 Fosc Prescaler (PR2+1) Postscaler

44 TMR2 Programa Programa para piscar PORTB usando o TMR2 a cada segundo (aproximado) (Fosc = 4Mhz): void main() { char a; CMCON=0x07; TRISA=0xFE; TRISB=0x00; //disable analog comparators //configure input/output //Configura TMR2 T2CKPS1=1; T2CKPS0=1; TOUTPS3=1; TOUTPS2=1; TOUTPS1=1; TOUTPS0=1; while(1) { for(a=0;a<15;a++) { TMR2ON=0; TMR2=0; PR2=255; TMR2IF=0; TMR2ON=1; while(!tmr2if); } PORTB^=0xFF; } }

45 Interrupções PIC16F628A Os pedidos de interrupção são gerados pelos periféricos e fazem o microcontrolador parar a execução do programa principal e pular para o endereço do vetor de interrupção (0x0004) para o tratamento da mesma. PIE1 e PIR1 INTCON PEIE GIE Interrupção EEPROM INT EEIE TMR0 INT T0IE Endereço 0x0004 EEIF T0IF Comparadores INT CMIE RB0 INT INTE CMIF INTF Serial RX INT RCIE PORTB INT RBIE RCIF RBIF Serial TX INT TXIE TXIF CCP1 INT CCP1IE CCP1IF TMR2 INT TMR2IE TMR2IF TMR1 INT TMR1IE TMR1IF

46 Registros utilizados pelas interrupções Nome Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 INTCON GIE PEIE T0IE INTE RBIE T0IF INTF RBIF PIR1 EEIF CMIF RCIF TXIF - CCP1IF TMR2IF TMR1IF PIE1 EEIE CMIE RCIE TXIE - CCP1IE TMR2IE TMR1IE

47 Programa TMR0 Programa para piscar PORTB a cada segundo usando a interrupção do TMR0(Fosc = 4Mhz): void main() { char a; void isr() interrupt 0 { if(t0if) { TMR0=131; a++; if(a >=125) //8ms*125 = 1s { a=0; PORTB^=0xFF; } T0IF=0; } } CMCON=0x07; TRISA=0xFE; TRISB=0x00; //Configura TMR0 T0CS=0; PSA=0; PS2=1; PS1=0; PS0=1; TMR0=131; T0IF=0; GIE=1; T0IE=1; //T=1us*64*( ) = 8ms while(1); } //disable analog comparators //configure input/output

48 EEPROM de dados 877->grava na flash também (programa) Funções para leitura e gravação da EEPROM interna: unsigned char e2prom_r(unsigned char addr) { EEADR=0x7F & addr; RD=1; return EEDATA; } void e2prom_w(unsigned char addr,unsigned char val) { EEADR=0x7F & addr; EEDATA=val; WREN=1; EECON2=0x55; EECON2=0xAA; WR=1; while(wr==1); WREN=0; return; }

49 USART

50 Comparadores Analógicos

51 Tensão de Referência 877-> só para os comparadores interno e externo

52 Unidade de Comparação, Captura e PWM (CCP)

53 Conversor A/D 10bit AD 877 -> AD 628 -> Delta sigma

54 Porta Serial Sincrona (MSSP) 877->hardware 628 ->Software Serial Peripheral Interface (SPI) Inter-Integrated Circuit (I2C)

55 Conteúdo Introdução Introdução Microcontroladores Linguagem C PIC16Fxx (SDCC) Hardware PIC16Fxx Hardware Usando o Simulador PicsimLab

56 Leitura de Tecla (anti-repique) Ideal Real Figura: Repique acionamento mecânico

57 Leitura de Tecla (anti-repique) Código sem proteção: \\leitura na borda de descida com bloqueio if(!ra1) { RB0^=0x01; while(!ra1); } \\leitura na borda de descida sem bloqueio if(!ra2) { if(aux2) { RB1^=0x01; AUX2=0; } } else { AUX2=1; }

58 Leitura de Tecla (anti-repique) Código com proteção anti-repique: \\leitura na borda de descida com bloqueio if(!ra1) { atraso(10); //atraso 10 ms if(!ra1) { RB0^=0x01; while(!ra1); } } \\leitura na borda de descida sem bloqueio if(!ra2) { if(aux2) { atraso(10); //atraso 10 ms if(!ra2) { RB1^=0x01; AUX2=0; } } } else { AUX2=1; }

59 Leitura de Várias Teclas PORTA & 0x1E

60 Acionamento de LEDs Os Leds podem ser acionados pelo acesso direto aos PORTs; No caso de LEDs ligados ao PORTB: \\Acende todos os LEDS PORTB=0xFF; \\apaga LED em RB0 RB0=0;

61 Acionamento de Motor de Passo O acionamento deve ser feito através de um CI driver de potência.. PORTB=0; while(1) { PORTB=0x01; atraso(500); PORTB=0x02; atraso(500); PORTB=0x04; atraso(500); PORTB=0x08; atraso(500); }

62 Display 7 Segmentos O display de 7 segmentos é composto por 7 segmentos (Leds) mais um ponto, a ligação do display é feita conforme a Figura 2. RB2 RB3 RB5 RB6 RB7 RB1 RB0 a b c d e f g p f e a g d b c p RB2 RB3 RB5 RB6 RB7 RB1 RB0 a b c d e f g p f e a g d b c p RB4 Comum Comum Figura: Display 7 segmentos

63 Display 7 Segmentos O acionamento dos displays é multiplexado e pode ser feito pelo seguinte código: while(1) { /*Mostra 1 no display da direita*/ PORTB=display(1); atraso(5); /*Mostra 2 no display da esquerda*/ PORTB=display(2) 0x10; atraso(5); }

64 Display 7 Segmentos Abaixo está o código da função display que converte o valor binário do dígito para código de 7 segmentos: unsigned char display(unsigned char v) { switch(v) { case 0: return 0xEE; break; case 1: return 0x28; break; case 2: return 0xCD; break; case 3: return 0x6D; break; case 4: return 0x2B; break; case 5: return 0x67; break; case 6: return 0xE7; break; case 7: return 0x2C; break; case 8: return 0xEF; break; case 9: return 0x6F; break; case 10: return 0xAF; break; case 11: return 0xE3; break; case 12: return 0xC6; break; case 13: return 0xE9; break; case 14: return 0xC7; break; case 15: return 0x87; break; default: return 0; break; } }

65 PWM por software (Acionamento CC Lâmpada, Ventilador e Aquecedor) A técnica PWM (Modulação por lagura de pulso - Pulse Width Modulation) consiste em controlar a largura de um pulso de frenquência fixa de período T e através de chaveamentos liga e desliga controlar uma carga CC (Lâmpada, Ventilador, Aquecedor...) com o mesmo efeito da variação linear de tensão sobre a mesma, com a vantagem de operar as chaves (transistores) fora da região ativa e por isso não perdendo energia considerável em forma de calor nas chaves. A Figura 2 mostra um contador de referência e um nível que é utilizado para gerar a saída PWM, também é mostrado o equivalente analógico da saída PWM.

66 PWM por software (Acionamento CC Lâmpada, Ventilador e Aquecedor) contador nível T Saída Digital 5v 0v Ton Toff 5v Equivalente Analógico 0v

67 PWM por software (Acionamento CC) O PWM pode ser facilmente implementado por software, utilizado um timer interno do PIC e interrupções como no código em c abaixo (saída em RB0): /* PWM - usando tmr0 (placa 1)*/ #include <pic16f628a.h> #include "atraso.h" typedef unsigned int word; word at 0x2007 CONFIG = _WDT_OFF & _PWRTE_OFF & _INTOSC_OSC_NOCLKOUT & _MCLRE_ON & _BOREN_OFF & _LVP_OFF & _DATA_CP_OFF & _CP_OFF; #define _tmr0_ini 206 unsigned char cnt; unsigned char nivel; void atraso(unsigned char); void isr() interrupt 0 { if(cnt < nivel) //quando contagem = 0; { RA0=1; } else { RA0=0; } cnt=cnt+1; if(cnt > 10)cnt=0; TMR0=_tmr0_ini; //reinicia contagem T0IF=0; // reseta flag TMR0 }

68 PWM por software (Acionamento CC) void main() { CMCON=0x07; //Desliga comparadores analogicos TRISA=0xFE; //configura PORTA TRISB=0x00; //configura PORTB /* configuracao TMR0 */ T0CS=0; //Clock do tmr0 como clock_cpu/4 PSA=1; //Nao usa pre-scaler TMR0=_tmr0_ini; //Conta de 206 a 0 (50) /* tempo entre interrupcoes do TMR0 = ((50*20)/(clock_cpu/4)= para 4MHz =>0.001 s*/ /* configura interrupcoes */ GIE=1; //liga interrupcoes T0IE=1; //liga interrupcao do TMR0 T0IF=0; //Apaga flag de interrupcao nivel=5; } while(1) //espera interrupcoes { if(!ra1) { atraso(10); if(!ra1) { if(nivel < 10) nivel=nivel+1; while(!ra1); } } if(!ra2) { atraso(10); if(!ra2) { if(nivel > 0) nivel=nivel-1; while(!ra2); } } }

69 LCD

70 Teclado

71 EEPROM Externa (I2C)

72 RTC

73 BUZZER

74 Conteúdo Introdução Introdução Microcontroladores Linguagem C PIC16Fxx (SDCC) Hardware PIC16Fxx Hardware Usando o Simulador PicsimLab

75 PicsimLab Placa 1

76 Displays PWR CONN1 1 2 Q1 E C FND5148 L1 L2 L3 L4 L5 L6 L7 L8 Com B L5 L2 1 S2 L7 L4 R4 L1 2 C2 L6 Vcc L3 L8 100nF U1 100uF 1 IN GND 2 OUT 7805 Q2 U2 C E FND5148 L1 L2 L3 L4 L5 L6 L7 L8 Com B 100uF 2.2K 2.2K L5 L2 L7 L4 R17 L1 C4 L6 L3 L8 100nF U3 +5V RESET S1 1 2 LED1 1 2 LED2 1 2 LED3 1 2 LED4 1 2 LED5 1 2 LED6 1 2 LED7 1 2 LED V R7 407R R9 407R R11 407R R13 407R R15 407R R18 407R R20 407R R23 407R LED/Display LEDs U6 RA2 RA3 RA4 MCLR/RA5 Vss RB0 RB1 RB2 RB3 +5V RA1 RA0 RA7/OSC1 RA6/OSC2 Vdd RB7 RB6 RB5 RB R3 R5 R6 R8 10k 10k 10k 10k +5V U4 Chaves Picsimlab board 1 +5V CONN ICSP Luis Claudio Gamboa Lopes Esquemático PicsimLab placa 1 C3 1 2 C1 1 2 R2 470R R1 10K 10k 10k 10k 10k R24 380R 380R 380R 380R R19 R21 R k R26 S3 S4 S5 S6 Vcc LED TITLE FILE: PAGE LED9 1 2 LED LED R R25 B OF C E LEDs Q3 Lampada 2 1 CONN3 REVISION: DRAWN BY: CONN2 R10 R12 R14 R16

77 Placa 1 - Características Entradas: 1. RA1 - Botão de pressão 2. RA2 - Botão de pressão 3. RA3 - Botão de pressão 4. RA4 - Botão de pressão

78 Placa 1 - Características Saídas: 1. RA0 - LED verde e lâmpada incandescente 2. RA1 - LED verde 3. RA2 - LED verde 4. RA3 - LED verde 5. RB0 - LED vermelho e displays de 7 segmentos (segmento g) 6. RB1 - LED vermelho e displays de 7 segmentos (segmento f) 7. RB2 - LED vermelho e displays de 7 segmentos (segmento a) 8. RB3 - LED vermelho e displays de 7 segmentos (segmento b) 9. RB4 - LED vermelho e mutliplexação dos displays de 7 segmentos 10. RB5 - LED vermelho e displays de 7 segmentos (segmento c) 11. RB6 - LED vermelho e displays de 7 segmentos (segmento d) 12. RB7 - LED vermelho e displays de 7 segmentos (segmento e)

79 PicsimLab placa 2

80 Esquemático PicsimLab placa 2 1 RA2 2 RA3 3 RA4 4 MCLR/RA5 5 Vss 6 RB0 7 RB1 8 RB2 9 RB3 18 RA1 17 RA0 16 RA7/OSC1 15 RA6/OSC2 14 Vdd 13 RB7 12 RB6 11 RB5 10 RB4 U6 2 V+ 3 C1 4 C2+ 5 C2 6 V 7 Tx2 Out 8 Rx2 In 9 Rx2 Out 10 Tx2 In 11 Tx1 In 12 Rx1 Out 13 Rx1 In 14 Tx1 Out 1 C1+ MAX232 U CONN7 IN OUT 7805 GND U2 1 2 C6 1 2 C8 1 2 C7 1 2 C5 1 2 C4 1 2 C1 D5 1N4148 D6 1N4148 D4 1N4148 D7 1N4148 R10 330R R11 10k R12 10k R13 10k R1 10K 1 2 S1 5 SDA 1 A0 3 A2 6 SCL 2 A1 7 n/c 24Cxx U4 +5V 1 OUT 2 1D 3 2D 4 3D 5 4D 6 5D 7 6D 8 7D 9 8D 19 1Q 18 2Q 17 3Q 16 4Q 15 5Q 14 6Q 13 7Q 12 8Q 11 CLK U7 +5V +5V +5V R14 +5V +5V CONN2 +5V 1 2 LED CONN5 R5 330R 1 2 LED1 LCD PWR FILE: REVISION: DRAWN BY: PAGE OF TITLE ICSP CONN6 +5V 2 1 CONN1 RESET KEYBOARD Luis Claudio Gamboa Lopes Picsimlab board 2 R4 2K +5V PCF SCL 5 SDA 1 OSCI 2 OSCO 4 GND 8 Vdd 7 CLKOUT 3 /INT U1 U3 C2 R2 470R +5V R3 2K R6 1K R9 330R 1 2 LED4 R8 330R 1 2 LED3 R7 330R 1 2 LED2 +5V D2 D3 1 2 B1 2 1 S2 Serial RTC LEDs 10k 1uF 1uF 1uF 1uF 100uF 100uF C3 100nF

81 Placa 2 - Características

82 PicsimLab placa 3 e 4

83 Esquemático PicsimLab placa 3 e 4 2 V+ 3 C1 4 C2+ 5 C2 6 V 7 Tx2 Out 8 Rx2 In 9 Rx2 Out 10 Tx2 In 11 Tx1 In 12 Rx1 Out 13 Rx1 In 14 Tx1 Out 1 C1+ MAX232 U CONN12 IN OUT 7805 GND U9 1 2 C8 1 2 C6 1 2 C5 1 2 C C7 1 2 C9 R47 330R R19 10K 1 2 S1 +5V +5V +5V +5V R51 +5V +5V CONN11 +5V 1 2 LED6 LCD PWR ICSP CONN8 +5V 2 1 CONN10 RESET Luis Claudio Gamboa Lopes Picsimlab board 3 R20 470R 1 MCLR/VPP 2 RA0/AN0 3 RA1/AN1 4 RA2/AN2/Vref /CVref 5 RA/AN3/Vref+ 6 RA4/TOCKI/C1OUT 7 RA5/AN4/SS/C2OUT 8 RE0/RD/AN5 9 RE1/WR/AN6 10 RE2/CS/AN7 13 OSC1/CLKIN 14 OSC2/CLKOUT 15 RC0/T1OSO/T1CKI 16 RC1/T1OSI/CCP2 17 RC2/CCP1 18 RC3/SCK/SCL 19 RD0/PSP0 20 RD1/PSP1 40 RB7/PGD 39 RB6/PGC 38 RB5 37 RB4 36 RB3/PGM 35 RB2 34 RB1 33 RB0/INT 30 RD7/PSP7 29 RD6/PSP6 28 RD5/PSP5 27 RD4/PSP4 26 RC7/RX/DT 25 RC6/TX/CK 21 RD2/PSP2 22 RD3/PSP3 23 RC4/SDI/SDA 24 RC5/SDO 12 Vss 11 Vdd 31 Vss 32 Vdd PIC16F877A U6 2 1 S6 5 SDA 1 A0 3 A2 6 SCL 2 A1 7 n/c 24Cxx U7 C E B Q5 1 2 Beeper U CONN LM358 U LM358 U2 R40 R41 R43 R44 R46 R48 R49 R50 FND L1 9 L2 6 L3 8 L4 10 L5 12 L6 11 L7 13 L8 5 Com L1 L2 L3 L4 L5 L6 L7 L8 U10 R52 C E B Q6 FND L1 9 L2 6 L3 8 L4 10 L5 12 L6 11 L7 13 L8 5 Com L1 L2 L3 L4 L5 L6 L7 L8 U11 R53 C E B Q7 FND L1 9 L2 6 L3 8 L4 10 L5 12 L6 11 L7 13 L8 5 Com L1 L2 L3 L4 L5 L6 L7 L8 U12 R54 C E B Q8 FND L1 9 L2 6 L3 8 L4 10 L5 12 L6 11 L7 13 L8 5 Com L1 L2 L3 L4 L5 L6 L7 L8 U13 R55 R45 R42 +5V +5V Vcc Vcc C E B Q3 R28 Vcc D2 2 1 CONN7 Ventilador Q2 1 2 LED1 C E B Q1 R21 +5V R25 +5V R CONN CONN CONN3 R14 C11 C1 R18 R13 R CONN CONN CONN1 +5V C E B Q4 R36 R38 +5V Aquecedor 68R 5W U5 C4 R29 C3 2 3 cw 1 ccw R10 +5V C2 R15 R S2 +5V R LED2 R24 R S3 +5V R LED3 R30 R S4 +5V R LED4 R33 R S5 +5V R LED5 R37 R34 R12 +5V +5V R11 R8 R2 D1 +5V R9 2 3 cw 1 ccw R3 R5 R1 R4 R6 R7 +5V FILE: REVISION: DRAWN BY: PAGE OF TITLE ADJ LM431 U1 Displays 7 Segmentos Teclas e LEDs Potenciometro 0 5V Buzzer Referencia e medida de temperatura Jumpers Serial EE2PROM Expansao 4k7 4k7 4k7 4k7 100uF 100uF 100nF 1uF 1uF 1uF 1uF 10k 1k 68R 10k 220R 220R 220R 220R 220R 220R 220R 220R 1k 10k 10k 10k 10k 10k 10k 10k 10k 330R 330R 330R 330R 10k 4k7 330R 1uF 4k7 150R 10k 1k 22k 33k 47k 100nF 330R 1K 330K 10K 1K 1K 10K 1K 1K 1K 1K 330K

84 Placa 3 - Caracterísitcas

85 Medição de Temperatura

86 Simulação Serial

87 Simulação Gravador Picstart+

88 PicsimLab placa 4 e 5

89 Placa 5 e 6 - Caracterísitcas

90 Medição de Temperatura

91 Simulação Serial

92 Simulação Gravador Picstart+

93 Referências Bibliográficas [1] PIC16F627A/628A/648A FLASH-Based 8-Bit CMOS Data Sheet, [2] David José de Souz. Desbravando o PIC16F628A. Editora Erica, [3] Fábio Pereira. Microcontroladores PIC - Técnicas Avançadas. Editora Erica, 6 edition, 2008.

94 Apêndices Assembly PIC16Fxx Programação Programas

95 Mnemonic, Description Cycles 14-Bit Opcode Status Notes Operands MSb LSb Affected BYTE-ORIENTED FILE REGISTER OPERATIONS ADDWF f, d Add W and f dfff ffff C,DC,Z 1, 2 ANDWF f, d AND W with f dfff ffff Z 1, 2 CLRF f Clear f lfff ffff Z 2 CLRW - Clear W xxx xxxx Z COMF f, d Complement f dfff ffff Z 1, 2 DECF f, d Decrement f dfff ffff Z 1, 2 DECFSZ f, d Decrement f, Skip if 0 1(2) dfff ffff 1, 2, 3 INCF f, d Increment f dfff ffff Z 1, 2 INCFSZ f, d Increment f, Skip if 0 1(2) dfff ffff 1, 2, 3 IORWF f, d Inclusive OR W with f dfff ffff Z 1, 2 MOVF f, d Move f dfff ffff Z 1, 2 MOVWF f Move W to f lfff ffff NOP - No Operation xx RLF f, d Rotate Left f through Carry dfff ffff C 1, 2 RRF f, d Rotate Right f through Carry dfff ffff C 1, 2 SUBWF f, d Subtract W from f dfff ffff C,DC,Z 1, 2 SWAPF f, d Swap nibbles in f dfff ffff 1, 2 XORWF f, d Exclusive OR W with f dfff ffff Z 1, 2 BIT-ORIENTED FILE REGISTER OPERATIONS bb BCF f, b Bit Clear f bfff ffff 1, 2 BSF f, b Bit Set f bb bfff ffff 1, 2 BTFSC f, b Bit Test f, Skip if Clear 1(2) 01 10bb bfff ffff 3 BTFSS f, b Bit Test f, Skip if Set 1(2) 01 11bb bfff ffff 3 LITERAL AND CONTROL OPERATIONS 1 11 ADDLW k Add literal and W 111x kkkk kkkk C,DC,Z ANDLW k AND literal with W kkkk kkkk Z CALL k Call subroutine kkk kkkk kkkk CLRWDT Clear Watchdog Timer TO,PD - GOTO Go to address kkk kkkk kkkk k IORLW k Inclusive OR literal with W kkkk kkkk Z MOVLW k Move literal to W xx kkkk kkkk RETFIE Return from interrupt RETLW Return with literal in xx kkkk kkkk k W RETURN Return from Subroutine SLEEP Go into Standby mode TO,PD SUBLW k Subtract W from literal x kkkk kkkk C,DC,Z XORLW k Exclusive OR literal with W kkkk kkkk Z Notas: itself 1. When an I/O register is modified as a function of (e.g., MOVF PORTB, 1), the value used will be that value present on the pins themselves. For example, if the data latch is 1 for a pin configured as input and is driven low by an external device, the data will be written back with a 0. If this instruction is executed on the TMR0 register (and, where applicable, d = 1), the prescaler will be cleared if 2. assigned to the Timer0 Module. 3. If Program Counter (PC) is modified or a conditional test is true, the instruction requires two cycles. The second cycle is executed as a NOP.

96 Variáveis Declaração de váriaveis usando a diretiva CBLOCK e ENDC: ;define variaveis CBLOCK 0x20 CONT D1 D2 ENDC

97 Equações Resolução de equações em assembly: A=2; B=3; C=(2*A)-(B+4); MOVLW MOVWF MOVLW MOVWF D 2 A ;A=2 D 3 B ;B=3 RLF A,W MOVWF C ;C=2*A MOVLW D 4 ADDWF B,W ;W=B+4 SUBWF C,F ;C=C-W => C= (2*A)-(B+4)

98 Comparação A comparação de números é feita utilizando os bits C e Z do registrador STATUS após uma operação de subtração usando SUBWF ou SUBLW. O bit Z indica se o resultado da operação é zero (se o resultado for igual a zero Z=1 e Z=0 caso contrário) e o bit C indica se o resultado da subtração é maior que zero ( C =1 se o resultado for positivo ou zero e C=0 se o resultado for negativo). Código para comparar se a variável X == 10 : MOVLW D 10 SUBWF X BTFSS STATUS,Z GOTO diferente GOTO igual

99 Estruturas de Rpetição Estrutura de repetição: FOR: MOVLW 10 MOVWF D1 NOP ;código a ser repetido NOP NOP DECFSZ D1,F GOTO FOR

100 Atraso Função de atraso de aproximadamente 256*3 ciclos (768), usando um clock de 4Mhz cada ciclo demora 1µs e essa função gera um atraso de 768µs. DELAY: DECFSZ D1,F GOTO DELAY RETURN

101 Atraso Função de atraso aproximado em ms, valor passado em w: /* atraso aproximado em ms para clock 4Mhz*/ DELAYMS: MOVWF D1 CLRF D2 ;atraso 768us DECFSZ D2,F GOTO $-1 MOVLW 0xB3 ;atraso 232us MOVWF D2 DECFSZ D2,F GOTO $-1 DECFSZ D1,F ;laco repeticao GOTO $-8 RETURN

102 Apêndices Assembly PIC16Fxx Programação Programas

103 Arquivo Padrão Arquivo padrão assembly: ;programa... LIST P=16F628A INCLUDE <p16f628a.inc> ;escolhe microcontrolador ;inclui definicoes ;palavra de configuracao CONFIG _CP_OFF & _WDT_OFF & _PWRTE_OFF & _BODEN_OFF & _MCLRE_ON \ & _INTRC_OSC_NOCLKOUT & _LVP_OFF ;define variaveis ; CBLOCK 0x20 ; V1 ; V2 ; ENDC ORG 0x00 MOVLW 0X07 MOVWF CMCON BANKSEL TRISA MOVLW B MOVWF TRISA MOVLW B MOVWF TRISB BANKSEL PORTA ;inicio do programa ;DESLIGA COMPARADORES PORTA ;CONFIGURA TRISA ;CONFIGURA TRISB ;PROGRAMA PRINCIPAL AQUI! LOOP: GOTO LOOP END

104 Arquivo Padrão Arquivo padrão c: #include <pic16f628a.h> typedef unsigned int word; word at 0x2007 CONFIG = _WDT_OFF & _PWRTE_OFF & _INTOSC_OSC_NOCLKOUT & _MCLRE_ON & _BOREN_OFF & _LVP_OFF & _DATA_CP_OFF & _CP_OFF; void isr() interrupt 0 { /* interrupcao */ } void main() { CMCON=0x07; TRISA=0xFE; TRISB=0x00; while(1) { /*programa principal*/ } }

105 Apêndices Assembly PIC16Fxx Programação Programas

106 Instalação Windows: 1. MPLAB (IDE) 2. gputils (Assembler) 3. gputils-mplab (Integração gputils-mplab) 4. SDCC (compilador c) 5. SDCC-mplab (Integração SDCC-MPLAB) 6. msdcc (Criador de Projetos SDCC-MPLAB) 7. PicsimLab (Simulador) ou 1. Mikroc Pro (IDE, Assembler, Compilador c) 2. PicsimLab (Simulador) Linux: 1. Piklab (IDE) 2. gputils (Assembler) 3. SDCC (compilador c) 4. PicsimLab (Simulador)

107 Mikroc Pro - Criando programa em c

108 Mikroc Pro - Criando programa em c

109 Mikroc Pro - Criando programa em c

110 Mikroc Pro - Criando programa em c

111 Mikroc Pro - Criando programa em c

112 Mikroc Pro - Criando programa em c

113 Mikroc Pro - Criando programa em c

114 Mikroc Pro - Criando programa em c

115 Mikroc Pro - Criando programa em c

116 Mikroc Pro - Criando programa em c

117 Piklab - Criando programa em assembly

118 Piklab - Criando programa em assembly

119 Piklab - Criando programa em assembly

120 Piklab - Criando programa em assembly

121 Piklab - Criando programa em assembly

122 Piklab - Criando programa em assembly

123 Piklab - Criando programa em c (sdcc) É similar a criação de um projeto em assembly, basta escolher a opção toolchain igual a Small Device Compiler ao invés de GPUtils.

124 MPLAB - Criando programa assembly

125 MPLAB - Criando programa assembly

126 MPLAB - Criando programa assembly

127 MPLAB - Criando programa assembly

128 MPLAB - Criando programa assembly

129 MPLAB - Criando programa assembly

130 MPLAB - Criando programa assembly

131 MPLAB - Criando programa assembly

132 MPLAB - Criando programa assembly

133 MPLAB - Criando programa assembly

134 MPLAB - Criando programa assembly

135 MPLAB - Criando programa assembly

136 MPLAB - Criando programa assembly

137 MPLAB - Criando programa em c (sdcc) Crie um projeto com o MSdcc, abra ele com o MPLAB no menu Project, opção Open.

138 MPLAB - Criando programa em c (sdcc) Dentro do MPLAB entre no menu Configure na opção Select Device e verifique se o dispositivo selecionado é o microcontrolador a ser usado e aperte Ok.

139 MPLAB - Problemas Can t find the language tool "sdcc"at location. Project Set Language Tool Locations Small Device C Complier (SDCC) Executables gpasm=c: Arquivos de programas gputils bin gpasm.exe sdcc=c: Arquivos de programas SDCC bin sdcc.exe Linhas sem números Edit Properties... (Aba) C File Types (Check) Line Numbers

PIC16F628a. Pinagem do PIC16F628a:

PIC16F628a. Pinagem do PIC16F628a: PIC16F628a O PIC16F628a é um microcontrolador fabricado pela Microchip Technology (www.microchip.com), com as seguintes características: - composto de 18 pinos; - possui somente 35 instruções no seu microcódigo;

Leia mais

DOUGLAS DAL POZZO DIEGO VITTI

DOUGLAS DAL POZZO DIEGO VITTI DOUGLAS DAL POO DIEGO VITTI O que são MicroControladores Microcontralor é um componente cujo núcleo possui os mesmos blocos funcionais de um microprocessador. No entanto, sua aplicação é um pouco mais

Leia mais

Hardware Parte I. Fábio Rodrigues de la Rocha

Hardware Parte I. Fábio Rodrigues de la Rocha Hardware Parte I Fábio Rodrigues de la Rocha PIC16F877 40 pinos Freqüência máxima 20MHz. Vias de programação 14 bits 33 portas configuráveis como entradas/saídas 15 interrupções diferentes Memória EEPROM

Leia mais

SEMINÁRIO ASSEMBLY: Arquitetura PIC

SEMINÁRIO ASSEMBLY: Arquitetura PIC UNIVERSIDADE FEDERAL DE SANTA CATARINA CENTRO TECNOLÓGICO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA Curso de Ciências da Computação SEMINÁRIO ASSEMBLY: Arquitetura PIC DOUGLAS DAL POZZO DIEGO VITTI Florianópolis

Leia mais

PIC. PeripheralInterface Controller. Prof. EngºespLuiz Antonio Vargas Pinto www.vargasp.com. Prof. Vargas

PIC. PeripheralInterface Controller. Prof. EngºespLuiz Antonio Vargas Pinto www.vargasp.com. Prof. Vargas PIC PeripheralInterface Controller Prof. EngºespLuiz Antonio Vargas Pinto www.vargasp.com Histórico Em 1965 a General Instruments criou a divisão de microeletrônica Nos anos 80 foi dividida e vendida a

Leia mais

V1 5V +V. (14)Vdd (6)RB0 PIC 16F628A. (16) Clk-out. C1 33pF. C2 33pF. Figura 1 Circuito pisca-pisca.

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

Leia mais

Servo-Motor. por. Nuno Monteiro & Gabriel Dinis Eng. Electrotécnica, UTAD Junho de 2001. nuno_monteiro@portugalmail.com gabrieldinis@portugalmail.

Servo-Motor. por. Nuno Monteiro & Gabriel Dinis Eng. Electrotécnica, UTAD Junho de 2001. nuno_monteiro@portugalmail.com gabrieldinis@portugalmail. Servo-Motor por nuno_monteiro@portugalmail.com gabrieldinis@portugalmail.pt Um servo-motor é um pequeno dispositivo cujo veio pode ser posicionado numa determinada posição angular de acordo com um sinal

Leia mais

MICROCONTROLADORES PIC PRIMEIROS PASSOS

MICROCONTROLADORES PIC PRIMEIROS PASSOS MICROCONTROLADORES PIC PRIMEIROS PASSOS Os microcontroladores são chips inteligentes, que tem um processador, pinos de entradas/saídas e memória. Através da programação dos microcontroladores podemos controlar

Leia mais

Programação Daniel Corteletti Aula 3 Parte III Página 1/7

Programação Daniel Corteletti Aula 3 Parte III Página 1/7 Programação Daniel Corteletti Aula 3 Parte III Página /7 LINGUAGEM DE PROGRAMAÇÃO - ASSEMLY - PARTE I Assembly - o que é "Assembly" significa montagem. "Assembler" significa montador. Montagem é o ato

Leia mais

Curso PIC 1 Desbravando o PIC. Eng. Diego Camilo Fernandes Labtools Mosaico Didactic Division

Curso PIC 1 Desbravando o PIC. Eng. Diego Camilo Fernandes Labtools Mosaico Didactic Division Curso PIC 1 Desbravando o PIC Eng. Diego Camilo Fernandes Labtools Mosaico Didactic Division O que fazemos... Desenvolvimento de projetos (hardware e software); Consultoria em engenharia eletrônica e

Leia mais

Eder Terceiro. Programação C com o PIC16F628a. Eder Terceiro. 31 de Outubro de 2016

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

Leia mais

Arquitetura de Computadores. Prof. João Bosco Jr.

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

Leia mais

PIC18F4550. Curso Engenharia de Controle e Automação. Alex Vidigal Bastos www.decom.ufop.br/alex/ alexvbh@gmail.com

PIC18F4550. Curso Engenharia de Controle e Automação. Alex Vidigal Bastos www.decom.ufop.br/alex/ alexvbh@gmail.com PIC18F4550 Curso Engenharia de Controle e Automação Alex Vidigal Bastos www.decom.ufop.br/alex/ alexvbh@gmail.com 1 Agenda Características do PIC18F4550 Pinagem do PIC18F4550 Pinagem do PIC18F4550 Datasheet

Leia mais

ARQUITETURA DE PROCESSAMENTO

ARQUITETURA DE PROCESSAMENTO ARQUITETURA DE PROCESSAMENTO Os subsistemas digitais codificadores, decodificadores, multiplexadores, demultiplexadores, registradores e contadores, possibilitam a criação de um sistema digital mais complexo

Leia mais

Conhecendo o PIC16F877 Microcontrolador de 8 bits da Microchip Co.

Conhecendo o PIC16F877 Microcontrolador de 8 bits da Microchip Co. Programação Daniel Corteletti Aula 2 Página 1/6 Conhecendo o PIC16F877 Microcontrolador de 8 bits da Microchip Co. O microcontrolador PIC16F877 pode ser encontrado em diversos encapsulamentos: PDIP, QFP,

Leia mais

7. Técnicas de Programação

7. Técnicas de Programação 7. Professor: Vlademir de Oliveira Disciplina: Microcontroladores e DSP 7.1 Fluxograma Definições Início/Fim Sub-rotinas Tomada de decisão Terminação 7.1 Fluxograma Exercícios Ex.1: Testa um botão e acende

Leia mais

Introdução aos Microcontroladores PIC

Introdução aos Microcontroladores PIC Introdução aos Microcontroladores PIC 1ª parte João M. P. Cardoso Universidade do Algarve Microcontroladores PIC Empresa: Microchip Technology Inc. Várias famílias PIC12XX, PIC16XX, PIC17XX, PIC18XX Linha

Leia mais

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ ESCOLA POLITÉCNICA ENGENHARIA DE COMPUTAÇÃO MICROPROCESSADORES PROJETO PARDAL DOCUMENTAÇÃO

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ ESCOLA POLITÉCNICA ENGENHARIA DE COMPUTAÇÃO MICROPROCESSADORES PROJETO PARDAL DOCUMENTAÇÃO PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ ESCOLA POLITÉCNICA ENGENHARIA DE COMPUTAÇÃO MICROPROCESSADORES PROJETO PARDAL DOCUMENTAÇÃO CURITIBA, 2012 PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ ESCOLA POLITÉCNICA

Leia mais

Registros do 16F628A. Prof. Luiz Antonio Vargas Pinto Prof. Vargas

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

Leia mais

Programação em BASIC para o PIC Mostrando Mensagens no Display LCD Vitor Amadeu Souza

Programação em BASIC para o PIC Mostrando Mensagens no Display LCD Vitor Amadeu Souza Programação em BASIC para o PIC Mostrando Mensagens no Display LCD Vitor Amadeu Souza Introdução Nesta terceira série de artigos que aborda a programação na linguagem BASIC para o microcontrolador PIC,

Leia mais

Curso básico de linguagem C para microcontroladores PIC. Índice

Curso básico de linguagem C para microcontroladores PIC. Índice Índice Linguagem C... 3 Programação de Microcontroladores em linguagem C... 3 Princípio de programação - Álgebra Booleana... 5 - Operações... 5 - Representação Gráfica das Portas Lógicas... 5 Introdução

Leia mais

Interrupções e timers

Interrupções e timers Prática 3: 3.1 Introdução e objetivos Interrupções e timers Na prática anterior foi visto que a função main fica continuamente monitorando o teclado avaliando se alguma tecla foi pressionada através da

Leia mais

Sistemas Microcontrolados

Sistemas Microcontrolados Sistemas Microcontrolados Aula 5: Interrupções e Temporizadores Marco Jose da Silva mdasilva@utfpr.edu.br Interrupções Interrupção é um evento externo ao programa que provoca: A parada da sua execução;

Leia mais

Programação C para microcontroladores PIC

Programação C para microcontroladores PIC Programação C para microcontroladores PIC eletrocursos.gnomio.com 1/6 Sumário Histórico do Documento... 3 Treinadores Responsáveis... 3 Carga Horária... 3 Ementa... 3 Objetivos... 3 Conteúdo Programático...

Leia mais

Interrupção Externa. Capítulo 1. Noções básicas sobre interrupções em Microcontroladores PIC

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

Leia mais

www.vwsolucoes.com Copyright 2013 VW Soluções

www.vwsolucoes.com Copyright 2013 VW Soluções Apresentação O ClpPic40-v4 foi desenvolvido com base no microcontrolador PIC16F877A, mas pode ser utilizado qualquer outro PIC de 40 pinos da família 16F ou 18F (observar a pinagem). Ele possui várias

Leia mais

UNIVERSIDADE FEDERAL DE SÃO JOÃO DEL-REI - UFSJ DEPARTAMENTO DE ENGENHARIA ELÉTRICA - DEPEL INTRODUÇÃO AOS MICROCONTROLADORES PIC

UNIVERSIDADE FEDERAL DE SÃO JOÃO DEL-REI - UFSJ DEPARTAMENTO DE ENGENHARIA ELÉTRICA - DEPEL INTRODUÇÃO AOS MICROCONTROLADORES PIC UNIVERSIDADE FEDERAL DE SÃO JOÃO DEL-REI - UFSJ DEPARTAMENTO DE ENGENHARIA ELÉTRICA - DEPEL INTRODUÇÃO AOS MICROCONTROLADORES PIC THIAGO VELOSO GOMES JOÃO MATHEUS DE OLIVEIRA ARANTES São João del-rei Março

Leia mais

1.1 Noções básicas sobre interrupções em Microcontroladores

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á

Leia mais

Microcontroladores PIC. Microcontroladores PIC

Microcontroladores PIC. Microcontroladores PIC Microcontroladores PIC Prof. Valdir Dugo Zaragoza 28/07/2015 1 MICROCONTROLADORES PIC Os microcontroladores PIC são componentes integrados programáveis fabricados pela empresa americana Microchip. Possuem

Leia mais

Um resumo do Microcontrolador PIC18xx

Um resumo do Microcontrolador PIC18xx Um resumo do Microcontrolador PIC18xx Autor: Pedro Inácio Revisão: Rui Antunes Dezembro/2007 1. Introdução 1.1 PIC-Programmable Interrupt Controller O PIC é um microcontrolador fabricado exclusivamente

Leia mais

Sistemas Digitais e Microcontrolados

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

Leia mais

WWW.cerne-tec.com.br. Comunicação USB com o PIC Vitor Amadeu Souza Parte II vitor@cerne-tec.com.br

WWW.cerne-tec.com.br. Comunicação USB com o PIC Vitor Amadeu Souza Parte II vitor@cerne-tec.com.br 1 Comunicação USB com o PIC Vitor Amadeu Souza Parte II vitor@cerne-tec.com.br Continuando com o artigo apresentado na edição passada de comunicação USB com o PIC, continuaremos nesta edição o estudo do

Leia mais

Suporta os microcontroladores: R. Leonardo da Vinci, 883 - Campinas/SP CEP 13.077-009 F.: (19) 4141.3351 / 3304.1605

Suporta os microcontroladores: R. Leonardo da Vinci, 883 - Campinas/SP CEP 13.077-009 F.: (19) 4141.3351 / 3304.1605 Suporta os microcontroladores: PIC16F877A, PIC18F452, PIC18F4520, PIC18F4550, PIC 18F876A, PIC18F252, PIC18F2550 e outros com 28 e 40 pinos O Kit de desenvolvimento ACEPIC PRO V2.0 foi projetado tendo

Leia mais

Sistemas Microcontrolados

Sistemas Microcontrolados Sistemas Microcontrolados Aula 4: Programação em C para PIC Marco Jose da Silva mdasilva@utfpr.edu.br Compiladores C para PICs C18 HI-TECH CCS IAR MikroC http://www.microchip.com/ http://www.htsoft.com/

Leia mais

Microprocessadores. Cap. 4 Assembly

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

Leia mais

BANKSEL ADCON1 clrf ADCON1 bsf ADCON1,ADFM ; seta AD para VCC, GND e entradas analogicas, setando o bit ADFM configura como justificado a direita

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

Leia mais

Microcontroladores e FPGAs

Microcontroladores e FPGAs Microcontroladores e FPGAs Aplicações em Automação Edward David Moreno Ordonez Cesar Giacomini Penteado Alexandre César Rodrigues da Silva Novatec Editora Capítulo 1 Microcontrolador PIC16F628, da Microchip

Leia mais

www.vwsolucoes.com Copyright 2011 VW Soluções

www.vwsolucoes.com Copyright 2011 VW Soluções Apresentação O ClpPic40-v3 foi desenvolvido com base no microcontrolador PIC16F877A, mas pode ser utilizado qualquer outro PIC de 40 pinos da família 16F ou 18F (observar a pinagem). Ele possui várias

Leia mais

Introdução ao PIC. Guilherme Luiz Moritz 1. 6 de novembro de DAELT - Universidade Tecnológica Federal do Paraná

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

Leia mais

Curso de Programação PIC Prof. Msc. Engº Getúlio Teruo Tateoki

Curso de Programação PIC Prof. Msc. Engº Getúlio Teruo Tateoki Curso de Programação PIC Prof. Msc. Engº Getúlio Teruo Tateoki Este Curso de Programação foi projetado para introduzir ao aluno na programação dos microcontroladores PIC16F84. Para se entender como programar

Leia mais

Sistemas Embarcados. Introdução aos sistemas embarcados

Sistemas Embarcados. Introdução aos sistemas embarcados Sistemas Embarcados Introdução aos sistemas embarcados Introdução aos Sistemas embarcados Definição de um sistema embarcado Exemplos de sistemas embarcados Processadores utilizados em sistemas embarcados

Leia mais

M-1117A PIC MICROCONTROLER. Microcontrolador PIC. EXPERIMENTS MANUAL Manual de Experimentos Manual de Experimentos

M-1117A PIC MICROCONTROLER. Microcontrolador PIC. EXPERIMENTS MANUAL Manual de Experimentos Manual de Experimentos PIC MICROCONTROLER Microcontrolador PIC M-1117A *Only illustrative image./imagen meramente ilustrativa./ Imagem meramente ilustrativa. EXPERIMENTS MANUAL Manual de Experimentos Manual de Experimentos Conteúdo

Leia mais

CAPÍTULO 5. INTERFACES PARA PERIFÉRICOS DE ARMAZENAMENTO INTERFACES DIVERSAS: FIREWIRE, SPI e I 2 C INTERFACES COM O MUNDO ANALÓGICO

CAPÍTULO 5. INTERFACES PARA PERIFÉRICOS DE ARMAZENAMENTO INTERFACES DIVERSAS: FIREWIRE, SPI e I 2 C INTERFACES COM O MUNDO ANALÓGICO 28 CAPÍTULO 5 INTERFACES PARA PERIFÉRICOS DE ARMAZENAMENTO INTERFACES DIVERSAS: FIREWIRE, SPI e I 2 C INTERFACES COM O MUNDO ANALÓGICO Interfaces para periféricos de armazenamento: Periféricos de armazenamento,

Leia mais

MICROCONTROLADORES. PIC16F87x

MICROCONTROLADORES. PIC16F87x Universidade Católica de Goiás Departamento de Engenharia Curso de Engenharia Elétrica MICROCONTROLADORES PIC16F87x Prof. Eider Lúcio de Oliveira Prof. Éderson Lacerda Fideles Microcontrolador PIC16F87x

Leia mais

Programação Básica em Arduino Aula 2

Programação Básica em Arduino Aula 2 Programação Básica em Arduino Aula 2 Execução: Laboratório de Automação e Robótica Móvel Variáveis são lugares (posições) na memória principal que servem para armazenar dados. As variáveis são acessadas

Leia mais

Sistemas Digitais e Microcontrolados

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

Leia mais

VIII. VARIÁVEIS. Tabela I ARQUITETURA DA MEMÓRIA. 0x0000 0x34 0x0001 0xB0 0x0002 0x23. 0xFFFF 0x00

VIII. VARIÁVEIS. Tabela I ARQUITETURA DA MEMÓRIA. 0x0000 0x34 0x0001 0xB0 0x0002 0x23. 0xFFFF 0x00 Fundamentos da Programação 32 A. Conceito Variáveis contém dados: VIII. VARIÁVEIS de entrada que o computador precisa manipular; de saída que o computador precisa imprimir; e temporários, utilizados de

Leia mais

Faculdade de Engenharia de Ilha Solteira- Departamento de Engenharia Elétrica

Faculdade de Engenharia de Ilha Solteira- Departamento de Engenharia Elétrica Faculdade de Engenharia de Ilha Solteira- Departamento de Engenharia Elétrica TEEE I- Projeto de Robôs Móveis - Profs. Nobuo Oki e Suely Cunha Amaro Mantovani 1 o.sem / 2013 TEEE I Projeto de Robôs Móveis

Leia mais

TEM VÁRIOS ESTADOS: 0V,0.1V,3V,3.3V,4V,5V,10V, ETC.

TEM VÁRIOS ESTADOS: 0V,0.1V,3V,3.3V,4V,5V,10V, ETC. CONVERSOR ANALÓGICO / DIGITAL SINAL DIGITAL ASSUME APENAS 2 ESTADOS: 0V E 5V SINAL ANALÓGICO TEM VÁRIOS ESTADOS: 0V,0.1V,3V,3.3V,4V,5V,10V, ETC. 1 FONTE DESTES SINAIS ANALÓGICOS UM DOS NOSSOS OBJETIVOS

Leia mais

Instituto Federal de Educação, Ciência e Tecnologia da Paraíba. Microcontrolador PIC 16F877

Instituto Federal de Educação, Ciência e Tecnologia da Paraíba. Microcontrolador PIC 16F877 Instituto Federal de Educação, Ciência e Tecnologia da Paraíba MINICURSO Microcontrolador PIC 16F877 Alison Lins de Lima Fábio Montenegro Pontes Jonathan B. da Silva Rafael Tavares Coutinho Thiago Pinto

Leia mais

Sistemas Microcontrolados. Período Aula 4. 1 Saulo O. D. Luiz

Sistemas Microcontrolados. Período Aula 4. 1 Saulo O. D. Luiz Sistemas Microcontrolados Período 2009.2 Aula 4 1 Saulo O. D. Luiz Roteiro Introdução ao microcontrolador PIC 16F877 Arquitetura do PIC 16F877 Conjunto de instruções Registradores de configuração 2 Saulo

Leia mais

Comunicação Serial com o AVR ATMEGA8

Comunicação Serial com o AVR ATMEGA8 Comunicação Serial com o AVR ATMEGA8 Vitor Amadeu Souza vitor@cerne-tec.com.br Introdução Os microcontroladores AVR vem a cada dia tomando cada vez mais espaço nos novos projetos eletrônicos microcontrolados.

Leia mais

Curso de Linguagem C. Rinaldo Câmara Gonçalves Labtools Mosaico Didactic Division Revisão 2

Curso de Linguagem C. Rinaldo Câmara Gonçalves Labtools Mosaico Didactic Division Revisão 2 Curso de Linguagem C Rinaldo Câmara Gonçalves Labtools Mosaico Didactic Division Revisão 2 Sumário SUMÁRIO...3 RECURSOS BÁSICOS: EXEMPLO 1 BOTÃO E LED...5 RECURSOS DO LIVRO...5 LÓGICA DO EXEMPLO...5 ESQUEMA

Leia mais

Guia do Usuário Placa de Desenvolvimento McLab1

Guia do Usuário Placa de Desenvolvimento McLab1 Placa de Desenvolvimento McLab1 Sumário 1. APRESENTAÇÃO...3 2. HARDWARE...4 2.1. MICROCONTROLADOR PIC16F628A...4 2.2. DISPLAYS DE 7 SEGMENTOS...5 2.3. TECLAS...5 2.4. LEDS...6 2.5. LÂMPADA...6 2.6. BOTÃO

Leia mais

Placa McLab1 Upgrade PIC16F84A p/ PIC16F62x

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

Leia mais

MPLAB IDE Instruções básicas de utilização Carlos Roberto da Silveira Jr

MPLAB IDE Instruções básicas de utilização Carlos Roberto da Silveira Jr MPLAB IDE Instruções básicas de utilização Carlos Roberto da Silveira Jr 1 Instalação O MPLAB IDE é o software produzido pela fabricante de microcontroladores Microchip para, podendo ser adquirido gratuitamente

Leia mais

DEPARTAMENTO DE ELECTROTECNIA. João Paulo Baptista. Curso de Engenharia Electrotécnica Electrónica e Computadores

DEPARTAMENTO DE ELECTROTECNIA. João Paulo Baptista. Curso de Engenharia Electrotécnica Electrónica e Computadores DEPARTAMENTO DE ELECTROTECNIA MICROCONTROLADORES João Paulo Baptista Curso de Engenharia Electrotécnica Electrónica e Computadores Sistemas Digitais / 2001 1 MICROCONTROLADORES 1 Arquitectura Base de

Leia mais

Programação em BASIC para o PIC Projetos com Display Gráfico Vitor Amadeu Souza

Programação em BASIC para o PIC Projetos com Display Gráfico Vitor Amadeu Souza Programação em BASIC para o PIC Projetos com Display Gráfico Vitor Amadeu Souza Introdução No artigo desta edição, veremos os passos para controlar um dispaly gráfico de 128 x 64 pixels. A idéia será apresentar

Leia mais

Na primeira aula, conhecemos um pouco sobre o projeto Arduino, sua família de placas, os Shields e diversos exemplos de aplicações.

Na primeira aula, conhecemos um pouco sobre o projeto Arduino, sua família de placas, os Shields e diversos exemplos de aplicações. Na primeira aula, conhecemos um pouco sobre o projeto Arduino, sua família de placas, os Shields e diversos exemplos de aplicações. A partir de agora, iremos conhecer o hardware do Arduino e suas caracteristicas

Leia mais

Sistemas Microcontrolados

Sistemas Microcontrolados Sistemas Microcontrolados Uma Abordagem com o Microcontrolador PIC 16F84 Nardênio Almeida Martins Novatec Editora Capítulo 1 Introdução Os microcontroladores estão presentes em quase tudo o que envolve

Leia mais

SISTEMAS DIGITAIS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com

SISTEMAS DIGITAIS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com - Aula 8 - Antes de começar o estudo sobre decodificadores, o que é bastante semelhante ao que já vimos anteriormente é necessário relembrarmos alguns conceitos sobre códigos binários. 1. Códigos Binários

Leia mais

CONTROLE DIGITAL DE VOLUME 1.-----------------------------------------------------------------------------

CONTROLE DIGITAL DE VOLUME 1.----------------------------------------------------------------------------- CONTROLE DIGITAL DE VOLUME 1.----------------------------------------------------------------------------- Uma boa gama de aplicações atuais utiliza o controle de volume digital. Não nos referimos apenas

Leia mais

Índice. Dia 05 de fevereiro de Apresentação Dia 12 de fevereiro de

Índice. Dia 05 de fevereiro de Apresentação Dia 12 de fevereiro de Índice Dia 05 de fevereiro de 2014....2 Apresentação... 2 Dia 12 de fevereiro de 2013....3 -Processador... 3 -Von Neumann... 3 -Harvard... 4 -Von Neumann x Harvard... 4 -Equipamentos que utilizam a arquitetura

Leia mais

Manual do usuário. Kit Clp Pic. - Kit Clp Pic 28 v4.0. Manual do usuário. Copyright VW Soluções

Manual do usuário. Kit Clp Pic. - Kit Clp Pic 28 v4.0. Manual do usuário.  Copyright VW Soluções Manual do usuário - Kit Clp Pic 28 v4.0 Kit Clp Pic 28 v4.0 Manual do usuário 1 Apresentação O ClpPic28-v4 foi desenvolvido com base no microcontrolador PIC16F886, mas pode ser utilizado qualquer outro

Leia mais

PROGRAMAÇÃO DO TREINAMENTO:

PROGRAMAÇÃO DO TREINAMENTO: PROGRAMAÇÃO DO TREINAMENTO: Página 2 0. Objetivos deste treinamento Quem está fazendo este módulo avançado II é porque já passou pelos módulos anteriores. Portanto não serão abordados aqui os tópicos já

Leia mais

OMicrocontrolador PIC16F877A implementa um conversor

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

Leia mais

www.cerne-tec.com.br

www.cerne-tec.com.br 1 Cerne Tecnologia e Treinamento Apostila de Programação para a Família HC908 Com base no microcontrolador MC68HC908QY4 (21) 4063-9798 (11) 4063-1877 E-mail: cerne@cerne-tec.com.br MSN: cerne-tec@hotmail.com

Leia mais

Plataforma de desenvolvimento dspic - SIGMA128 -

Plataforma de desenvolvimento dspic - SIGMA128 - T e c n o l o g i a Plataforma de desenvolvimento dspic - SIGMA128 - Os melhores e mais modernos MÓDULOS DIDÁTICOS para um ensino tecnológico de qualidade. DESENVOLVIMENTO INTRODUÇÃO Plataforma de desenvolvimento

Leia mais

Introdução à Informática

Introdução à Informática Introdução à Informática Sistemas Numéricos e Armazenamento de dados Escola Superior de Tecnologia e Gestão Instituto Politécnico de Bragança Outubro de 2006 Sistema de base dez O sistema de numeração

Leia mais

Sistemas Microprocessados baseados no PIC16F877A

Sistemas Microprocessados baseados no PIC16F877A Sistemas Microprocessados baseados no PIC16F877A 20 de outubro de 2014 Sumário 1 Introdução 1 2 Revisão de Linguagem C 3 3 Ambiente de Desenvolvimento MPLAB X 5 3.1 Instalação....................................

Leia mais

Kit de desenvolvimento ACEPIC 40N

Kit de desenvolvimento ACEPIC 40N Kit de desenvolvimento ACEPIC 40N O Kit de desenvolvimento ACEPIC 40N foi desenvolvido tendo em vista a integração de vários periféricos numa só placa, além de permitir a inserção de módulos externos para

Leia mais

Interrupções e Timers

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

Leia mais

CODIFICADORES / DECODIFICADORES

CODIFICADORES / DECODIFICADORES CODIFICADORES / DECODIFICADORES Uma grande parte dos sistemas digitais trabalha com os níveis lógicos (bits) representando informações que são codificadas em bits. Exemplo: computador trabalha com informações

Leia mais

www.vwsolucoes.com Copyright 2011 VW Soluções

www.vwsolucoes.com Copyright 2011 VW Soluções 1 Apresentação O adaptador ADP.v01 é utilizado para facilitar a instalação de display Lcd 16x2 ou display Lcd 20x4 nos CLP PIC28 ou CLP PIC40 através de um flat cable de 10vias de acordo com a necessidade

Leia mais

AAAA AAAA SEL Aplicação de Microprocessadores I. Aula 5 Temporização e Interrupção. Marcelo Andrade da Costa Vieira

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

Leia mais

Marcelo Fernandes Valter Rodrigues de Jesus Junior. Thermal Control

Marcelo Fernandes Valter Rodrigues de Jesus Junior. Thermal Control Marcelo Fernandes Valter Rodrigues de Jesus Junior Thermal Control Curitiba 2011 Índice Analítico 1. Resumo 4 2. Introdução 4 3. Objetivo 4 4. Fundamentos Teóricos 5 4.1 A família PIC 16f877/877A 6 5.

Leia mais

Cerne Tecnologia e Treinamento

Cerne Tecnologia e Treinamento Tecnologia e Treinamento Tutorial para Testes na Placa AVR MASTER (21)4063-9798 (11)4063-1877 Skype: cerne-tec MSN: cerne-tec@hotmail.com www.cerne-tec.com.br Kits Didáticos e Gravadores da Cerne Tecnologia

Leia mais

Programmable Interval Timer

Programmable Interval Timer Programmable Interval Timer 8253/8254 Walter Fetter Lages w.fetter@ieee.org Universidade Federal do Rio Grande do Sul Escola de Engenharia Departamento de Engenharia Elétrica Microprocessadores II Copyright

Leia mais

Índice. Dia 05 de fevereiro de 2014...2. Apresentação... 2. Dia 12 de fevereiro de 2013...3

Índice. Dia 05 de fevereiro de 2014...2. Apresentação... 2. Dia 12 de fevereiro de 2013...3 Índice Dia 05 de fevereiro de 2014....2 Apresentação... 2 Dia 12 de fevereiro de 2013....3 -Processador... 3 -Von Neumann... 3 -Harvard... 4 -Von Neumann x Harvard... 4 -Equipamentos que utilizam a arquitetura

Leia mais

16F628A - The Configuration Word Jon Wilder 25 de agosto de 2011.

16F628A - The Configuration Word Jon Wilder 25 de agosto de 2011. 1 16F628A - The Configuration Word Jon Wilder 25 de agosto de 2011. Tradução e edição Prof. esp eng Luiz Antonio Vargas Pinto 22 de Fevereiro de 2015 A palavra de configuração (word config) está entre

Leia mais

Prática 8: Comunicação SPI. 8.1 Introdução e objetivos. 8.2 Princípios básicos do protocolo SPI

Prática 8: Comunicação SPI. 8.1 Introdução e objetivos. 8.2 Princípios básicos do protocolo SPI Prática 8: 8.1 Introdução e objetivos Comunicação SPI O protocolo SPI (serial peripheral interface) é um método de comunicação utilizado para interconectar dispositivos ou chips de tal forma que estes

Leia mais

Circuito integrado 555 e suas aplicações

Circuito integrado 555 e suas aplicações Circuito integrado 555 e suas aplicações Introdução Um circuito integrado popular é o versátil 555. Introduzido pela em 1973 pela Signetcs, este circuito integrado tem aplicações que variam de equipamentos

Leia mais

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ PUC-PR CCET CENTRO DE CIÊNCIAS EXATAS E DE TECNOLOGIA ENGENHARIA DE COMPUTAÇÃO. Luiz Renato Hey Schmidt

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ PUC-PR CCET CENTRO DE CIÊNCIAS EXATAS E DE TECNOLOGIA ENGENHARIA DE COMPUTAÇÃO. Luiz Renato Hey Schmidt PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ PUC-PR CCET CENTRO DE CIÊNCIAS EXATAS E DE TECNOLOGIA ENGENHARIA DE COMPUTAÇÃO Luiz Renato Hey Schmidt Rafael da Silva Neves Serrano PROJETO INTEGRADO CCAA CALHA

Leia mais

Copyright 2014 VW Soluções

Copyright 2014 VW Soluções 1 Apresentação O ClpPic28-v4 foi desenvolvido com base no microcontrolador PIC16F886, mas pode ser utilizado qualquer outro PIC de 28 pinos da família 16F ou 18F (observar a pinagem). Ele possui várias

Leia mais

QSPIC40 Manual do usuário Ver 1.0

QSPIC40 Manual do usuário Ver 1.0 QSPIC40 Manual do usuário Ver 1.0 Introdução: É um excelente kit de microcontrolador da família PIC18F e PIC16F da Microchip. O kit QSPIC40 é um kit de desenvolvimento e aprendizagem utilizando microcontroladores

Leia mais

Microcontroladores. Édilus de Carvalho Castro Penido Ronaldo Silva Trindade

Microcontroladores. Édilus de Carvalho Castro Penido Ronaldo Silva Trindade Microcontroladores Édilus de Carvalho Castro Penido Ronaldo Silva Trindade Ouro Preto - MG 2013 Presidência da República Federativa do Brasil Ministério da Educação Secretaria de Educação Profissional

Leia mais

MICROCONTROLADORES O QUE É O PIC?

MICROCONTROLADORES O QUE É O PIC? MICROCONTROLADORES Os microcontroladores são chips inteligentes, que tem um processador, pinos de entradas/saídas e memória. Através da programação dos microcontroladores podemos controlar suas saídas,

Leia mais

Curso de Microcontroladores PIC 16F84A

Curso de Microcontroladores PIC 16F84A Curso de Microcontroladores PIC 16F84A João Neto Caetano Jnetcaetano@hotmail.com Marciel Gonçalves Azevedo Marcielgazevedo@hotmail.com Célio Rodrigues Pinto Treinamentos em geral, suporte a alunos universitários

Leia mais

Aula 04. Código BCD, Códigos Alfa-numéricos e Sistemas de Detecção de Erros

Aula 04. Código BCD, Códigos Alfa-numéricos e Sistemas de Detecção de Erros Aula 04 Código BCD, Códigos Alfa-numéricos e Sistemas de Detecção de Erros Prof. Otávio Gomes otavio.gomes@ifmg.edu.br sites.google.com/a/ifmg.edu.br/otavio-gomes/ 1 Bytes A maioria dos microcomputadores

Leia mais

Sistemas Digitais e Microcontrolados

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

Leia mais

SISTEMA DE TREINAMENTO EM CONTROLADOR LÓGICO PROGRAMÁVEL

SISTEMA DE TREINAMENTO EM CONTROLADOR LÓGICO PROGRAMÁVEL SISTEMA DE TREINAMENTO EM CONTROLADOR LÓGICO PROGRAMÁVEL MODELO: CARACTERÍSTICAS 32 Pontos de Entrada / 32 Pontos de Saída. 3 Módulos Básicos: Controlador de Entrada, Simulador de Saída, Contador & Simulador

Leia mais

OMódulo Comparador Analógico consiste em um conjunto

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

Leia mais

C:\seminario\guiao_aluno\trab6\trab6.asm

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

Leia mais

Érica Ltda. Microcontroladores PIC18 com Linguagem C. Wagner da Silva Zanco. Uma Abordagem Prática e Objetiva. Com Base no PIC18F4520.

Érica Ltda. Microcontroladores PIC18 com Linguagem C. Wagner da Silva Zanco. Uma Abordagem Prática e Objetiva. Com Base no PIC18F4520. Wagner da Silva Zanco Microcontroladores PIC18 com Linguagem C Uma Abordagem Prática e Objetiva Com Base no PIC18F4520 1a Edição São Paulo 2010 Editora Érica Ltda. 131 Memórias Sumário Parte 1 Microcontrolador

Leia mais

PROGRAMA DE GERENCIAMENTO DOS AMPLIFICADORES MR 4.50D-XT MR 6.50D-XT MR 6.80-XT Rev. 2.3 de 29/01/2014

PROGRAMA DE GERENCIAMENTO DOS AMPLIFICADORES MR 4.50D-XT MR 6.50D-XT MR 6.80-XT Rev. 2.3 de 29/01/2014 PROGRAMA DE GERENCIAMENTO DOS AMPLIFICADORES MR 4.50D-XT MR 6.50D-XT MR 6.80-XT Rev. 2.3 de 29/01/2014 Introdução: Este programa permite o gerenciamento dos amplificadores MR 4.50D-XT MR 6.50D-XT MR 6.80-XT

Leia mais

Manual do Usuário. McMaster Desenvolvimento de Sistemas com Microcontroladores PIC

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

Leia mais

CURSO DE MICROCONTROLADORES Prof. Fábio Renato Elias Boaventura

CURSO DE MICROCONTROLADORES Prof. Fábio Renato Elias Boaventura 1 O curso todo é baseado no PIC 16F84, devido as suas facilidades de desenvolvimento, por não necessitar de apagadores de EPROM, mas outros modelos (16C711 com conversores A/D e 12C508 com apenas 8 pinos)

Leia mais

Instituto Tecnológico de Aeronáutica - ITA Divisão de Engenharia Eletrônica Departamento de Eletrônica Aplicada Laboratório de EEA-21

Instituto Tecnológico de Aeronáutica - ITA Divisão de Engenharia Eletrônica Departamento de Eletrônica Aplicada Laboratório de EEA-21 Instituto Tecnológico de Aeronáutica - ITA Divisão de Engenharia Eletrônica Departamento de Eletrônica Aplicada Laboratório de EEA-21 7ª Experiência Síntese de Circuitos Sequenciais Síncronos 1. Objetivos

Leia mais

CONSTRUÇÃO DE UMA UCP HIPOTÉTICA M++ INTRODUÇÃO

CONSTRUÇÃO DE UMA UCP HIPOTÉTICA M++ INTRODUÇÃO CONSTRUÇÃO DE UMA UCP HIPOTÉTICA M++ INTRODUÇÃO O seguinte artigo apresenta uma UCP hipotética construída no software simulador DEMOWARE Digital Works 3.04.39. A UCP (Unidade Central de Processamento)

Leia mais

MICROCONTROLADORES PIC 16F E 18F TEORIA E PRÁTICA. Instituto NCB www.newtoncbraga.com.br contato@newtoncbraga.com.br

MICROCONTROLADORES PIC 16F E 18F TEORIA E PRÁTICA. Instituto NCB www.newtoncbraga.com.br contato@newtoncbraga.com.br 1 MICROCONTROLADORES PIC 16F E 18F TEORIA E PRÁTICA Instituto NCB www.newtoncbraga.com.br contato@newtoncbraga.com.br 2 Microcontroladores PIC 16F e 18F Teoria e Prática Autor:. São Paulo - Brasil - 2013

Leia mais