Seminario pic

Embed Size (px)

DESCRIPTION

Apresentação do seminário PIC família 18 no curso de Sistemas Digitais do Programa de Pos-gradução de Engenharia de Sistemas [PPGES]

Citation preview

  • 1. Microcontroladores PIC famlia 18 Rmulo Jales

2. Sumrio

  • O que PIC?

3. Arquitetura Harvard 4. Arquitetura do PIC 18F 5. Perifricos do PIC 18F 6. IDEs 7. O que PIC?

  • Programmable Interface Controller (1976)

8. Programmable Intelligent Computer (1977) 9. Microcontrolador 10. Microchip 11. Baixo Custo ( 1 ~ 8 Dlares )

  • Farnell, a partir de 6 Reais

12. Kits a partir de 170 Reais Baseados em Arquitetura Harvard 13. RISC 14. KIT Vendido no ML (R$255,00) 15. O que PIC?

  • 2008 completou 6 Bilhes de unidades fabricadas

16. Usado por amadores (hobbyists) e profissionais 17. Controle 18. Grande base de:

  • Usurios

19. Aplicaes

  • SUPORTE

Flash 20. EEPROM 21. Livros 22. Arquitetura Harvard

  • Separa barramento de dados e instruo
  • Enquanto executa uma instruo busca por outra.

RISC

  • Reduced Instruction Set Computer
  • Poucas instrues
  • PIC16 -> 35 instrues

23. PIC18 -> 77 instrues OBS: Intel 8051 -> 111 instrues 24. Arquitetura Harvard 25. PIC 18F

  • Microcontrolador RISC de Alta Performance

26. Arquitetura e conjunto de instrues otimizados para C

  • Endereamento Linear de Memria

At 10 MIPS de processamento

  • 40 Mhz

27. De 4 Mhz at 10 Mhz com PLL Ativo. Barramento de 16 Bits de instrues 28. Barramento de 8 Bits de Dados 29. Interrupes com prioridade 30. Arquitetura 18Fxx2

  • Processador

31. Memria 32. Perifricos 33. Arquitetura do PIC 18F 34. 35. Processador do PIC 18F

  • Contm:
  • ALU

36. Registradores 37. Controle ALU

  • Decodifica Instrues de 16bits

38. Registradores de estados de 5 bits 39. WREG (Working Register) 8 bits 40. Processador do PIC 18F

  • Registradores
  • PC, enderea a memria de programa.

41. BSR (Bank Select Register) Seleciona o banco de registradores ( 4bits) 42. FSR (File Select Register) (12 bits) para endereamento indireto. Unidade Controle

  • Controla sinais e temporizao das operaes de I/O

43. Endereamento do PIC 18F

  • 21 bits para programa -> 2^21 ~= 2 M

44. 12 bits para dados -> 2^12 = 4 K 45. Barramentos

  • 16 bits para instrues/dados de programa

46. 8 bits para dados de usurio 47. Memria PIC18F45xx

  • Memria para Dados- 4K

48. Memria para Programa (FLASH) - 32K 49. Memria EEPROM - 256 bytes 50. Mapa de Memria PIC18F45xx

  • Programa
  • Dados

51. Dados com Banco de memria

  • Cada banco tem 256 bytes, total de 16 Bancos

52. Para usar um determinado banco necessrio configurar o registrador BSR 53. A disponibilidade dos bancos depende do chip. Veja o datasheet do seu uC

  • PIC18F242/442 -> 3 bancos

54. PIC18F252/452 -> 6 bancos GPRs (General Purpose Registers) 55. SFR fica sempre no banco 15. SFR? O BSR um exemplo. 56. 57. EEPROM

  • Persistir o dado com o chip desligado

58. 4 Registradores para controle, leitura e escrita da EEPROM

  • EECON1, controle

59. EECON2, sequenciamento de escrita 60. EEDATA, dados 61. EEADR, endereo Para Ler:

  • Diga o endereo para EEADR

62. Configure EECON1 63. Leia EEDATA 64. EEPROM

  • Para escrever:
  • Configure o endereo em EEADR

65. O dado em EEDATA 66. Configure EECON1 para escrita 67. Desabilite as interrupes 68. Escreva 0x55 em EECON2 69. Escreva 0xAA em EECON2 70. Set WR em EECON1 71. Habilite as interrupes 72. Execute a tarefa 73. Desabilite a escrita em EECON1 74. Perifricos da Famlia 18F

  • At 5 portas de I/O

75. 4 Timers 76. Transmisso Serial 77. Transmisso Paralela (escravo) 78. EEPROM 79. Perifricos da Famlia 18F PIC18F4550 tem uma porta USB DEVICE 80. Exemplo PIC18F4550 USB 81. Portas de I/O

  • 5 portas, O PIC18F2x2 s tem 3.

82. J endereadas 83. Multiplexadas 84. Tem 8 pinos cada

  • PORT A , tem 7

85. PORT E, tem 3 Porta paralela depende do encapsulamento (40 pinos), associado ao PORT D 86. Cada porta tem seu SFR 87. Temporizadores

  • 4 temporizadores

88. TIMER 0

  • 8 ou 16 bits, via software

89. Interrupo no overflow 90. Prescaler (Reduo de frequencia por um fator) TIMER 1

  • 16 bits. (dados com 8 bits apenas... soluo 2 registradores! )

91. Interrupo no overflow 92. Temporizadores

  • TIMER 2
  • Temporizador de 8 bits

93. Registrador de perodo de 8 bits 94. Prescaler (1:1, 1:4, 1:16), divide a entrada do clock 95. Postscalet (1:1 at 1:16), divide o estouro do clock TIMER 3, semelhante ao TIMER 1 usando registradores diferentes. 96. Interrupes

  • Interrupes prioritrias

97. Externas 98. Temporizadores 99. Habilitveis 100. Selecionveis quanto a transio 101. Outras caractersticas interessantes

  • Watch-dog

102. A/D de 10 Bits 103. Sleep mode 104. Proteo de cdigo 105. ICSP (programao via interface serial) 106. ICDBG (debugger), set o bit DEBUG do registrador CONFIG4L. 107. Bits de configurao 108. 109. Pipeline

  • Dois estgios
  • Uma de busca

110. Outra de execuo TCY0 TCY1 TCY2 TCY3 TCY4 TCY5 MOVLW 55h Fetch 1 Execute 1 MOVWF PORTB Fetch 2 Execute 2 BRA sub_1 Fetch 3 Execute 3 BSF PORTA,BIT3 Fetch 4 flush Instructon @adress sub_1 Fetch sub_1 Execute sub_1 111. Pipeline

  • No tem problema de data-hazard (2 estgios)

112. Tem control-hazard

  • Instrues de desvio

113. Flush O PIC18F acessar as memrias ao mesmo tempo:

  • DADOS -> executar

114. PROGRAMA -> Buscar Arquitetura Havard! 115. Instrues

  • So 77 instrues

116. Tipos:

  • Aritmticas

117. Acesso a dados 118. Desvio 119. Funo 120. Controle 121. Instrues 122. Instrues PIC18F 123. 124. 125. Desenvolvendo

  • A Microchip tem todo conjunto de ferramentas para o PIC18F
  • IDE - Grtis

126. Compiladores

  • ASM Grtis

127. C, s via vendedor(H verses acadmicas) Programadores a partir de 199 dlares 128. Simuladores - Grtis 129. Emuladores a partir de 2000 dlares 130. Depuradores a partir de 129 dlares 131. KITs vide site da microchip 132. MPLAB IDE

  • Contm todas as ferramentas, gratuitas, necessrias para o desenvolvimento

133. Vasta documentao na internet sobre o uso.

  • O livros sobre PIC geralmente dedicam um capitulosobre o MPLAB

Disponvel gratuitamente no site da Microchip

  • www.microchip.com

Intregado com PROTEUS VSM via plug-in 134. Disponvel apenas para o Windows 135. 136. 137. Alternativas de desenvolvimento

  • SDCC ou GCC para compilar programas em C

138. Eclipse eGDB para ambiente de desenvolvimento 139. Fedora Electronic Lab FEL. Ambiente Linux e gratuito completo para desenvolvimento de sistemas embarcados e eletrnicos. 140. RTOS - FreeRTOS 141. Referncias

  • PIC18FXX2 Data Sheet

142. Desbravando o PIC 8 Edio 143. Building a PIC18F USB device -http://www.waitingforfriday.com/index.php/Building_a_PIC18F_USB_device 144. The Beautiful Internet... by tag pic18f :)