PROTEUS VSM 4
M.- Exemplos com microcontroladores Pic da MICROCHIP.
I.- Microcontrolador PIC16F84 com dois LEDS.
Componentes:
· DEVICE (CAP) = 33pF
· DEVICE (CRYSTAL) = 4MHz
· DEVICE (RES) = 10k, 120, 120
· DEVICE (CAP-ELEC) = 10uF
· MICRO (PIC16F84A)
· ACTIVE (LED-GREEN)
· ACTIVE (LED-RED)
A alimentação e o terra para este circuito se encontre dentro do Inter-Sheet Terminal da barra de ferramentas.
Programa:
TRISA = 0
PORTA.0 = 1
PORTA.1 = 0
ASB:
TOGGLE PORTA.0
TOGGLE PORTA.1
PAUSE 500
GOTO ASB
END
*** Provar o seguinte circuito:
Programa:
TRISA = 0
LOW PORTA.0
HIGH PORTA.1
LOW PORTA.2
ASB:
TOGGLE PORTA.0
TOGGLE PORTA.1
TOGGLE PORTA.2
PAUSE 1000
GOTO ASB
END
iI.- Circuito com interruptores de 2 posições.
Programa:
TRISB = %11111111
TRISA = 0
SWS VAR BYTE
OPTION_REG = 0
ASB:
SWS = PORTB & %00001110
SELECT
CASE SWS
CASE %1110
LOW PORTA.0
CASE %1100
HIGH PORTA.0
CASE %1010
HIGH PORTA.0
CASE %1000
LOW PORTA.0
CASE %0110
HIGH PORTA.0
CASE %0100
LOW PORTA.0
CASE %0010
LOW PORTA.0
CASE %0000
HIGH PORTA.0
END SELECT
PAUSE 100
GOTO ASB
END
iII.- Uso do LCD Alfanumérico e ativação de uma carga de corrente alterna por meio de um transistor e um rele.
Componentes:
· BIPOLAR (2N2222)
· DISPLAY (LM016L)
Programa:
' Set LCD Data port
DEFINE LCD_DREG PORTA
'Set starting Data bit (0 or 4) if 4-bit bus
DEFINE LCD_DBIT 0
' Set LCD Register Select port
DEFINE LCD_RSREG PORTA
' Set LCD Register Select bit
DEFINE
LCD_RSBIT 4
' Set LCD Enable port
DEFINE
LCD_EREG PORTB
' Set LCD Enable bit
DEFINE
LCD_EBIT 3
' Set LCD bus size (4 or 8 bits)
DEFINE
LCD_BITS 4
' Set number of lines on LCD
DEFINE LCD_LINES 2
' Set command delay time in us
DEFINE
LCD_COMMANDUS 2000
' Set data delay time in us
DEFINE
LCD_DATAUS 50
TRISB.1 = 0
ASB: LCDOUT $FE, 1, "HOLA ALUMNO"
PAUSE 1000
LCDOUT $FE, $C0, "PROTEUS"
PAUSE 1000
TOGGLE PORTB.1
GOTO ASB
END
iV.- Comunicação serial entre dois microcontroladores PIC16F84.
Programas:
[Picuno.bas]
INCLUDE "modedefs.bas"
TRISA = 255
ASB:
SEROUT PORTB.0, T9600, ["OKy",PORTA]
GOTO ASB
END
[Picdos.bas]
INCLUDE "modedefs.bas"
TRISA = 0
ASB:
SERIN PORTB.0, T9600, ["OKy"], PORTA
TOGGLE PORTB.1
GOTO ASB
END