quarta-feira, 19 de março de 2014

Apostila Aplicações práticas com o SANUSB e programação C com o Compilador CCS

Print Friendly and PDF

Esta apostila aborda aplicações práticas com microcontroladores PICMicro da família PIC18 da Microchip, Utilizando a plataforma de desenvolvimento SANUSB. Esta apostila foi elaborada pelos  Profs. Sandro César Silveira Jucá, professor da área de telemática do IFCE, e Renata Imaculada Soares Pereira.





Sumário


1.  INTRODUÇÃO  .......................................................................................................................................................  10
1.1  ASSEMBLY X LINGUAGEM C  .........................................................................................................................................  10
1.2  VANTAGENS X DESVANTAGENS DA LINGUAGEM C PARA MICROCONTROLADORES  ......................  12
1.3  ARQUITETURAS DOS MICROCONTROLADORES  .................................................................................................  12
1.4  O CONTADOR DE PROGRAMA (PC)  ...........................................................................................................................  13
1.5  BARRAMENTOS  ..................................................................................................................................................................  13
1.6  A PILHA (STACK)................................................................................................................................................................  14
1.7  CICLO DE MÁQUINA  .........................................................................................................................................................  14
1.8  MATRIZ DE CONTATOS OU PROTOBOARD  ............................................................................................................  15
1.9  RESISTORES  .........................................................................................................................................................................  16
1.10  CAPACITORES  ......................................................................................................................................................................  17
1.11  FONTES DE ALIMENTAÇÃO  ..........................................................................................................................................  19
1.12  RUÍDO (BOUNCING) E FILTRO (DEBOUNCING)..................................................................................................  19
1.13  PROTOCOLO DE COMUNICAÇÃO USB  ......................................................................................................................  20
1.14  MÉTODOS DE COMUNICAÇÃO USB  ...........................................................................................................................  20
2.  FERRAMENTA DE GRAVAÇÃO VIA USB  ......................................................................................................  22
2.1  GRAVAÇÃO DE MICROCONTROLADORES...............................................................................................................  23
2.2  Usando FOR para piscar o LED  ...................................................................................................................................  33
2.3  Usando WHILE para piscar o LED  .............................................................................................................................  34
2.4  USANDO O PORT B  ............................................................................................................................................................  34
2.5  GRAVANDO O MICROCONTROLADOR VIA USB NO WINDOWS....................................................................  36
2.6  GRAVAÇÃO WIRELESS DE MICROCONTROLADORES  .......................................................................................  39
2.7  RGB  ...........................................................................................................................................................................................  51
2.8  SISTEMA DUAL CLOCK  ....................................................................................................................................................  55
2.9  EMULAÇÃO DE COMUNICAÇÃO SERIAL NO WINDOWS  ..................................................................................  55
2.10  GRAVANDO O MICROCONTROLADOR VIA USB NO LINUX  .............................................................................  62
2.11  GRAVANDO O PIC VIA USB PELO TERMINAL DO LINUX OU MAC OSX  .....................................................  64
2.12  SISTEMA DUAL CLOCK  ....................................................................................................................................................  65
2.13  EMULAÇÃO DE COMUNICAÇÃO SERIAL NO LINUX  ...........................................................................................  66
2.14  PROGRAMA COM INTERRUPÇÃO EXTERNA POR BOTÃO E DO TIMER 1  ................................................  69
2.15  DESAFIO: SEMÁFORO COM BOTÃO PARA PEDESTRE  ......................................................................................  74
3.  BUZZER  .................................................................................................................................................................  77
4.  OBTENÇÃO DE UM VOLTÍMETRO ATRAVÉS DO CONVERSOR AD COM A VARIAÇÃO DE UM 
POTENCIÔMETRO  .......................................................................................................................................................  78
5.  CIRCUITO COM84 PARA GRAVAÇÃO DO gerenciador.hex  ...................................................................  79
6.  PERIFÉRICOS INTERNOS DO MICROCONTROLADOR  ............................................................................  81
6.1  CONVERSOR A/D  ................................................................................................................................................................  81
6.2  AJUSTE DE RESOLUÇÃO DO SENSOR E DO CONVERSOR AD DE 8 BITS  ..................................................  83
6.3  AJUSTE DA TENSÃO DE FUNDO DE ESCALA COM AMPOP  ............................................................................  83
6.4  AJUSTE DA TENSÃO DE REFERÊNCIA COM POTENCIÔMETRO  ..................................................................  84
6.5  CONVERSOR AD DE 10 BITS  .........................................................................................................................................  84
6.6  OBTENÇÃO DE UM VOLTÍMETRO ATRAVÉS DO CONVERSOR AD COM A VARIAÇÃO DE UM 
POTENCIÔMETRO  ..............................................................................................................................................................................  85
6.7  LEITURA DE TEMPERATURA COM O LM35 ATRAVÉS DO CONVERSOR AD  ..........................................  86
6.8  TERMISTOR  ..........................................................................................................................................................................  88
6.9  LINEARIZAÇÃO  ...................................................................................................................................................................  89
7.  MEMÓRIAS DO MICROCONTROLADOR  ......................................................................................................  90
7.1  MEMÓRIA DE PROGRAMA  .............................................................................................................................................  90
7.2  MEMÓRIA DE INSTRUÇÕES  ..........................................................................................................................................  90
7.3  MEMÓRIA EEPROM INTERNA  .....................................................................................................................................  90
7.4  MEMÓRIA DE DADOS (RAM)  ........................................................................................................................................  91 
7.5  EXEMPLO DE APLICAÇÃO:CONTROLE DE ACESSO COM TECLADO MATRICIAL  .................................  92
7.6  PONTEIROS  ...........................................................................................................................................................................  93
7.7  MODULAÇÃO POR LARGURA DE PULSO PELO CCP  ...........................................................................................  96
8.  CONTROLE PWM POR SOFTWARE DE VELOCIDADE DE UM MOTOR CC  ........................................  98
9.  INTERRUPÇÕES E TEMPORIZADORES  .......................................................................................................  99
9.1  INTERRUPÇÕES  ..................................................................................................................................................................  99
9.2  INTERRUPÇÕES EXTERNAS  ........................................................................................................................................  100
9.3  INTERRUPÇÃO DOS TEMPORIZADORES  ..............................................................................................................  101
9.4  MULTIPLEXAÇÃO POR INTERRUPÇÃO DE TEMPORIZADORES  ................................................................  103
10.  EMULAÇÃO DE PORTAS LÓGICAS  .........................................................................................................  105
10.1  INSTRUÇÕES LÓGICAS PARA TESTES CONDICIONAIS DE NÚMEROS  ....................................................  105
10.2  INSTRUÇÕES LÓGICAS BOOLANAS BIT A BIT  ....................................................................................................  105
10.3  EMULAÇÃO DE DECODIFICADOR PARA DISPLAY DE 7 SEGMENTOS  ....................................................  110
11.  MULTIPLEXAÇÃO COM DISPLAYS DE 7 SEGMENTOS  ....................................................................  117
12.  COMUNICAÇÃO SERIAL EIA/RS-232....................................................................................................  121
12.1  CÓDIGO ASCII  .....................................................................................................................................................................  122
12.2  INTERFACE USART DO MICROCONTROLADOR.................................................................................................  123
12.3  CÁLCULO DE TAXA DE TRANSMISSÃO SERIAL  .................................................................................................  125
12.4  COMUNICAÇÃO SERIAL EIA/RS-485  ......................................................................................................................  127
12.5  APLICAÇÃO DE COMUNICAÇÃO SERIAL VIA BLUETOOTH OU ZIGBEE..................................................  127
13.  ACIONAMENTO DE MOTORES MICROCONTROLADOS  ..................................................................  128
13.1  ACIONAMENTO DE MOTORES CC DE BAIXA TENSÃO  ...................................................................................  128
13.2  MOTORES ELÉTRICOS UTILIZADOS EM AUTOMÓVEIS  .................................................................................  128
13.3  COROA E O PARAFUSO COM ROSCA SEM-FIM  ...................................................................................................  130
13.4  CHAVEAMENTO DE MOTORES CC COM TRANSISTORES MOSFET  ..........................................................  131
13.5  EXEMPLO: SEGUIDOR ÓTICO DE LABIRINTO  ....................................................................................................  132
13.6  ESTABILIDADE DO CONTROLE DE MOVIMENTO  ............................................................................................  132
13.7  PONTE H  ..............................................................................................................................................................................  135
13.8  DRIVER PONTE H L293D  .............................................................................................................................................  136
13.9  SOLENÓIDES E RELÉS  ...................................................................................................................................................  137
13.10  DRIVER DE POTÊNCIA ULN2803  ........................................................................................................................  139
13.11  PONTE H COM MICRORELÉS  ................................................................................................................................  143
13.14  ACIONAMENTO DE MOTORES DE PASSO  .......................................................................................................  145
13.15  MOTORES DE PASSO UNIPOLARES  ...................................................................................................................  145
13.16  MODOS DE OPERAÇÃO DE UM MOTOR DE PASSO UNIPOLAR  .............................................................  147
13.17  ACIONAMENTO BIDIRECIONAL DE DOIS MOTORES DE PASSO  ..........................................................  147
Exemplo de código em C para CCS:  ..........................................................................................................................................  148
13.18  SERVO-MOTORES  .......................................................................................................................................................  150
14.  FOTOACOPLADORES E SENSORES INFRAVERMELHOS.................................................................  156
14.1  TRANSMISSOR E RECEPTOR IR  ...............................................................................................................................  157
14.2  AUTOMAÇÃO E DOMÓTICA COM CONTROLE REMOTO UNIVERSAL  ......................................................  161
15.  LCD (DISPLAY DE CRISTAL LÍQUIDO)  .................................................................................................  164
15.1  EXEMPLO: CONTROLE DE TENSÃO DE UMA SOLDA CAPACITIVA COM LCD  .....................................  169
15.2  CGRAM (RAM de geração de caracteres especiais)  ..........................................................................................  172
16.  MODELAGEM DE SINAIS DE SENSORES  ..............................................................................................  174
16.1  EXEMPLO: MODELAGEM DE UM LUXÍMETRO MICROCONTROLADO COM LDR  ...............................  174
16.2  SUPERVISÓRIO  ..................................................................................................................................................................  180
17.  INTERFACE I
2
C  ............................................................................................................................................  182
17.1  REGRAS PARA TRANSFERÊNCIA DE DADOS  ......................................................................................................  183 
17.2  MEMÓRIA EEPROM EXTERNA I
2
C  ...........................................................................................................................  187
18.  RTC (RELÓGIO EM TEMPO REAL)  ........................................................................................................  189
18.1  EXEMPLO: PROTÓTIPO DATALOGGER USB DE BAIXO CUSTO  ..................................................................  193
19.  TRANSMISSÃO DE DADOS VIA GSM  .....................................................................................................  199
19.1  COMANDOS AT PARA ENVIAR MENSAGENS SMS DE UM COMPUTADOR PARA UM CELULAR OU 
MODEM GSM  .......................................................................................................................................................................................  200
19.2  COMANDOS AT PARA RECEBER MENSAGENS SMS EM UM COMPUTADOR ENVIADAS POR UM 
CELULAR OU MODEM GSM  ..........................................................................................................................................................  201
20.  O PROTOCOLO MODBUS EMBARCADO  ..............................................................................................  204
20.1  MODELO DE COMUNICAÇÃO  ......................................................................................................................................  204
20.2  DETECÇÃO DE ERROS  ....................................................................................................................................................  205
20.3  MODOS DE TRANSMISSÃO  ..........................................................................................................................................  205
21.  INTRODUÇÃO À SISTEMAS OPERACIONAIS EM TEMPO REAL (RTOS)  ....................................  210
21.1  MÁQUINAS DE ESTADO  ................................................................................................................................................  212
22.  UTILIZANDO O COMPILADOR C18 E A IDE MPLABX MULTIPLATAFORMA COM FUNÇÕES 
EM PORTUGUÊS  ........................................................................................................................................................  214
22.1  FUNÇÕES EM PORTUGUÊS  ..........................................................................................................................................  215
22.2  FUNÇÕES BÁSICAS DA APLICAÇÃO DO USUÁRIO.............................................................................................  215
22.3  FUNÇÕES DO CONVERSOR ANALÓGICO DIGITAL (A/D)...............................................................................  220
22.4  FUNÇÕES DA COMUNICAÇÃO SERIAL RS-232  ...................................................................................................  221
23.  EXEMPLOS DE PROGRAMAS...................................................................................................................  222
24.  APÊNDICE I: CABEÇALHOS DA FERRAMENTA PARA DIVERSOS COMPILADORES...............  230
24.1  CCS C Compiler  ..................................................................................................................................................................  230
24.2  C18 compiler  ......................................................................................................................................................................  231
24.3  SDCC  .......................................................................................................................................................................................  233
24.4  MikroC  ...................................................................................................................................................................................  234
24.5  Hi-Tech C Compiler  .........................................................................................................................................................  235
24.6  Microchip ASM compiler  ...............................................................................................................................................  235
25.  REFERÊNCIAS BIBLIOGRÁFICAS  ...........................................................................................................  246

Nenhum comentário:

Postar um comentário

LinkWithin

Related Posts Plugin for WordPress, Blogger...