terça-feira, 10 de agosto de 2010

Aula 02 - Gravador e Simulador de Microcontrolador da família PIC

O PIC (Peripheral Interface Controller) foi desenvolvido para controlar dispositivos periféricos, aliviando a carga da CPU principal. Comparado a um ser humano, o cérebro é o CPU principal e o PIC é equivalente ao sistema nervoso autônomo.
Figura 01 - Arquitetura PIC.
O PIC, assim como o processador, tem funções de cálculo e memória e é controlado pelo software. No entanto, a taxa de transferência e a capacidade de memória são baixas. Dependendo do tipo de PIC, a frequência máxima de funcionamento do relógio (clock) é de cerca de 20 MHz e a capacidade de memória (para escrever o programa) é de cerca de 1K a 4K palavras.
A freqüência do clock determina a velocidade na qual um programa é lido e uma instrução é executada. A taxa de transferência não pode ser julgada apenas com a freqüência do clock. Ele muda com a arquitetura do processador. No entanto, dentro da mesma arquitetura, aquele com a frequência de clock mais alta tem o maior taxa de transferência.
O PIC usa uma WORD de 14 bits para capacidade de memória de programa. Uma instrução é uma palavra longa. A memória do programa é medida em BYTES, um byte é 8 bits. O bit é a menor unidade e pode ter o valor de 1 ou 0. A palavra de instrução do PIC16F84A é composta de 14 bits. 1K palavras é igual a 1 x 1024 x 14 = 14.336 bits. Para converter isso em bytes, divida-o por 8 x 1024, (14.336 / 8 x 1024 = 1.75K bytes). 1K bytes não é igual a 1000 bytes. Isso ocorre porque o cálculo está em binário (2 a décima energia = 1,024).
Figura 02 - Pinos PIC16F84.
Ao usar o PIC, é possível tornar o circuito compacto. O PIC é conveniente para fazer cálculos. A memória, as portas de entrada / saída e assim por diante são incorporadas no IC. A eficiência e as funções são limitadas, mas o PIC pode fazer o trabalho de muitos ICs com software. Então, o circuito pode ser compacto.
Para usar o PIC, você deve entender como ele funciona. O PIC16F84A usa o RISC (Reduced Instruction Set Computer). Com isso, o número total de instruções é 35.
Diagrama de Pinos - PIC16F84A
Pinos 01, 02, 17 e 18  - RA2 - RA3: Bi-directional I/O port.
Pino 03 - RA4/T0CKI: Bi-directional I/O port ou Clock input to the TMR0 timer/counter.
Figura 03 - Placa do gravador e teste de
programação PIC.
Pino 04 - MCLR(inv): Master clear(reset)input ou Programming voltage input. This pin is an active low reset to the device.
Pino 05 - VSS: Ground.
Pino 06 - RB0/INT: Bi-directional I/O port ou External interrupt pin.
Pino 07 a 13 - RB1 - RB7: Bi-directional I/O port.
Pino 14 - VDD: Positive supply(+2.0V to +5.5V).
Pino 15 - OSC2/CLKOUT : Oscillator crystal output. Connects to crystal or resonator in crystal oscillator mode.
Pino 16 - OSC1/CLKIN : Oscillator crystal input. External clock source input.

A explicação de funcionamento do Hardware of the PIC16F84A está disponível em: Hardware of the PIC16F84A.

O conjunto de instruções da família PIC16F está disponível em: Conjunto de instruções da família PIC16F.

O diagrama elétrico do gravador de PIC 16F84 e 16F628 está em : 18_11_01 Gravador de PIC SRG.

O software para o gravador de PIC16F  -  IC Prog pode ser baixado em: IC_Prog_1.06.

© Direitos de autor. 2018: Gomes; Sinésio Raimundo. Última atualização: 20/11/2018.

Referência: The Hobby Electronics - © Seiichi Inoue 2005

terça-feira, 3 de agosto de 2010

Aula 01 - Gravador JDM de Microcontrolador da família PIC

Um dos mais simples gravadores de microcontroladores é o Gravador JDM de PIC, compatível com microcontroladores da família 16F e 18F de 8, 18, 24cXX eeprom, 28 e 40 pinos. O programador também fornece funcionalidade ICSP que permite a programação In-Circuit Serial. 
Figura 01 - Diagrama Elétrico do Gravador PIC JDM.
O circuito é conectado ao PC via porta serial e nenhuma fonte de alimentação externa é necessária. 
O programador JDM é um programador que está conectado à porta serial (porta COM) do PC. Leva a tensão de programação diretamente da porta COM do PC, portanto não é necessária uma fonte de alimentação separada. Devido ao motivo pelo qual a fonte de alimentação é retirada da porta COM, para portas COM "fracas" (especialmente em Notebooks) isso pode ser um problema. Portanto, neste caso, a porta COM não poderia fornecer uma tensão de programação suficiente e a programação falhará.
Figura 01 - Componentes para construção do Gravador PIC JDM.
Por outro lado, se você quiser usá-lo com um laptop, notbook que não fornecem conexão RS232, somente porta USB e usar um conversor USB para RS232 ele não funciona corretamente. 
O circuito é compatível com o Software WinPic800.
Lista de componentes necessários: 
T1, T2 : BC337 Transistor
D1, D4, D5, D6 : 1N4148 Diodo
D3 : 6V2 Diodo Zener
D2 : 5V1 Diodo Zener
R3, R4 : 1K8 1/4W Resistor
R1 : 10K 1/4W Resistor
R2 : 1K5 1/4W Resistor
X1 : DB9 PCB Conector Fêmea 
Figura 02 - Gravador PIC JDM.
C1, C2 : 100uF 16V Capacitor Eletrolítico
SV1 e SV4 : 40 Pinos IC Socket
SV2, SV3 : 20 Pin IC Socket
SV5 (ICSP) : 6 Pin Header Connector9
L1, L2, L3 : LED (L1: VERDE, L2: VERMELHO, L3: AMARELO)
A montagem dos componentes é simples. O único truque é que antes de soldar o Soquete de pino 40, você deve cortar as pontes de plástico e  também soldar o diodo (D6) e o jumper em baixo do soquete de 20 pinos, de acordo com o esquema.
Lembre de fazer todos os jumpers, você verá o LED vermelho ligado, sempre que você conectar o programador na porta serial.
Figura 03 - Posição dos CI"s no Gravador PIC JDM.
Agora ele está pronto para usar. Você pode usar ICPROG ou o  WinPIC,  para começar a programar as EEPROMs.
Indicações LED: amarelos: Clock, Vermelho: Conectado a Porta serial, Verde: Programando.
Cuidado ao conectar o PIC ao Soquete, caso esteja incorreta, você poderá inutilizar o PIC, ou até mesmo o gravador e danificar a porta serial. No lugar do Soquete, poderá ser adaptado um soquete ZIF.
Para gravar um dos modelos de CI de 18 e 20 pinos tais como: 16F631, 16F639, 16F677, 16F685, 16F687, 16F689, 16F690, 16F785, o CI deve ficar na parte inferior do soquete.
Já CI de 28 pinos deve ficar na parte superior do soquete. 
O CI de 40 pinos ocupa todo o soquete e os cI's de 8 pinas e memórias 24c tem posições especificas, conforme mostrado na figura 03.
Há diversos procedimentos que podem ser adotados para gravar um microcontrolador da linha PIC da Microchip. 
Figura 04: Interface do IC-Prog.
Neste momento vou mostrar a gravação utilizando o gravador JDM, gravador este que atendem a uma grande linha de micro controladores da linha PIC gravando desde os CI's de 8 a 40 pinos. O gravador JDM possui seus esquemas eletrônicos amplamente divulgado na internet. O detalhamento do processo de construção do gravador JDM é simples e está mostrado acima. 
Para estabelecer a comunicação entre o computador e o gravador, iremos precisar de um software. Este será responsável por enviar ao PIC por meio da porta serial o nosso arquivo hexa. Eu recomendo o IC-Prog. É um software que já vem com a biblioteca para comunicação com o gravador JDM. O software é muito intuitivo tornando-o de fácil configuração e utilização. A figura 04 ilustra a interface do IC-Prog.
Figura 05: janela de configuração da porta e modela de gravador.
Para iniciarmos o processo de comunicação entre o software e o hardware, conecte o gravador na porta serial do seu computador e em seguida execute o IC-Prog. Normalmente ele encontrará o modelo do gravador mesmo que este esteja sem o CI. Caso ele não seja encontrado verifique: se a posição dos pinos está de acordo, se os componentes foram soldados corretamente, se não há trilhas rompidas ou em curto e etc. Se estiver tudo OK, com o programa aberto, abra o menu "Settings" e clique na opção "Hardware", ou pressione F3. 
Figura 06: Interface do IC-Prog com destaque na aba de seleção do CI.
Uma nova janela irá surgir, nesta janela você encontrará um item denominado como "Programmer" onde você irá escolher o modelo de gravador utilizado. Por default ele já vem com a opção de "JDM Programmer" selecionada. Logo abaixo desta opção encontra-se o item "Ports" que serve para selecionar a porta em que o dispositivo foi plugado. A figura 05 ilustra esta situação com destaque em vermelho o que foi mencionado. 
Depois de estabelecida a comunicação entre o PC e o gravador é hora de selecionar o modelo do PIC a ser gravado. Na figura 06, destaquei a aba ode você deverá selecionar o modelo do CI a ser utilizado.
Para certificar-se de que o gravador está funcionando corretamente e o software está se comunicando com o PIC, você pode clicar no botão continua e verificar se o programa foi gravado.

O software IC Prog pode ser baixado em: IC_Prog_1.06.

© Direitos de autor. 2005: Gomes; Sinésio Raimundo. Última atualização: 30/05/2005