Escolar Documentos
Profissional Documentos
Cultura Documentos
APRESENTAÇÃO
Agradeço à Deus
pela oportunidade de passar esses
conhecimentos, que com muito esforço
venho retribuir em agradecimento da vida.
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 2
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
2) CLP dedicado.
6) Exemplo de programas.
OBS.
Pré – requisitos:
1a . PRÁTICA:
Conhecer o equipamento:
~ ~ + C S1 S2 S3 S4 S5 S6
E1 E2 E3 E4 E5 E6 E7 E8 E9 E10
ELEMENTOS
1) FAMÍLIAS LÓGICAS:
SIM ou VERDADEIRO = 1
NÃO ou FALSO = 0
Tabela Lê-se
a) OU ou OR A+B=C A ou B = C
SÍMBOLO 0+0=0
A C 0+1=1
B 1+0=1
1+1=1
Tabela Lê-se
b) E ou AND A٠B=C AeB=C
SÍMBOLO 0٠0=0
A C 0٠1=0
B 1٠0=0
1٠1=1
Tabela Lê-se
c) NÃO ou (NOR) A + B = C A ou B invertido = C
SÍMBOLO 0+0=1
A C 0+1=0
B 1+0=0
1+1=0
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 8
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
Tabela Lê-se
d) NÃO E ou (NAND) A ٠ B = C A e B invertido = C
SÍMBOLO 0٠0=1
A C 0٠1=1
B 1٠0=1
1٠1=0
Tabela Lê-se
e) OU EXCLUSIVA A + B = C A ou exclusiva B = C
SÍMBOLO 0 0=0
A C 0 1=1
B 1 0=1
1 1=0
Tabela Lê-se
f) E COINCIDÊNCIA A B=C A E Coincidência B = C
SÍMBOLO 0 0=1
A C 0 1=0
B 1 0=0
1 1=1
3) COMBINAÇÕES LÓGICAS:
UNIDADE DE LÓGICA
E ARITMÉTICA
2a. PRÁTICA:
Faça as ligações no CLP conforme indicado:
~ ~ + C S1 S2 S3 S4 S5 S6
E1 E2 E3 E4 E5 E6 E7 E8 E9 E10
LEGENDA
INTERRUPTOR INTERRUPTOR
FECHADO ABERTO
TABELA VERDADE
E3 E4 E5 S1 S2
0 0 0 1 0
0 0 1 1 0
0 1 0 1 0
0 1 1 1 0
1 0 0 1 0
1 0 1 1 0
1 1 0 1 0
1 1 1 0 1
E3
E4 S1
E5
E3
E4 S2
E5
____________________________________________
OUTRAS FUNÇÕES :
Divisor somador, unidade de multiplexação e divisão,
unidade de teste e proteção, unidade de segmentação,
unidade de paginação, decodificador, fila de instrução,
controle de barramento, porto, modo virtual, nível de
prioridade.
TIPOS DE CLP´S:
Temos basicamente 03 tipos principias:
Os CNC´s ;
Os CLP´s industriais ;
Os CLP´s compactos.
1) CNC (Controlador de comando numérico)
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 17
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
3a. PRÁTICA:
Ligar cargas à saída do CLP:
~ ~ + C S1 S2 S3 S4 S5 S6
E1 E2 E3 E4 E5 E6 E7 E8 E9 E10
Objetivo:
Utilização do CLP na ligação de cargas.
Observar o funcionamento das lâmpadas, acendimento,
apagamento, e ordem como ocorre.
LEGENDA
CLP CONTROLE
- Entrada AC: 24 Vca/ 110 Vca/ 220 Vca;
- 06 saídas a relé ou 06 saídas a transistor;
- 08 entradas digitais;
- 02 entradas rápidas;
- 01 entrada analógica resistiva
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 22
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
- 01 saída RS 232
- Endereçamento fixo: 02 portos: (entrada ou saída
do processador interno do CLP)
Endereçamento Indicado:
Saída do CLP:
S1 – B0 As informações
S2 – B1 do porto B0 a B5
S3 – B2 saem para as
S4 – B3 saídas S1 a S6
S5 – B4 respectivamente,
S6 – B5 quando o porto
D6 = 1.
Entrada do CLP:
D4 entrada AD resistiva
E1 – D2 E2 – D3
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR 23
PARA MICROPROCESSADOR E CLP (JORGE AUGUSTO)
E3 – B0 Os portos D2 e D3
E4 – B1 são independentes
E5 – B2 e são
E6 – B3 INTERRUPÇÕES.
E7 – B4
E8 – B5 As informações das
E9 – B6 entradas do porto
E10 – B7 B0 a B7 são lidas
quando o porto D5
= 1.
2) Função OU
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 24
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
símbolo
A Q
B >= 1 “
entrada saída
TABELA DIAGRAMA
A B Q
0 0 0 A B
0 1 1
1 0 1
1 1 1
Q
3) Inversor
símbolo
A Q
& “
entrada saída
TABELA DIAGRAMA
A Q
0 1 A
1 0
Q
4) Função NÃO E
Símbolo
A Q
B & “
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 25
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
entrada saída
TABELA DIAGRAMA
A B Q
0 0 1 A
0 1 0
1 0 0 B
1 1 0
Q
5) Função NÃO OU
símbolo
A Q
B >= 1 “
entrada saída
TABELA DIAGRAMA
A B Q
0 0 1 A B
0 1 1
1 0 1
1 1 0
Q
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 26
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
6) Função OU EXCLUSIVO
símbolo
A
B &
>= 1 Q
A &
B
entrada saída
TABELA DIAGRAMA
A B Q
0 0 0 A
0 1 1
1 0 1 B
1 1 0
Q
7) Contador
símbolo
E Q
RST C
entrada saída
E – entrada de contagem;
RST – entrada para zerar contagem;
C – número de vezes para contagem;
S – quando a contagem = C, a saída é 1.
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 27
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
8) Temporizador:
símbolo
E Q
T
π ╨
▀
entrada saída
E – Habilitador do contador
T – escolha do tempo
4a. PRÁTICA:
EXERCÍCIOS RESOLVIDOS
PORTÃO
M1 M2
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 28
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
A M1 M2
0 0 0 Espera tempo (portão abrindo)
0 0 1 Portão aberto
0 1 0 Portão fechado
0 1 1 Defeito
1 0 1 Fechar portão
1 1 0 Abrir portão
1 1 1 defeito
DIAGRAMA
A R1 A R2 M1
R1 R2 A M2
M2 M1
T T
M R1 R2 T
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 29
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
LEGENDA:
M – MOTOR
A – BOTÃO PARA ABRIR E FECHAR PORTÃO
M1 – MICRO QUE INDICA PORTÃO FECHADO
M2 – MICRO QUE INDICA PORTÃO ABERTO
R1 – RELÉ AUXILIAR ESQUERDO
R2 – RELÉ AUXILIAR DIREITO
T – TEMPORIZADOR
- LÂMPADA
A
R1 >= 1
M1
M2 &
>= 1 “ SAÍDA
M1 & LÂMPADA
M2
220
Vca
M
~ ~ + C S1 S2 S3 S4 S5 S6
E1 E2 E3 E4 E5 E6 E7 E8 E9 E10
A M1 M2
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 31
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
SIMBOLOGIA
4) Associação OR
A
B C
5) Associação AND
A B C
6) Associação AND + OR
A B C E
D
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 32
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
A B C F
D E
A B C
9) Associação NÃO OU
A
B C
10) Temporizador
tempo número
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 33
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
tipo
11) Contador
C
RST
função – equação
13) Comparadores
Símbolos
V1 ! = F “ igual a “
Símbolo > F “ maior “
V2 Q < F “ menor ”
>= “ maior ou igual “
<= “ menor ou igual “
>< “ diferente “
14) Contadores especiais
CU – Entrada de contagem
CU
crescente.
CD
CD – Entrada de contagem
S Q
decrescente.
R
R – Reset.
S – Trava.
15) Temporizadores Especiais
Símbolos
Símbolo SP – pulso
SE – prolongamento sinal
Q SD – retardo na ligação
R SS – retardo com retenção
SF – retardo no desligamento
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 34
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
BINÁRIO 20 21 22 23 24 25 26 27 28 29
E1 E2 E3 E4 E5 E6 E7 E8 E9 E10
DECIMAL 1 2 4 8 16 32 64 128 256 512
5a . PRÁTICA:
EXERCÍCIO
Controle de duas esteiras alimentadoras de uma linha de
produção.
Sensor 3 Sensor 1
ESTEIRA
PRINCIPAL SAÍDA
Motor 2 Motor 1
Sensor 2
ESTEIRA
ALIMENTADORA
PAINEL DE COMANDO
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 35
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
LEGENDA:
Térmico Térmico
M1 M2 SINALEIRO
Alarme
BOTOEIRA
C/ LÂMPADA
ALARME
Liga Desl. Rearme
SONORO
Alarme
Condições:
Entradas:
Sensor 1 – E1
Sensor 2 – E2
Sensor 3 – E3
Térmico M1 – E4
Térmico M2 – E5
Botão Liga – E6
Botão Desliga – E7
Botão Rearme Alarme – E8
Saídas:
Contactor M1 + Lâmpada liga – S1
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 36
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
Contactor M2 – S2
Lâmpada térmico M1 – S3
Lâmpada térmico M2 – S4
Alarme acústico – S5
Lâmpada alarme – S6
Obs.
- Não terá lâmpada na botoeira desliga.
- Os sinaleiros dos térmicos ficarão ligados quando estiverem
Ok.
PROGRAMA LADER
E4 E5 AUX.1
E6 AUX.1 E7 AUX.2
AUX.2
Temp1 15seg
AUX.1 S6
Temp2 1seg
S6 T2 E8 S5
S5
E1 AUX.2 S1
E2 E3 AUX.3
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 37
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
AUX.3 T1 S2
E4 S3
E5 S4
220
Vca
M1 M2
~ ~ + C S1 S2 S3 S4 S5 S6
E1 E2 E3 E4 E5 E6 E7 E8 E9 E10
E1 – sensor 1 E5 – térmico M2
E2 – sensor 2 E6 – liga
E3 – sensor 3 E7 – desliga
E4 – térmico M1 E8 – rearme alarme
6º DIA – LINGUAGEM ESTRUTURADA – INÍCIO
6a. PRÁTICA:
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 38
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
JANELA DO PROGRAMA.
BASCOM - ٱ x
FILE EDIT PROGRAM TOOLS OPTIONS WINDOW HELP
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
PROGRAMA
FILE
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 40
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
2 ou teclando CTRL + O,
FILE CLOSE: Fecha o programa. Se ainda não foi salvo,
perguntará qual nome e onde guarda-lo.
6 : visualiza impressão.
EDIT
PROGRAM
JANELA DO PROGRAMA.
PROGRAMA
LINHA
DE
PROGRAMA
a) THE TOOLBAR:
JANELA DO PROGRAMA.
Escolher
Ok Cancel
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 46
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
Debug file
HEX file
Report file
Ok Cancel
Baudrate 9600 ▼
Frequency 10.000.000 ▼
Error 1%
Ok Cancel
12C SPI
PORT B.0 ▼
SCL port PORT B.0 ▼ Clock
MOSI PORT B.0 ▼
SDA port PORT D.0 ▼
MISO PORT B.0 ▼
1 WIRE SS PORT B.0 ▼
PORT B.0 ▼
1 Wire □ Use Hardxare SPI
Ok Cancel
LCD type 16 * 1 a ▼
Enable PORT D.3 ▼
BUS mode Data mode RS PORT D.2 ▼
◙ 4-bit ◙ pin
○ 8-bit ○ bus DB7 PORT D.7 ▼
DB6 PORT D.8 ▼
LCD address C000
DB5 PORT D.5 ▼
RS ddress 8000
□ Make upper 3 bits 1 in LCD designer DB4 PORT D.4 ▼
Ok Cancel
Stopbits 1 ▼
Ok Cancel
Ok Cancel
Ok Cancel
DESCRIÇÃO DE OPÇÕES
Show Toolbar
Save file as .. for new files
Ok Cancel
PALAVRAS RESERVADAS
São as palavras que representam os comandos, e por
isso não devemos usa-las como comentário de programa,
nem como nome de variável ou constante.
Λ
!
;
$BAUD
$CRYSTAL
$DATA
$DEFAULT
$END
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 52
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
$EEPROM
$EXTERNAL
$INCLUDE
$LCD
$LCDRS
$LCDPUTCTRL
$LCDPUTDATA
$LIB
$REGFILE
$SERIAL INPUT
$SERIAL INPUT 2 LCD
$SERIAL OUTPUT
$XRAMSIZE
$XRAMSTART
1WRESET
1WREAD
1WWRITE
ACK
ABS ( )
ALIAS
AND
AS
ASC ( )
AT
BAUD
BCD
BIT
BITWAIT
BLINK
BOOLEAN
BYTE
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 53
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
BYVAL
CAPTURE1
CASE
CHR ( )
CLS
CLOSE
COMPARE1A
COMPARE1B
CONFIG
CONST
COUNTER
COUNTER0
COUNTER1
COUNTER2
CPEEK ( )
CRYSTAL
CURSOR
DATA
DEBOUNCE
DECK
DECLARE
DEFBIT
DEFBYTE
DEFLNG
DEFWORD
DEGSNG
DEFLCDCHAR
DEFINT
DEFWORD
DELAY
DIM
DISABLE
DISPLAY
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 54
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
DO
DOWNTO
ELSE
ELSEIF
ENABLE
END
ERAM
ERASE
ERR
EXIT
EXTERNAL
FOR
FOURTH
FOURTHLINE
FUNCTION
GATE
GETAD ( )
GETRCS ( )
GOSUB
GOTO
HEXVAL ( )
HIGH ( )
HOME
12CRECEIVE
12CSEND
12CSTART
12CSTOP
12CRBYTE
12CWBYTE
IDLE
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 55
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
IF
INCR
INKEY
INP ( )
INPUT
INPUTBIN
INPUTHEX
INT0
INT1
INTEGER
INTERNAL
INSTR
IS
LCASE ( )
LCD
LEFT
LEFT ( )
LEN ( )
LOAD
LOCAL
LOCATE
LONG
LOOKUP ( )
LOOKUPSTR ( )
LOOP
LTRIM ( )
LOW ( )
LOWER
LOWERLINE
MAKEBCD ( )
MAKEDEC ( )
MAKEINT ( )
MID ( )
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 56
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
MOD
MODE
NACK
NEXT
NOBLINK
NOSAVE
NOT
OFF
ON
OR
OUT
OUTPUT
PEEK ( )
POKE
PORTA
PORT B
PORT A
PORT C
PORT D
PORTE
PORTF
POWERDOWN
PRINT
PRINTBIN
PULSE OUT
PWM1A
PWM1B
READ
READEEPROM
REM
RESET
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 57
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
RESTORE
RETURN
RIGHT
RIGHT ( )
ROTATE
RTRIM ( )
SELECT
SERIAL
SET
SHIFT
SHIFTLCD
SHIFTCURSOR
SHIFTIN
SHIFTOUT
SOUND
SPACE ( )
SPIINIT
SPII
SPIMOVE
SPIOUT
START
STEP
STR ( )
STRING ( )
STOP
STOP TIMER
SUB
SWAP
THEN
THIRD
THIRDLINE
TIMER 0
TIMER 1
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 58
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
TIMER 2
TO
TRIM ( )
UCASE
UNTIL
UPPER
UPPERLINE
VAL ( )
VARPTR ( )
WAIT
WAITKEY ( )
WAITMS
WAITUS
WATCHDOG
WRITEEEPROM
WEND
WHILE
WORD
XOR
XRAM
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 59
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
FUNDAMENTOS DE LINGUAGEM
1) CARACTERES
Numéricos : 0 a 9.
Alfanuméricos : A a Z.
2) DÍGITOS
Binários : 0 e 1.
Hexadecimal :0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D,E,F.
3) CARACTERES ESPECIAIS
BLANC (espaço) :
SINGLE (apostrofo) : ‘
ASTERISKS (multiplicação) : *
PLUG SIGN (soma) : +
COMMA (vírgula) : ,
MINUS SIGN (menos) : -
PERIOD (ponto decimal) : .
SIASH (divisão) : /
COLON : :
DOUBLE : “
SEMICOLON : ;
LESS TRAN (menor) : <
EQUAL SING : =
GREATER THAN (maior) : >
BACKSLASH (divisão inteira) : \
EXPONENT : ^
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 60
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
4) TIPOS DE DADOS
5) TIPOS DE VARIÁVEIS.
6) OPERADORES
a) ARITMÉTICOS :
+, -, *, \, Λ.
b) RELACIONAIS :
= igualdade X = Y.
<> diferença X <> Y.
< menor que X < Y
> maior que X > Y
<= menor ou igual X <= Y.
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 61
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
c) LÓGICOS:
NOT: negação.
AND: conjunção.
OR: disjunção.
XOR: exclusive OR.
Ex. Se X = Y and Z, escreva: X = J.
EXEMPLO PROGRAMA 1
if E1 = 0 then
portb.0 = 1
sair
wait 2
else
portb.0 = 0
sair
wait 2
end if
loop
sub sair()
portd.6 = 0
waitms 10
port.6 = 1
waitms 10
end sub
return
sub ler()
portb = 255
portd.5 = 1
E1 = pind.5
Portd.5 = 0
Portb = 0
End sub
return
EXEMPLO PROGRAMA 2
EXEMPLO PROGRAMA 3
EXEMPLO PROGRAMA 4
dim A as byte
dim C as string *10 ‘ 10 dígitos alfanuméricos
open “comd.1:1200,8,n,1,inverted” for output as #1
portb = 0
portd = 0
portd.6 = 1
waitms 10
portd = 0
do
A = “ABC”
C = abs(A) (BB) (C0) (02)
print #1 , C
wait 2
loop programa Terminal, escolha
end 1200 baud e hex
dim A as byte
A = 65
Print CHR (a)
End
X = 0 ou 1.
O Valor de X pode ser 0 ou 1, definindo a interrupção a ser
utilizada.
EXEMPLO PROGRAMA 7
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 68
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
Micro ou sensor
Eixo da máquina disco
‘ DECLARAÇÕES
config int0 = rising O fator prescaler = 64 serve
config timer1 = timer , prescaler = 64 para definir o tempo de
portb = 0 ativação do timer.
Toda vez que se passarem
portd = 255 64ms a rotina timer_isr
config portd = input será executada.
dim velocidade as Word
dim tempo as Word
declare sub sair()
on timer1 timer_isr
on int0 int0_isr
enable timer1
enable int0
enable interrupts
start timer 1
do
if velocidade > 100 then
portb.0 = 0
sair
else
portb.0 = 1
sair
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 69
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
end if
wait 2
loop
sub sair()
portd.6 = 0
waitms 10
portd.6 = 1
waitms 10
end sub
return
int0_isr:
velocidade = velocidade + 1
if tempo > 100 then
tempo = 0
end if
return
timer1_isr:
tempo = tempo + 1
if tempo > 1000 then
tempo = 0
end if
return
~ ~ + C S1 S2 S3 S4 S5 S6
E1 E2 E3 E4 E5 E6 E7 E8 E9 E10
micro
Obs.
EXEMPLO PROGRAMA 10
“declarações
portb = 0
portd = 255
config watchdog = 2048 ‘ 2 seg ≈
start watchdog ‘ início watchdog
dim I as word ‘ I = constant
declare sub sair()
portb.0 = 1
sair
wait 2
for I = 1 to 10000
waitms 1
portb.0 = 0
next
end
sub sair()
portd.6 = 0
waitms 10
portd.6 = 1
waitms 10
end sub
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 73
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
return
EXEMPLO PROGRAMA 11
‘ DECLARAÇÕES
config portb = input
config portd = input
portb = 0
portd = 255
portd.5 = 0
dim E1 as byte, E2 as byte, E3 as byte, E4 as byte
dim E5 as byte, E6 as byte, E7 as byte, E8 as byte
dim E9 as byte, E10 as byte, A as byte
declare sub ler()
declare sub sair()
‘ ROTINAS DO PROGRAMA
do
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 74
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
ler
if A = 0 then
if E3=0 or E4=0 or E5=0 or E6=0 or E7=0 or E8=0 or
E9=0 or E10=0
portb.0 = 1
portb.1 = 1
A=1
Sair
Wait 1
End if
End if
If A = 1 and E2 = 0 then
Portb.1 = 0
Portb.0 = 0
Sair
Wait 1
End if
If A = 1 and E1 = 0 then
Portb = 0
Sair
A=0
Wait 4
End if
Loop
Sub sair()
Portd.6 = 0
Waitms 10
Portd.6 = 1
Waitms 10
End sub
Return
Sub ler()
Portb = 255
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 75
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
Portd.5 = 1
Waitms 10
E1 = pind.2
E2 = pind.3
E3 = pinb.0
E4 = pinb.1
E5 = pinb.2
E6 = pinb.3
E7 = pinb.4
E8 = pinb.5
E9 = pinb.6
E10 = pinb.7
Portb = 0
Portd.5 = 0
End sub
return
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 76
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
220
Vca
~ ~ + C S1 S2 S3 S4 S5 S6
E1 E2 E3 E4 E5 E6 E7 E8 E9 E10
Botões Micros
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 77
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
EXEMPLO PROGRAMA 16
Exemplos anteriores
EXEMPLO PROGRAMA 17
‘ programa para escrever 5 em binário
‘ na saída
declare sub sair()
portb = 0
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 79
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
portd = 255
portd.5 = 0
do
portb = 0
sair
wait 4
delay
portb = 1
sair
wait 4
delay
loop
sub sair()
portd.6 = 0
waitms 10
portd.6 = 1
waitms 10
end sub
return
EXEMPLOS ANTERIORES
...
On Urxc Recebe_dados_modbus
Enable Urxc
Enable Interrupts
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 81
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
Portd = 255
Portb = 0
Main_loop:
Waitms 100
Portb = 0
Sair
Enable Serial
Reset A
Reset Udr.3
Reset Udr.4
Processa = 0
Observe aqui o comando Disable
Do Serial. Sua finalidade é a de
If Processa = 1 Then desabilitar temporariamente o
recebimento de dados, e dar
Disable Serial continuidade ao processamento
Portb.1 = 1 de dados. Se não houvesse esse
Sair desabilitamento, o programa
nunca iria ter tempo de enviar
Waitms 50 os dados requisitados!
Goto Processa_dados
End If
Portb = 0
Sair
Loop
...
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 82
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
EXEMPLO PROGRAMA 21
‘ programa pisca led
dim E1 as byte
declare sub ler()
declare sub sair ( )
portb = 0
portd = 255
dim a as byte
do
ler
If E1 = 0 then
portb.0 = 1 ‘ led pisca, enquanto
sair ‘ E1 estiver acionada
wait 4
portb.0 = 0
sair
end if
loop
sub ler()
portb =255
portd.5 = 1
waitms 10
E1 = pind.2
Portb = 0
Potd.5 = 0
End sub
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 83
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
Return
Sub sair()
Portd.6 = 0
Waitms 10
Portd.6 =1
Portb = 0
End sub
return
2 pilhas
Lâmpada de lanterna 3Volts
220
Vca
~ ~ + C S1 S2 S3 S4 S5 S6
E1 E2 E3 E4 E5 E6 E7 E8 E9 E10
dim b as byte
dim a as byte
b = 10
a = 10
If a > 10 then
print chr (a)
else
print chr (b)
end if
EXEMPLO PROGRAMA 24
‘ programa para ligar seis saídas
‘ em seqüência com intervalo de segundos
declare sub sair ( )
portb = 0
portd = 255
do
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 85
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
portb = 0
wait 4
portb.0 = 1
sair
wait 4
portb.0 = 1
sair
wait 4
portb.1 = 1
sair
wait 4
portb.2 = 1
sair
wait 4
portb.3 = 1
sair
wait 4
portb.4 = 1
sair
wait 4
portb.5 = 1
sair
loop
end
sub sair
portd.6 = 0
waitms 10
portd.6 = 1
waitms 10
end sub
return
Sintaxe:
EXIT FOR
EXIT DO
EXIT WHILE
EXIT SUB
EXIT FUNCTION
portB.2 – S3
SAÍDAS A RELÉ portB.3 – S4
portB.0 – S1 portB.4 – S5
portB.1 – S2 portB.5 – S6
SAÍDA DIGITAL
portD.4 – S7
DB_____ 7
Sub sair ( )
portd.6 = 0
waitms 10
portd.6 = 1
end sub
5 volts
0 volts
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 88
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
EXEMPLO PROGRAMA 27
Controle de compressor e descarga do mesmo.
serpentina
MOTOR D0 BALÃO
COMPRESSOR COMPRESSOR P
DE
AR
P = pressostato descarga
QUADRO DE COMANDO
ou dreno
E1 – TÉRMICO
T E2 – PRESSOSTATO
E3 – LIGA
TÉRMICO MOTOR SIRENE E4 – DESLIGA
S1 – LIGA MOTOR
S2 – LIGA DRENO
S3 – LIGA SIRENE
LIGA DESLIGA
do
gosub ler
If E1 = 1
gosub desliga
end if
If E1 = 1 and A = 1 then
gosub segur
end if
If E1 = 0 and E3 = 0 then
gosub ligar
A=1
end if
If E1 = 0 and E4 = 0 then
gosub desligar
A=0
end if
If segurança > 60 then
gosub segur
end if
If descarga > 950 then
gosub descar
end if
If E2 = 0 then segurança = 0
end if
goto
sub sair ( )
portd.6 = 1
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 91
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
waitms 10
portd.6 = 1
portb = 0
sub sair
return
sub ler ( )
portd = 255
portd.5 = 1
E1 = portd.2
E2 = portd.3
E3 = portb.0
E4 = portb.1
portb = 0
portd.5 = 0
end sub
return
sub desliga ( )
portb = 0
A=0
gosub sair
end sub
return
sub liga ( )
portb.0 = 1
gosub sair
portb = 0
end sub
return
sub segur( )
portb.2 = 1
gosub sair
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 92
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
A=0
segurança = 0
end sub
return
sub descar
If descarga > 950 and a = 1 then
portb.1 = 1
gosub sair
wait 3
portb = 0
gosub sair
else
descarga = 0
end if
end sub
return
timer1_isr:
B=B+1
descarga = descarga + 1
If B = 950 then
segurança = segurança + 1
B=0
end if
return
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 93
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
2º contato do pressostato
220 C1 – contactor para
Vca ligar motor
D – bobina do dreno
C1 D S S - sirene
~ ~ + C S1 S2 S3 S4 S5 S6
E1 E2 E3 E4 E5 E6 E7 E8 E9 E10
E1 – TÉRMICO
E2 – PRESOSTATO
E4 – LIGA
E5 – DESLIGA
Obs. A válvula do dreno acionará com intervalo de 15 min /
3seg e a segurança verificará o intervalo máximo do
pressostato para desligar o compressor.
end
z = high (i)
print chr (z)
end
1 2 3 4
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 96
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
dim s as string * 12
dim a as byte
s = “teste”
a = len (s)
print chr (a)
1
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 98
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
dim a as byte
a = 65
a = makebcd (a)
print chr (a)
end
0110 0101
EXEMPLO PROGRAMA 40
‘ programa exemplo
‘ fica piscando o led
‘ até detectar uma interrupção em E1
sair
wait 2
portb.0 = 0
sair
wait 2
loop
novo:
portb.1 = 1
sair
wait 3
portb.1 = 0
sair wait 3
return
sub sair ( )
portd.6 = 0
waitms 10
portd.0 = 1
portb = 0
end sub
return
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 101
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
220
Vca
~ ~ + C S1 S2 S3 S4 S5 S6
E1 E2 E3 E4 E5 E6 E7 E8 E9 E10
seg:
print chr (x)
return
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 102
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
prim:
ter:
print chr (x)
return
EXEMPLO PROGRAMA 42
‘demo print
portb = 0
portd = 255
dim A as byte, B1 as byte, C as integer
open “comd.1:1200,8,n,1,inverted” for output as #1
do
A=1
print #1 , A
wait 1
print #1
wait2
B1 = 10
Print #1, hex (b1) ‘verificar no programa Terminal.exe
C = &ha000 ‘escolher 1200Baumd e hex
Print #1, hex (c)
loop
end
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 103
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
EXEMPLO PROGRAMA 45
‘ chave estrela triângulo com proteção
‘ da passagem de estrela para triângulo
dim A as byte
dim E3 as byte, E6 as byte, E4 as byte, E5 as byte
declare sub sair
declare sub ler
declare sub liga
declare sub desliga
declare sub alarme
portb = 0
portd = 255
A=0
do
ler
If E6 = 0 and E5 = 0 then
If E3 = 0 and E4 = 1 and A = 0 then
liga
end if
If E3 = 1 and E4 = 0 then
desliga
end if
If E6 = 0 and E5 = 0 then
liga
else
desliga
alarme
end if
else
desliga
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 105
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
alarme
end if
loop
sub liga ( )
portb = 0
portb.0 = 1
portb.1 = 1
sair
wait 15
portb.1 = 0
wait 1
ler
if E5 = 1 then
desliga
alarme
else
portb = 0
portb.0 = 1
portb.2 = 1
sair
A=1
End if
return
sub sair ( )
portd.6 = 0
waitms 10
portd.6 = 1
end sub
return
sub ler( )
portb = 255
portd.5 = 1
portb = 255
E3 = pinb.0
E4 = pinb.1
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 106
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
E5 = pinb.2
E6 = pinb.3
portb = 0
portd.5 = 0
end sub
return
sub desliga( )
portb = 0
sair
A=0
end sub
return
sub alarme( )
portb.3 = 1
sair
end sub
return
220
Vca
C1 C2 C3
~ ~ + C S1 S2 S3 S4 S5 S6
E1 E2 E3 E4 E5 E6 E7 E8 E9 E10
L D C2 TÉRMICO
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 107
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
PAINEL
ERRO
L D
C3
46O. comando: RIGHT
Especifica os caracteres à direita de um string.
Sintaxe : variável = right (var1, st)
set b2.1
set c.15
set l.31
end
EXEMPLO PROGRAMA 50
Genérico
config spi = soft
din1 = pind.5
din2 = portd.7
din3 = p1.2
din4 = portd.3
spiinit
dim a(10) as byte, x as byte
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 110
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
spiout a(1), 5
spiout x, 1
end
123
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 111
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
dim s as string * 15
s = string (5,65)
print s
end
1 2
2 1
123
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 113
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
EXEMPLO PROGRAMA 58
Genérico
dim a as byte
a = waitkey ( )
print a
( valor recebido)
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 114
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
EXEMPLO PROGRAMA 59
Genérico
waitms 10
print “ * ”
EXEMPLO PROGRAMA 60
Genérico
waitus 100
print “ * ”
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 115
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
EXEMPLO PROGRAMA 61
Bóia de mercúrio
E3
S1
T2
T1
S2
Bóia de mercúrio
E4 bomba do
poço
poço
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 116
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
SINÓTIPO
LÂMPADA LIGADA
CAIXA CHEIA
OU MOTOR LIGADO
REARME E3
ALARME
ENTRADAS:
SAÍDAS
S1 – Bomba poço
S2 – Bomba caixa
S3 – Cisterna cheia – sinaleiro
S4 – Caixa cheia – sinaleiro
S5 – Alarme
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 117
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
Obs.
Se após 1 hora, a bomba não encher a cisterna, toca
alarme.
Se após 1 hora a bomba não encher a caixa, toca o
alarme.
S2 não liga, se nível da cisterna está baixo.
‘ declaração do programa
declare sub sair ( )
declare sub ler ( )
declare sub tempo ( )
declare sub alarme1 ( )
config portb = input
portb = o
portd = 255
dim E3 as byte, E4 as byte
dim E5 as byte, E6 as byte
dim E7 as byte, T1 as byte
dim T2 as byte, T3 as byte
do
ler
while E6 = 0 and E7 = 0 and T1 < 100 and T2 <100
If E3 = 0 and E4 = 0 then
Portb.2 = 1
Portb.3 = 1
sair
T1 = 0
T2 = 0
End If
If E3 =0 and E4 = 0 then
Portb.1 = 1
Portb.2 = 1
sair
T1 = 0
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 118
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
End If
If E3 = 1 and E4 = 0 then
Portb.0 = 1
Portb.3 = 1
sair
T2 = 0
End If
If E3 = 1 and E4 = 1 then
Portb = 0
sair
T1 = 0
T2 = 0
Alarme1
End If
tempo
ler
wend
T1 = 0
T2 = 0
While E5 = 1
Portb.4 = 1
Sair
Wait1
Portb = 0
Sair
Wait 1
ler
Wend
Loop
Sub tempo( )
T3 = T3 + 1
Wait 1
If T3 > 60 then
T1 = t1 + 1
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 119
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
T2 = t2 + 1
T3 = 0
End If
Return
Sub sair
Portd.6 = 0
Waitms 10
Portd = 1
Portb = 0
End sub
Return
Sub ler ( )
Portb = 255
Portd.5 = 1
E3 = pinb.0
E4 = pinb.1
E5 = pinb.2
E6 = pinb.3
E7 = pinb.4
Portb = 0
Portd.5 = 0
End sub
Return
Sub alarme 1 ( )
Portb.3 = 1
sair
end sub
return
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 120
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
220
Vca
C1 C2 L1 L2 L3
~ ~ + C S1 S2 S3 S4 S5 S6
E1 E2 E3 E4 E5 E6 E7 E8 E9 E10
L1 – caixa cheia
L2 – poço cheio
L3 – defeito
C1 – contactor motor caixa d´água
C2 – contactor motor poço
E3 – bóia caixa
E4 – bóia do poço
E5 – rearma
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 121
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
Observação:
Exemplo: portb 0 1 0 0 1 0
S6 S5 S4 S3 S2 S1- Representa
Portb.6
dim I as integer
do
I = RND (100)
print chr ( I )
wait 1
loop
end
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 122
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
dim s as string * 10
s = “ teste “
print checksum ( s )
end
EXEMPLO PROGRAMA 64
Controlar as saídas de S1 a S6 de acordo com a regulagem
do potenciômetro ligado a um balancim
Motor
Potenciômetro balancim
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 123
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
~ ~ + C S1 S2 S3 S4 S5 S6
preto
vermelho
E1 E2 E3 E4 E5 E6 E7 E8 E9 E10
Potenciômetro. 1000 R
Inversor
Motor -
+
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 124
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
‘declarações
dim p as Word
portb = 0
portd = 255
portd.4 = 0
declare sub sair ( )
do
p = getrc(pind , 4)
while p < 200 and p > 180
portb.0 = 1
sair
p = getrc(pind , 4)
wend
while p < 180 and p > 160
portb.1 = 1
sair
p = getrc(pind , 4)
wend
while p < 160 and p > 140
portb.2 = 1
sair
p = getrc(pind , 4)
wend
while p < 160 and p > 140
portb.2 = 1
sair
p = getrc(pind , 4)
wend
while p < 140 and p > 100
portb.3 = 1
sair
p = getrc(pind , 4)
wend
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 125
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
sub sair ( )
portd.6 = 0
waitms 10
portd = 1
portb = 0
end sub
return
comunicação
RS 232
‘Declarações
open “comd.1:1200,8,n,1,inverted” for output #1
declare sub transmite ( )
declare sub atualiza ( )
declare sub guarda ( )
declare sub zerar ( )
‘ Configura interrupções
config int0 = rising
config int1 = rising
config timer1 = timer, prescale = 64
config portb = input
config portd = &B00000010
portb = 255
portd = 255
‘Configura variaveis
dim num as byte , x as byte , a_lin as byte
dim numero as byte , b as byte , c as Word
dim d as Word , e as byte , f as byte , g as byte
dim h as byte , b_lin as byte , c_lin as word
dim d_lin as word , e_lin as word
dim f_lin as word , g_lin as word
dim h_lin as word , Bb as byte , Cc as byte
dim Dd as byte , Ee as byte , Ff as byte
dim Gg as byte , Gg as byte , Hh as byte
master alias pinb.7
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 127
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
do
if master = 1 then
num = pinb – 128
else
num = pinb
end if
numero = num
x=x+1
if tempo > 10 then
atualiza
transmite
end if
transmite
guarda
wend
x=0
atualiza
loop
sub guarda ( )
b = b_lin
c = c_lin
d = d_lin
e = e_lin
f = f_lin
g = g_lin
h = h_lin
end sub
return
sub atualiza ( )
b=x
c = numero
d = veloc
if pulso >= 1000 then
e=1
pulso = pulso – 1000
else
e=0
end if
f=0 ‘ reserva
g = 0 ‘ reserva
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 129
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
h = 0 ‘ reserva
end sub
return
sub transmite ( )
print #1, chr (254)
waitms 10
print #1,chr (x)
waitms 10
print #1,chr (c)
waitms 10
print #1,chr (d)
waitms 10
print #1,chr (e)
waitms 10
print #1,chr (f)
waitms 10
print #1,r (g)
waitms 10
print #1,chr (h)
waitms 10
end sub
return
rec_isr :
select case pos
case 1 : a_lin = udr
case 2 : b_lin = udr
case 3 : c_lin = udr
case 4 : d_lin = udr
case 5 : e_lin = udr
case 6 : f_lin = udr
case 7 : g_lin = udr
case 8 : h_lin = udr
end select
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 130
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
timer1_isr:
tempo = tempo + 1
templarg = templarg + 1
return
int1_isr:
pulsos = pulsos + 1
return
int0_isr:
largura = largura + 1
if largura >= 10 then
veloc = templarg
templarg = 0
largura = 0
end if
return
CURSO DE LINGUAGEM DE PROGRAMAÇÃO DEDICADA A COMPILADOR PARA 131
MICROPROCESSADOR E CLP (JORGE AUGUSTO)
~ ~ + C S1 S2 S3 S4 S5 S6
E1 E2 E3 E4 E5 E6 E7 E8 E9 E10
Exercício: faça as ligações...
Finalizações e observações gerais.