Você está na página 1de 14

Manual Clp Pic40-v3 www.vwsolucoes.

com Copyright 2011 VW Solues

Apresentao
O ClpPic40-v3 foi desenvolvido com base no microcontrolador PIC16F877A, mas pode ser utilizado qualquer outro PIC de 40 pinos da famlia 16F ou 18F (observar a pinagem). Ele possui vrias funcionalidades. Tm vrias entradas digitais, muitas sadas que podem ser rel (contatos reversveis), a transistor ou a triac, 01 entrada analgica (0-5V ou 0-10V ou 0-20mA, com resoluo de 10 bits). possvel instalar Display Lcd no conector LCD (PortB), o que lhe oferece grande versatilidade em seu projeto. Utilize sua imaginao e desenvolva uma IHM com display de 2 ou 4 linhas, permitindo que operadores modifiquem variveis pr-estabelecidas em seu projeto, etc. Como voc pode ver, as possibilidades de programao so imensas. O equipamento possui tambm comunicao serial atravs da porta RS232 ou RS485 (selecionvel atravs de jumper) para se comunicar com um PC, com outra placa ClpPic ou com qualquer outro equipamento que possua comunicao serial RS232 ou RS485. O ClpPic40-v3 possui tambm barramento I2C, disponibilizando locais para instalao de memria Eeprom (ex.: 24C256) e RTCC (Real Time Clock/Calendrio). A instalao da memria opcional e dever ser instalada somente se sua aplicao necessitar. Normalmente utilizada para armazenamento de dados (banco de dados). O Real Time Clock sugerido para utilizao o DS1307 e dever ser instalado somente se houver necessidade em sua aplicao. Dever ser instalado tambm um cristal de 32.768KHz e uma bateria de 3V-Lithium (CR2032) necessria para manter o relgio funcionando mesmo na ausncia de alimentao da placa.

O ClpPic40-v3 acompanha os seguintes softwares e cdigos fontes. SOFTWARES: Software Eclipse.exe, utilizado para gravao do PIC via porta Usb do PC. Software LDmicro.exe, para programao do PIC em linguagem Ladder. Software MikroC, para programao do PIC em linguagem C. Software MPLAB, para programao do PIC em linguagem Assembly. Todos os softwares so de uso livre. CODIGOS FONTE: Cdigo fonte do programa de teste das entradas e sadas da placa escrito em Assembly; Cdigo fonte do Supervisrio para teste de comunicao serial entre o ClpPic40-v3 e o PC; Programa do PIC escrito em Assembly Programa do PC escrito com Microsoft Visual C# 2008 Express Edition.

ndice
1. 2. 3. 4. 5. 6. 7. 8. Especificaes tcnicas Montagem do cabo serial RS232. Lista de material Descrio dos pinos do PIC relacionados s funes na placa Configurao do PIC Detalhes importantes na placa Transferncia do arquivo .HEX para o Clp Garantia
Manual Clp Pic40-v3 www.vwsolucoes.com Copyright 2011 VW Solues

1. Especificao tcnicas:
Dimenses: 15,2 cm de comprimento por 13,7 cm de largura. Peso aproximado: 250 gramas (montada). Alimentao: 12Vcc ou 24Vcc por 500mA. O ClpPic40-v3 deve ser alimentado por uma fonte de corrente contnua com a mesma tenso dos rels de sada, pois as entradas (E1 a E12) e os rels recebem diretamente a alimentao da entrada. Obs.: Se for instalado equipamentos nas entradas e sadas do ClpPic40-v3 que consuma energia eltrica, esse consumo deve ser somado para o correto dimensionamento da fonte de corrente contnua. Se for utilizado 24Vcc dever ser instalado dissipador de calor no regulador de tenso (7805). Caractersticas: PIC - Microcontrolador PIC 16F877A, mas se desejar pode ser utilizado outro PIC de 40 pinos (observar a pinagem); MEMORIA - 01 local reservado para instalao de memria Eeprom (comunicao I2C) - Opcional; RTCC - 01 local reservado para instalao de Real Time Clock/Calendrio - DS1307 (comunicao I2C) - Opcional; I/Os

12 entradas digitais: Entradas do tipo contato aberto e fechado com fotoacopladores. Todas as 12 entradas so mapeadas por leds. 01 entrada analgica: Conversor A/D de 10Bits. Entrada de 0-5V ou 0-10V ou 0-20mA, selecionvel atravs de jumper. 08 sadas: Sadas do tipo contato de Rels (contatos reversveis) 15A 120VAC. As sadas tambm podem ser a transistor (IRF9540) ou a triac (TIC226) - Opcional. Lembrando que as sadas a transistor ou a triac so fotoacopladas. Conector LCD: 08 entradas ou sadas TTL rpidas diretas ao microcontrolador. Normalmente usado para instalar um LCD ou para conectar a placa de expanso de I/Os. Porta Serial: RS232 de uso genrico (RX, TX, GND). Porta Serial: RS485 half duplex - Opcional. ICSP: Pinagem disponvel para gravao in-circuit do microcontrolador usado.

2. Montagem do cabo Serial RS232.

Manual Clp Pic40-v3 www.vwsolucoes.com Copyright 2011 VW Solues

3. Lista de material
Item 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 Qtde 01 01 02 01 05 06 08 01 02 01 01 01 13 08 08 08 01 27 33 02 01 01 01 12 01 01 01 01 01 01 01 01 Descrio Barra pinos 1x40 vias -11,2mm -180 graus Bateria Lithium 3V Capacitor cermico - 33pF Capacitor eletroltico - 470uF x 6,3V Capacitor eletroltico - 1uF x 25V Capacitor cermico - 100nF Diodo - 1N4148 Diodo - 1N4007 Transil - P6KE6V8A Diodo Zener - 5,1v - 1N4733 Diodo Zener - 13v - 1N4743 Conector - Header 10 pinos 180 LED - verde 3mm LED - vermelho 3mm Transistor - BC548 Rel - 12V - 1 plo - 2 posies Trimpot multivoltas - 100R Resistor - 4K7 Resistor - 10K Resistor - 56R Resistor - 500R Preciso Conector - DB9 - Macho 90 solda placa Pulsador - Ttil Fotoacoplador - PC 817A MAX485 MAX232N Memria Eeprom (Ex: 24C256) ( * ) RTC (Real Time Clock) - DS1307 Microcontrolador - PIC16F877A ( ** ) Regulador de tenso - 7805 Cristal - 4MHz Cristal 32.768KHz Sigla na placa
ICSP, entr. analgica, E12/RS485 e RS232/RS485

BT1 C1,2 C5 C7, 8, 9, 10, 22 C3, 4, 6, 11, 20, 21 D1, 2, 3, 4, 5, 6, 7, 8 D9 DS1, 2 DZ1 DZ2 LCD LD1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, ON LQ1, 2, 3, 4, 5, 6, 7, 8 Q1, 2, 3, 4, 5, 6, 7, 8 K1, 2, 3, 4, 5, 6, 7, 8 P1 R1, 2, 4, 5, 7, 8, 10, 11, 13, 14, 16, 17, 19, 20, 22, 23, 25, 26, 28, 29, 31, 32, 34, 35, 82, 85, 93 R3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 77, 78, 80, 81, 92 R83, 84 R79 RS232 S1 U1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 U21 U22 U23 U24 U25 VR1 XT1 XT2

* Memria para comunicao I2C de acordo com sua necessidade. Exemplo: 24C256 ** Pode ser utilizado qualquer outro PIC de 40 pinos (observar a pinagem). Esta lista foi montada a fim de ser usada como lista de compra das peas e tambm de auxiliar na montagem da placa, devido tabela conter uma coluna com a sigla que representa cada componente na placa.

Manual Clp Pic40-v3 www.vwsolucoes.com Copyright 2011 VW Solues

Para sada TRIAC:


Para utilizar sada a TRIAC, retirar o rel e acrescentar os componentes que segue abaixo: Item 33 34 35 36 37 38 Qtde 08 08 08 08 08 08 Descrio Fotoacoplador - MOC3063 / MOC3041 Resistor 1k5 Resistor 330R Resistor 39R Capacitor polister - 10nF / 400v Triac - TIC226 Sigla na placa U13, 14, 15, 16, 17, 18, 19, 20 R53, 56, 59, 62, 65, 68, 71, 74 R54, 57, 60, 63, 66, 69, 72, 75 R55, 58, 61, 64, 67, 70, 73, 76 C12, 13, 14, 15, 16, 17, 18, 19 Q17, 18, 19, 20, 21, 22, 23, 24

Para sada a TRANSISTOR:


Para sada a transistor, retirar o rel e acrescentar os componentes que segue abaixo: Jumpear os capacitores C12, 13, 14, 15, 16, 17, 18, 19 e jumpear tambm nas sinalizaes ao lado dos fotoacopladores. Item 39 40 41 42 Qtde 08 08 08 08 Descrio Transistor - IRF9540 Fotoacoplador PC817 Resistor 4k7 Resistor 10k Sigla na placa Q17, 18, 19, 20, 21, 22, 23, 24 (posio invertida do silk screen) U13, 14, 15, 16, 17, 18, 19, 20 R53 56, 59, 62, 65, 68, 71, 74 R54, 57, 60, 63, 66, 69, 72, 75

Obs.: Para sada transistor montar o transistor invertido com relao ao silk screen (Q17, 18, 19, 20, 21, 22, 23, 24).

4. DESCRIO DOS PINOS DO PIC


Pino 19 Pino 20 Pino 21 Pino 22 Pino 27 Pino 28 Pino 29 Pino 30 Pino 03 Pino 04 Pino 05 Pino 06 Pino 02 Pino 15 Pino 17 Pino 16 Pino 07 Pino 08 Pino 09 Pino 10 Pino 24 RD0 RD1 RD2 RD3 RD4 RD5 RD6 RD7 RA1 RA2 RA4 RA3 RA0 RC0 RC2 RC1 RA5 RE0 RE1 RE2 RC5 Entrada digital 1 Entrada digital 2 Entrada digital 3 Entrada digital 4 Entrada digital 5 Entrada digital 6 Entrada digital 7 Entrada digital 8 Entrada digital 9 Entrada digital 10 Entrada digital 11 Entrada digital 12 ou Controle RS485 Entrada analgica AN0 Sada 1 Sada 2 Sada 3 Sada 4 Sada 5 Sada 6 Sada 7 Sada 8 Manual Clp Pic40-v3 www.vwsolucoes.com Copyright 2011 VW Solues

Pino 18 Pino 23 Pino 25 Pino 26 Pino 11 Pino 32 Pino 12 Pino 31 Pino 13 Pino 14 Pino 33 Pino 34 Pino 35 Pino 36 Pino 37 Pino 38 Pino 39 Pino 40 Pino 1

RC3 / SCL RC4 / SDA RC6 / TX RC7 / RX VDD VDD VSS VSS OSC1 OSC2 RB0 RB1 RB2 RB3 RB4 RB5 RB6 RB7 MCLR

Barramento I2C Barramento I2C RS232 ou RS485 TX Transmite RS232 ou RS485 RX Recebe Alimentao +5v Alimentao +5v Alimentao 0v Alimentao 0v Interligao do cristal Interligao do cristal Conector LCD Conector LCD Conector LCD Conector LCD Conector LCD Conector LCD Conector LCD / usado na gravao do PIC Conector LCD / usado na gravao do PIC Usado na gravao do PIC / e tctil RESET

5. CONFIGURAO DO PIC
Para o correto funcionamento do ClpPic40-v3, independente de qual linguagem em que o mesmo for programado, algumas configuraes devem estar sempre presente como mostraremos a seguir. Mostraremos 2 exemplos de configurao de programadores (Um em assembly e outro em C).

CONFIGURAES DO PIC EM ASSEMBLY (exemplo dado atravs do MPLAB).


; ------------------------------------------------------------------------; Projeto: Configurao padro da placa ClpPic40-v3. ; Microcontrolador: PIC16F877A ; Data: 01/08/2010 ; Autor: Wagner Santos Maurcio. ; Obs.: ; Preciso: ; Verso: 3.0 ; ------------------------------------------------------------------------#include<P16F877A.INC> __CONFIG _CP_OFF & _CPD_OFF & _DEBUG_OFF & _LVP_OFF & _BODEN_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC ; _CP_OFF ; _WRT_OFF ; _DEBUG_OFF ; _CPD_OFF ; _LVP_OFF ; _WDT_OFF ; _BODEN_OFF ; _PWRTE_ON ; _XT_OSC Memria de programa desprotegida contra leitura; Sem permisso para escrever na memria de programa durante execuo do programa; Debug desativado; Memria Eeprom protegida contra leitura; Programao em baixa tenso desabilitada; WDT desativado; Brown - out desativado; Power-on reset ativado; Oscilador a cristal (4MHz)

ERRORLEVEL -302 #DEFINE #DEFINE ;#DEFINE ;#DEFINE ;#DEFINE #DEFINE #DEFINE #DEFINE #DEFINE #DEFINE #DEFINE #DEFINE #DEFINE #DEFINE #DEFINE #DEFINE #DEFINE #DEFINE #DEFINE #DEFINE #DEFINE #DEFINE #DEFINE #DEFINE #DEFINE #DEFINE #DEFINE BANK1 BANK0 DISP_LCD RS ENABLE E1 E2 E3 E4 E5 E6 E7 E8 E9 E1 E11 E12 LIGA_SAIDA1 DESLIGA_SAIDA1 LIGA_SAIDA2 DESLIGA_SAIDA2 LIGA_SAIDA3 DESLIGA_SAIDA3 LIGA_SAIDA4 DESLIGA_SAIDA4 LIGA_SAIDA5 DESLIGA_SAIDA5 BSF STATUS,RP0 BCF STATUS,RP0 PORTB PORTB,4 PORTB,5 PORTD,0 PORTD,1 PORTD,2 PORTD,3 PORTD,4 PORTD,5 PORTD,6 PORTD,7 PORTA,1 PORTA,2 PORTA,4 PORTA,3 BSF PORTC,0 BCF PORTC,0 BSF PORTC,2 BCF PORTC,2 BSF PORTC,1 BCF PORTC,1 BSF PORTA,5 BCF PORTA,5 BSF PORTE,0 BCF PORTE,0 ;VAI PARA O BANCO 1 ;VAI PARA O BANCO 0 ;UTILIZADO PARA LCD ;UTILIZADO PARA LCD ;UTILIZADO PARA LCD ;ENTRADA E1 ;ENTRADA E2 ;ENTRADA E3 ;ENTRADA E4 ;ENTRADA E5 ;ENTRADA E6 ;ENTRADA E7 ;ENTRADA E8 ;ENTRADA E9 ;ENTRADA E10 ;ENTRADA E11 ;ENTRADA E12 ;SAIDA 1 ;SAIDA 1 ;SAIDA 2 ;SAIDA 2 ;SAIDA 3 ;SAIDA 3 ;SAIDA 4 ;SAIDA 4 ;SAIDA 5 ;SAIDA 5

Manual Clp Pic40-v3 www.vwsolucoes.com Copyright 2011 VW Solues

#DEFINE #DEFINE #DEFINE #DEFINE #DEFINE #DEFINE

LIGA_SAIDA6 DESLIGA_SAIDA6 LIGA_SAIDA7 DESLIGA_SAIDA7 LIGA_SAIDA8 DESLIGA_SAIDA8 CBLOCK 0X20

BSF PORTE,1 BCF PORTE,1 BSF PORTE,2 BCF PORTE,2 BSF PORTC,5 BCF PORTC,5

;SAIDA 6 ;SAIDA 6 ;SAIDA 7 ;SAIDA 7 ;SAIDA 8 ;SAIDA 8

ENDC ; ..................................................................................... ORG 0x00 GOTO CONFIGURACAO ; ..................................................................................... ORG 0X04 RETFIE ;..................................................................................... CONFIGURACAO ; BTFSC STATUS,4 ; GOTO $-1 ; BSF STATUS,4 BANK1 "1" ENTRADA E "0" SAIDA MOVLW B'11011111' ; RA0 pode ser entrada analgica ou entrada/sada TTL, se no for utilizar deixe como entrada (TTL)="1" MOVWF TRISA ; RA1, RA2 e RA3 s pode ser configurado como entrada - "1" ; RA4 pode ser entrada (E12) ou saida TTL (RS485) - no momento est configurado como entrada (E12) ; RA5 deve ser configurado como sada - "0" ; RA6 e RA7 deixe sempre como entrada = "1" MOVLW MOVWF MOVLW MOVWF B'11111111' TRISB B'11011000' TRISC ; Se no for utilizar o conector LCD deixe sempre configurado como entrada todos os pinos = "1".

; RC0, RC1, RC2 e RC5 devem ser configurados sempre como sada = "0" ; RC3 e RC4 utilizado para comunicao I2C (Memria EEprom e/ou RTC), deixe como entrada = "1" ; RC6 e RC7 so utilizados para RS232 ou RS485, deixe como entrada = 1. ;Todo PortD deve ser configurado como entrada = 1. ; ; RE0,RE1 e RE2 deve ser configurado como saida = "0" ; ou seja todo o port deve ficar como est ;Bit 7 RBPU: PORTB Pull-up Enable bit ; 1 = PORTB pull-ups are disabled ; 0 = PORTB pull-ups are enabled by individual port latch values ;Bit 6 INTEDG: Interrupt Edge Select bit ; 1 = Interrupt on rising edge of RB0/INT pin ; 0 = Interrupt on falling edge of RB0/INT pin ;Bit 5 T0CS: TMR0 Clock Source Select bit ; 1 = Transition on RA4/T0CKI pin ; 0 = Internal instruction cycle clock (CLKO) ;Bit 4 T0SE: TMR0 Source Edge Select bit ; 1 = Increment on high-to-low transition on RA4/T0CKI pin ; 0 = Increment on low-to-high transition on RA4/T0CKI pin ;Bit 3 PSA: Prescaler Assignment bit ; 1 = Prescaler is assigned to the WDT ; 0 = Prescaler is assigned to the Timer0 module ;Bit 2-0 PS2:PS0: Prescaler Rate Select bits ;Legend: ;VALOR TMR0 WDT ;000 1:2 1:1 ;001 1:4 1:2 ;010 1:8 1:4 ;011 1:16 1:8 ;100 1:32 1:16 ;101 1:64 1:32 ;110 1:128 1:64 ;111 1:256 1:128 ;Bit 7 GIE: Global Interrupt Enable bit ; 1 = Enables all unmasked interrupts ; 0 = Disables all interrupts ;Bit 6 PEIE: Peripheral Interrupt Enable bit ; 1 = Enables all unmasked peripheral interrupts ; 0 = Disables all peripheral interrupts ;Bit 5 TMR0IE: TMR0 Overflow Interrupt Enable bit ; 1 = Enables the TMR0 interrupt ; 0 = Disables the TMR0 interrupt ;Bit 4 INTE: RB0/INT External Interrupt Enable bit ; 1 = Enables the RB0/INT external interrupt ; 0 = Disables the RB0/INT external interrupt ;Bit 3 RBIE: RB Port Change Interrupt Enable bit ; 1 = Enables the RB port change interrupt ; 0 = Disables the RB port change interrupt ;Bit 2 TMR0IF: TMR0 Overflow Interrupt Flag bit ; 1 = TMR0 register has overflowed (must be cleared in software) ; 0 = TMR0 register did not overflow ;Bit 1 INTF: RB0/INT External Interrupt Flag bit ; 1 = The RB0/INT external interrupt occurred (must be cleared in software) ; 0 = The RB0/INT external interrupt did not occur ;Bit 0 RBIF: RB Port Change Interrupt Flag bit ; 1 = At least one of the RB7:RB4 pins changed state; a mismatch condition will continue to set ; the bit. Reading PORTB will end the mismatch condition and allow the bit to be cleared ; (must be cleared in software). ; 0 = None of the RB7:RB4 pins have changed state ;Bit 7 PSPIE: Parallel Slave Port Read/Write Interrupt Enable bit(1) ; 1 = Enables the PSP read/write interrupt ; 0 = Disables the PSP read/write interrupt ; Note 1: PSPIE is reserved on PIC16F873A/876A devices; always maintain this bit clear. ;Bit 6 ADIE: A/D Converter Interrupt Enable bit ; 1 = Enables the A/D converter interrupt ; 0 = Disables the A/D converter interrupt

MOVLW MOVWF MOVLW MOVWF MOVLW MOVWF

B'11111111' TRISD B'00000000' TRISE B'00001111' OPTION_REG

MOVLW MOVWF

B'11000000' INTCON

MOVLW MOVWF

B'00000001' PIE1

Manual Clp Pic40-v3 www.vwsolucoes.com Copyright 2011 VW Solues

;Bit 5 RCIE: USART Receive Interrupt Enable bit ; 1 = Enables the USART receive interrupt ; 0 = Disables the USART receive interrupt ;Bit 4 TXIE: USART Transmit Interrupt Enable bit ; 1 = Enables the USART transmit interrupt ; 0 = Disables the USART transmit interrupt ;Bit 3 SSPIE: Synchronous Serial Port Interrupt Enable bit ; 1 = Enables the SSP interrupt ; 0 = Disables the SSP interrupt ;Bit 2 CCP1IE: CCP1 Interrupt Enable bit ; 1 = Enables the CCP1 interrupt ; 0 = Disables the CCP1 interrupt ;Bit 1 TMR2IE: TMR2 to PR2 Match Interrupt Enable bit ; 1 = Enables the TMR2 to PR2 match interrupt ; 0 = Disables the TMR2 to PR2 match interrupt ;Bit 0 TMR1IE: TMR1 Overflow Interrupt Enable bit ; 1 = Enables the TMR1 overflow interrupt ; 0 = Disables the TMR1 overflow interrupt MOVLW MOVWF B'00000000' PIE2 ;Bit 7 Unimplemented: Read as 0 ;Bit 6 CMIE: Comparator Interrupt Enable bit ; 1 = Enables the comparator interrupt ; 0 = Disable the comparator interrupt ;Bit 5 Unimplemented: Read as 0 ;Bit 4 EEIE: EEPROM Write Operation Interrupt Enable bit ; 1 = Enable EEPROM write interrupt ; 0 = Disable EEPROM write interrupt ;Bit 3 BCLIE: Bus Collision Interrupt Enable bit ; 1 = Enable bus collision interrupt ; 0 = Disable bus collision interrupt ;Bit 2-1 Unimplemented: Read as 0 ;Bit 0 CCP2IE: CCP2 Interrupt Enable bit ; 1 = Enables the CCP2 interrupt ; 0 = Disables the CCP2 interrupt

MOVLW MOVWF MOVLW MOVWF

B'00000101' ADCON0 B'00001110' ADCON1

;Bit 0,LIGA E DESLIGA A ENTRADA ANALGICA - BIT 2, STATUS ANALGICO

;B'00001110' - An0 somente ser analgico e restante digital ;CONVERSOR A-D (RA0 LIGADO)

BANK0 MOVLW MOVWF

B'00000000' PIR1

;Bit 7 PSPIF: Parallel Slave Port Read/Write Interrupt Flag bit(1) ; 1 = A read or a write operation has taken place (must be cleared in software) ; 0 = No read or write has occurred ; Note 1: PSPIF is reserved on PIC16F873A/876A devices; always maintain this bit clear. ;Bit 6 ADIF: A/D Converter Interrupt Flag bit ; 1 = An A/D conversion completed ; 0 = The A/D conversion is not complete ;Bit 5 RCIF: USART Receive Interrupt Flag bit ; 1 = The USART receive buffer is full ; 0 = The USART receive buffer is empty ;Bit 4 TXIF: USART Transmit Interrupt Flag bit ; 1 = The USART transmit buffer is empty ; 0 = The USART transmit buffer is full ;Bit 3 SSPIF: Synchronous Serial Port (SSP) Interrupt Flag bit ; 1 = The SSP interrupt condition has occurred and must be cleared in software before returning ; from the Interrupt Service Routine. The conditions that will set this bit are: ; SPI A transmission/reception has taken place. ; I2C Slave A transmission/reception has taken place. ; I2C Master ; - A transmission/reception has taken place. ; - The initiated Start condition was completed by the SSP module. ; - The initiated Stop condition was completed by the SSP module. ; - The initiated Restart condition was completed by the SSP module. ; - The initiated Acknowledge condition was completed by the SSP module. ; - A Start condition occurred while the SSP module was Idle (multi-master system). ; - A Stop condition occurred while the SSP module was Idle (multi-master system). ; 0 = No SSP interrupt condition has occurred ;Bit 2 CCP1IF: CCP1 Interrupt Flag bit ; Capture mode: ; 1 = A TMR1 register capture occurred (must be cleared in software) ; 0 = No TMR1 register capture occurred ;Compare mode: ; 1 = A TMR1 register compare match occurred (must be cleared in software) ; 0 = No TMR1 register compare match occurred ; PWM mode: ; Unused in this mode. ;Bit 1 TMR2IF: TMR2 to PR2 Match Interrupt Flag bit ; 1 = TMR2 to PR2 match occurred (must be cleared in software) ; 0 = No TMR2 to PR2 match occurred ;Bit 0 TMR1IF: TMR1 Overflow Interrupt Flag bit ; 1 = TMR1 register overflowed (must be cleared in software) ; 0 = TMR1 register did not overflow ;Bit 7 Unimplemented: Read as 0 ;Bit 6 CMIF: Comparator Interrupt Flag bit ; 1 = The comparator input has changed (must be cleared in software) ; 0 = The comparator input has not changed ;Bit 5 Unimplemented: Read as 0 ;Bit 4 EEIF: EEPROM Write Operation Interrupt Flag bit ; 1 = The write operation completed (must be cleared in software) ; 0 = The write operation is not complete or has not been started ;Bit 3 BCLIF: Bus Collision Interrupt Flag bit ; 1 = A bus collision has occurred in the SSP when configured for I2C Master mode ; 0 = No bus collision has occurred ;Bit 2-1 Unimplemented: Read as 0 ;Bit 0 CCP2IF: CCP2 Interrupt Flag bit ; Capture mode: ; 1 = A TMR1 register capture occurred (must be cleared in software) ; 0 = No TMR1 register capture occurred

MOVLW MOVWF

B'00000000' PIR2

Manual Clp Pic40-v3 www.vwsolucoes.com Copyright 2011 VW Solues

; ; ; ; ; MOVLW MOVWF B'00110000' T1CON

Compare mode: 1 = A TMR1 register compare match occurred (must be cleared in software) 0 = No TMR1 register compare match occurred PWM mode: Unused.

;Bit 7-6 Unimplemented: Read as 0 ;Bit 5-4 T1CKPS1:T1CKPS0: Timer1 Input Clock Prescale Select bits ; 11 = 1:8 prescale value ; 10 = 1:4 prescale value ; 01 = 1:2 prescale value ; 00 = 1:1 prescale value ;Bit 3 T1OSCEN: Timer1 Oscillator Enable Control bit ; 1 = Oscillator is enabled ; 0 = Oscillator is shut-off (the oscillator inverter is turned off to eliminate power drain) ;Bit 2 T1SYNC: Timer1 External Clock Input Synchronization Control bit ; When TMR1CS = 1: ; 1 = Do not synchronize external clock input ; 0 = Synchronize external clock input ; When TMR1CS = 0: ; This bit is ignored. Timer1 uses the internal clock when TMR1CS = 0. ;Bit 1 TMR1CS: Timer1 Clock Source Select bit ; 1 = External clock from pin RC0/T1OSO/T1CKI (on the rising edge) ; 0 = Internal clock (FOSC/4) ;Bit 0 TMR1ON: Timer1 On bit ; 1 = Enables Timer1 ; 0 = Stops Timer1

CLRF PORTA CLRF PORTB CLRF PORTC CLRF PORTD CLRF PORTE CLRWDT ;..................................................................................... INICIO ;Inicia a programao.

END

;finaliza a programao.

CONFIGURAO DO PIC EM C (exemplo dado atravs do MikroC). Na janela abaixo deixar selecionado os seguintes opes:
; _CP_OFF ; _DEBUG_OFF ; _WRT_OFF ; _CPD_OFF ; _LVP_OFF ; _BODEN_OFF ; _PWRTE_ON ; _WDT_OFF ; _XT_OSC Memria de programa desprotegida contra leitura; Debug desativado; Sem permisso p/ escrever na memria de programa durante execuo do programa; Memria Eeprom protegida contra leitura; Programao em baixa tenso desabilitada; Brown - out desativado; Power-on reset ativado; WDT desativado; Oscilador a cristal (4MHz)

Manual Clp Pic40-v3 www.vwsolucoes.com Copyright 2011 VW Solues

Corpo do programa:
#define E1 portd.f0 #define E2 portd.f1 #define E3 portd.f2 #define E4 portd.f3 #define E5 portd.f4 #define E6 portd.f5 #define E7 portd.f6 #define E8 portd.f7 #define E9 porta.f1 #define E10 porta.f2 #define E11 porta.f3 #define E12 porta.f4 #define S1 portc.f0 #define S2 portc.f2 #define S3 portc.f1 #define S4 porta.f5 #define S5 porte.f0 #define S6 porte.f1 #define S7 porte.f2 #define S8 portc.f5 //------------------------------------------//inicio do programa //------------------------------------------void main(){ trisa=0b11011111; trisb=0b00000000; trisc=0b00011000; trisd=0b11111111; trise=0b000; adcon1=0b00001110; do{ }while(1); }

Obs.: As outras configuraes so opcionais e dependem exclusivamente das necessidades do seu projeto.

Manual Clp Pic40-v3 www.vwsolucoes.com Copyright 2011 VW Solues

6. DETALHES IMPORTANTES NA PLACA

1 - Entradas digitais (E1 a E12) Todas as entradas so mapeadas por LEDS. So entradas para contato seco e todos os sensores digitais como, por exemplo, botes e chaves fim de curso. Tambm possvel a ligao de sensores de luz (LDRs) diretamente, Sensores indutivos, capacitivos, fotoeltricos, etc. A tenso de entrada pode ficar entre 7 e 30VCC para reconhecer estado alto na entrada.

Manual Clp Pic40-v3 www.vwsolucoes.com Copyright 2011 VW Solues

2 - Sadas que pode ser a rel, transistor ou triac. 2.1 - Sadas a Rels (K1 a K8) Todas as sadas so mapeadas por LEDS. Atravs das sadas a Rels, possvel ligar/desligar dispositivos conectados rede eltrica (corrente alternada) 110 ou 220v, ou mesmo aqueles alimentados com corrente contnua (pilhas ou baterias). Para ambas as fontes de energia, o consumo de corrente dos dispositivos no pode ultrapassar os 7,5A (em 110v) e, 5A (em 220v). Veja na ilustrao abaixo, um esquema de como instalar os dispositivos na placa Clp Pic40-v3. Nota: NA Interruptor Normalmente Aberto; C Comum NF Interruptor Normalmente Fechado.

2.2 - Sadas a Transistor (Q9 a Q16) Todas as sadas so mapeadas por LEDS. Atravs das sadas a transistor, possvel ligar e desligar dispositivos com corrente contnua. Cada sada possui sua entrada de alimentao independente para alimentar sua carga. Desta forma possvel utilizar fontes diferentes para diferentes cargas, inclusive com tenses diferentes. Em casos onde a carga faa variar muito a tenso da fonte, aconselhamos utilizar uma fonte de alimentao separada para a placa.

Nota: NA Sinal de sada igual a VCC. C Tenso de alimentao da Sada. NF GND da sada.

Manual Clp Pic40-v3 www.vwsolucoes.com Copyright 2011 VW Solues

2.3 - Sadas a Triac (Q17 a Q24) Todas as sadas so mapeadas por LEDS. Atravs das sadas a triac, possvel ligar e desligar dispositivos em corrente alternada (110V ou 220V). Nota: NA Retorno da carga C Entrada da rede (110v ou 220v) NF Na sada a triac no utilizado

3 - Microcontrolador PIC16F877A Controla todas as funes da placa Clp Pic40-v3, como as sadas (Rels, Transistor ou Triac), comunicao Serial (RS232 ou RS485), barramento I2C, entradas digitais (E1 a E12), entrada analgica, etc. 4 - Jumper de seleo RS232/RS485 Para selecionar qual das portas de comunicao ser utilizada, RS232 ou RS485, pois no pode ser utilizada as duas ao mesmo tempo, tem que ser escolhida atravs deste jumper qual meio ir utilizar. 5 - Jumper de seleo E12/RS485 Se for utilizar a comunicao RS485, a entrada E12 no poder ser usada com entrada digital, pois ter que ser selecionada atravs deste jumper na posio RS485 para servir como pino de controle da Rede 485. 6 - Jumper de seleo da configurao da entrada analgica Selecionar apenas uma delas: 1 - Entrada analgica de 0 a 10v - Jumper J1 fechado e Jumper 0-10v fechado. 2 - Entrada analgica de 0 a 5v - Jumper J2 fechado e Jumper 0-5v fechado. 3 - Entrada analgica de 0 a 20mA - Jumper J3 fechado e Jumper 0-20mA fechado. 7 - Entrada analgica A entrada analgica do microcontrolador utiliza um A/D de 10bits. A entrada de sinal pode ser configurada de 03 formas distintas conforme mostra no item anterior sobre a seleo do tipo de entrada utilizada. 8 - Trimpot P1 Este trimpot utilizado para ajuste fino do sinal aplicado a entrada analgica do microcontrolador, mas somente quando selecionado a configurao de 0-10v (jumper J1 fechado e Jumper 0-10v fechado). Para efeito de garantir que o sinal no pino An0 (pino 02) do microcontrolador seja 5v quando voc estiver com seu sinal no mximo, utilize este trimpot para ajustar para menos se por acaso o seu sinal esteja passando de 5v no pino do microcontrolador e vice-versa. O importante que para efeito de preciso de calculo, este trimpot utilizado para ajustar perfeitamente os 5v no pino 02 (An0) do microcontrolador. 9 - Conector ICSP in circuit serial programmer Pinagem disponvel para gravao do microcontrolador. Estes pinos disponveis deixam o cliente livre para utilizao de seu prprio gravador se j possuir. Quando for fazer a gravao do programa na placa, o conector LCD deve estar livre, pois ele pode prejudicar a gravao. Manual Clp Pic40-v3 www.vwsolucoes.com Copyright 2011 VW Solues

10 - Conector LCD Neste conector fica disponibilizado todo PortB do microcontrolador. Normalmente utilizado para instalao de um LCD (16x2 ou 20x4) ou aumentar a quantidade de entradas e sadas atravs da placa de expanso de I/Os. Mas o projetista fica livre para utilizar estes pinos de acordo com sua necessidade. 11 - Porta Serial RS232 Porta serial de uso genrico (TX, RX e GND), usada para se comunicar com PC, outra placa Clp Pic ou qualquer perifrico que utilize este meio de comunicao. 12 - Porta Serial RS485 A Porta RS485 nos d a possibilidade de fazer uma rede e interligar at 32 dispositivos. Especifica tambm a distncia mxima entre o primeiro e o ltimo dispositivo da rede (1200 Metros). O pino do PIC para fazer o Controle o RA3 do portA. 13 - Alimentao do Clp Pic40-v3 Borne de alimentao da placa Clp Pic40-v3 que pode ser usada 12V ou 24V x 1A. Obs.: Lembrando que os reles de sada recebem a mesma tenso de alimentao da placa em sua bobina, quando so acionados. Se forem instalados equipamentos nas entradas e sadas do Clp Pic40-v3 que consuma energia eltrica, esse consumo deve ser somado para o correto dimensionamento da fonte de corrente contnua. 14 - Real Time Clock/Calendrio (RTC DS1307) um CI dedicado para fazer um relgio/calendrio fornecendo segundos, minutos, horas, dias, dia da semana, ms e ano. As datas dos finais dos meses so automaticamente ajustadas, incluindo correes para o ano bissexto. 15 - Bateria BT1 - CR2032 Bateria de Lithium para manter o Relgio/Calendrio sempre alimentado, mesmo que a placa Clp Pic40-v3 seja desligada. 16 - Memria Flash - Exemplo: 24C256 Essa memria utiliza o barramento I2C para se comunicar com o microcontrolador. A capacidade de armazenamento da memria a ser utilizada deve ser escolhida pelo usurio de acordo com a necessidade de seu projeto. 17 - Boto de reset do sistema

7. TRANSFERNCIA DO ARQUIVO .HEX PARA O CLP


A placa possui o conector ICSP (in-circuit serial programmer), desta forma, pode ser utilizado qualquer tipo de gravador que possua este tipo de sada. Os pinos disponibilizados so PGC, PGD, GND e VPP. A VW Solues possui um Cabo Gravador USB muito simples de utilizar. No site www.vwsolucoes.com possui um vdeo demonstrando como utilizar esse gravador.

8. GARANTIA
A placa Clp Pic 40 possui garantia de 1 ano contra defeitos de fabricao contados a partir da data do envio. Obs.: danos causados por mau uso, instalao incorreta, raios, ligaes em voltagens erradas, perda do programa do PIC, queda da placa, inverso da polaridade de alimentao, desgaste natural de peas, entre outros, no esto cobertos pela garantia. Todas as placas so testadas varias vezes antes de serem enviadas para o cliente. O custo do envio para a VW Solues e sua retirada aps conserto so de responsabilidade do cliente.

Manual Clp Pic40-v3 www.vwsolucoes.com Copyright 2011 VW Solues