A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Prof. Ricardo Teixeira Tecnologia em Mecatrônica Industrial SENAI

Apresentações semelhantes


Apresentação em tema: "Prof. Ricardo Teixeira Tecnologia em Mecatrônica Industrial SENAI"— Transcrição da apresentação:

1 Prof. Ricardo Teixeira Tecnologia em Mecatrônica Industrial SENAI
Aula 1 Prof. Ricardo Teixeira Tecnologia em Mecatrônica Industrial SENAI

2 Modelo da disciplina Aulas teórica e práticas em hardware e simuladas.
Programação em C Microcontrolador PIC18F4550 Kit didático Mac Master 2 Como está o nível do C da turma?

3 Modelo da disciplina Avaliação 1: Avaliação 2:
5 atividades ao longo das 10 primeiras aulas. Todas devem ser entregues na data especificada. Todas as atividades deverão conter os arquivos para simulação e execução do projeto. Avaliação 2: Projeto em grupo. Descrição do projeto (o que vai ser feito). Pode compor com outras disciplinas (ex.: controlar um motor em eletrônica de potência etc.). Esquema elétrico e código fonte. Apresentação funcionando no kit didático. Os códigos das atividades deverão ser compreensíveis. Se algum cálculo for realizado código deve ter os comentários explicando como se chegou ao resultado. A descrição do projeto deve ser apresentada e aprovada.

4 Modelo da disciplina Avaliação Final:
Prova teórica aberta com 5 questões. Tipo de questão: Criar um código dado um problema. Criar um circuito dado o código. Questões discursivas. Prova sem consulta e individual realizada em papel pautado. Diferença para os microprocessadores.

5 Introdução O microcontrolador é pequeno computador em um único chip.
Neste mesmo chip temos o core de processamento, memória e periféricos de E/S programáveis. Os modelos mais novos não necessitam de outros componentes para funcionar, são autossuficientes. Estão disponíveis em diversos encapsulamentos, variadas famílias e modelos com características próprias (conversores AD, USB, tipo de arquitetura etc.). Diferença para os microprocessadores.

6 Introdução Diagrama em blocos do microcontrolador PIC16F877. Fonte:

7 Aplicações Processos Industriais; Automóveis;
Dispositivos eletrônicos (smartphones, brinquedos, eletrodomésticos etc.); Aplicações médicas; Redes de Sensores Sem Fio (RSSF); Robótica etc.

8 Aplicações

9 Aplicações

10 Diversos fabricantes:
Modelos Diversos fabricantes: Microchip (PIC e dsPIC); ATMEL (8051, AVR); ARM (série Cortex); Texas Instruments (série MSP)

11 E onde fica o Arduino nessa história?
Dúvida E onde fica o Arduino nessa história? Trata-se de uma plataforma de desenvolvimento opensource. Utiliza microcontroladores ATMEL (ex.: Arduino Uno utiliza ATMEGA328).

12 Microcontroladores PIC

13 Microcontroladores PIC
Desenvolvidos pela Microchip Chips com características semelhantes mesmo em famílias diferentes (ex. PIC16F877A e PIC18F4550).

14 PIC16F628A PIC 16F877A PIC 18F4550 dsPIC30F4013 Alguns Chips
8 bits, 2 KB de FLASH, 20 MHz, USART. PIC 16F877A 8 bits, 8 KB de FLASH, 20 MHz, SPI, I²C. PIC 18F4550 8 bits, 32 KB de FLASH, 48 MHz, USB. dsPIC30F4013 16 bits, 48 KB de FLASH, 40 MHz, CAN BUS, DSP.

15 PIC 16F877A

16 PIC 18F4550

17 PIC18F4550 Clock de até 48 MHz 32 KB de memória FLASH 35 E/S, 13 canais A/D 10 bits, Protocolos de comunicação USB, UART, SPI e I²C, 1 PWM 4 Timers SPI, I²C, USART Boot-loader, necessita de gravador apenas na primeira gravação

18 PIC18F4550 5 portas digitais de entrada e saída: A, B, C, D, E – cada uma com capacidades diferentes. USB 2.0 – HID (Human Interface Device): é reconhecido como um novo dispositivo no Windows por exemplo.

19 Arquitetura PIC18F4550 Arquitetura Harvard (memórias separadas com barramentos independentes); Porta A e B: 8 bits; Porta C: 7 bits, RC3 não está disponível; Porta D e E: 4 bits; Apenas um barramento de dados; Circuito de geração de clock interno. dsPIC tem 2 barramentos de dados, X e Y.

20 Ferramentas de Desenvolvimento
CCS – compilador para a linguagem C MPLAB – gratuito para download em Permite programação em assembly e C, além da gravação dos dispositivos Pode ser usado para programação em C por meio de plugins Também podem ser usados para programação o PicKit 2 Programmer, PICKit 3 Programmer entre outros. Mikro C – compilador para a linguagem C com diversas ferramentas integradas Proteus – simulador de circuito elétrico e código digital de microcontroladores Possui limitações de simulação importantes que podem inviabilizar a simulação ou não prever completamente o funcionamento do circuito real.

21 Material de Estudo Materiais de aula no site www.ricardoteix.com
Livros: Dogan Ibrahim, ADVANCED PIC MICROCONTROLLER PROJECTS IN C: From USB to RTOS with the PIC18F Series, Newnes, (mikroC) David José de Souza, Desbravando o PIC, ed. Érica – 12ª Ed, (Assembly) D. J. de Souza e Nicolás Cesar Lavinia, Conectando o PIC, recursos avançados. Ed Érica, 4ª Ed., 2007. Fábio Pereira, Microcontroladores PIC, programação em C (CCS). ed Érica, 7ª Ed, 2007.

22 Material de Estudo Outros materiais: Datasheet do PIC18F4550.
PIC18F4XXX Family Programming Specification Microchip website Manual do compilador utilizado (F1) Apostilas e tutoriais em geral na internet sobre microcontroladores PIC em C e Proteus.

23 Kit Didático MacMaster 2
Displays 7 segmentos LCD LEDs Teclado matricial Memória serial (I²C) RTC etc.

24 Kit Didático McMaster 2

25 Kit Didático McMaster 2

26 Um pouco do Proteus Entradas: 1: botão pressionado gera zero
3: Arranjo com barra de resistor e dip switch (repare no uso da ferramenta label) 4: gerador lógico apenas para simulação (logic state) 5: botão de três terminais 1 2 3 4 5

27 Um pouco do Proteus Saídas: 1: Controlando o LED
2: Arranjo com barra de LEDs 3: mostrador lógico apenas para simulação (logc probe) 1 2 3

28 Um pouco do Proteus Teste seus códigos
Hardware de teste – disponível no material de aulas Atenção: à velocidade, ao arquivo .hex, ao relógio da simulação à sinalização de níveis lógicos: vermelho = 1 Azul = 0 Amarelo = curto circuito Cinza = desconectado ou indefinido (zona proibida)

29 Dica importante - 1 O arquivo de configuração 18F4550.h possui a sintaxe as configurações de várias funcionalidades do controlador. Para visualizar quais as opções disponíveis: Abra o projeto (Exemplo_01), Compile (F9) Botão direito sobre #include<PIC h> Opção: open file at cursor Ou apenas na aba Files dê duplo clique no arquivo.

30 Dica importante - 2 O arquivo .lst que mostra o código em assembly permite a visualização da área de código. Para visualizar o arquivo .lst: Abra o programa (Exemplo_01) Compile (F9) Clique na aba Files Output/Exemplo_01.lst

31 Dica importante - 3 Ao abrir e compilar um programa no CCS é criado automaticamente um projeto associado. Caso você abra um segundo programa e tente compilar, o projeto aberto (com o primeiro programa aberto) é o que será compilado.

32 Dica importante - 4 A diretiva #use delay (clock = 20M) apenas informa ao compilador qual a velocidade do clock que será implementado em hardware Se houver diferença entre o cristal escolhido no Proteus ou na placa e o informado na diretiva as temporizações serão erradas.

33 Programação em C Compilador CCS ANSI C mais as especificações do uC
Ver arquivo 18F4550.h Atenção aos tipos de dados

34 Programação em C Cada tipo comporta uma quantidade de bits
O estouro do valor pode acarretar em perda dos dados

35 Programação em C Alguns tipos são equivalentes

36 Estrutura básica #include <18F4550.h> // inclui arquivo de bibliotecas do dispositivo #use delay (clock = )// Isso apenas informa para o compilador // qual a frequencia do clock será utilizada // para os calculos de tempo do compilador // bits de configuração #fuses HS, NOWDT, NOPROTECT, NOPUT, NOBROWNOUT, NOLVP void main () {// rotina principal //instruções que irão ser executadas apenas uma vez while(true) { // loop infinito // Área de código em loop que será executada indefinidamente }

37 Os bits de configuração
XT,HS,INTRC – Selecionam a velocidade do cristal – datasheet página 121 NOWDT,WDT – Watchdog Timer (cão de guarda) - datasheet página 131 NOPUT,PUT – Power-up timer – datasheet página 124 PROTECT, NOPROTECT – Protege o código, não permite a sua leitura (tem na internet como quebrar de algumas famílias) DEBUG,NODEBUG

38 Os bits de configuração
NOBROWNOUT,BROWNOUT – Reset com tensão baixa LVP,NOLVP – Programação em baixa tensão

39 Principais arquivos gerados pelo compilador
Xxx.cof código em linguagem de máquina para ser carregado no controlador ou no Proteus – permite debug no Proteus Xxx.hex código em linguagem de máquina para ser carregado no controlador ou no Proteus Xxx.lst código em assembly Para visualizar os arquivos, acesse a aba files após compilar.

40 Configurando o simulador proteus
Clique com o botão direito sobre o controlador – propriedades Carregue o programa .hex ou .cof e configure a velocidade

41 Primeiro Programa em C Leitura e escrita de portas
input_x () output_x () Manual de referência pág. vii (via sumário) Value = input_a () //lê a porta A e carrega na variável value (byte ou inteira) Output_a (value) //escreve a variável value na porta a.


Carregar ppt "Prof. Ricardo Teixeira Tecnologia em Mecatrônica Industrial SENAI"

Apresentações semelhantes


Anúncios Google