Moderators: stojke369, pedja089, [eDo], trax
define OSC 16
DEFINE LCD_BITS 4
DEFINE LCD_DREG PORTA
DEFINE LCD_DBIT 0
DEFINE LCD_RSREG PORTB
DEFINE LCD_RSBIT 3
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 5
DEFINE LCD_LINES 2
pause 250
lcdout $fe,1,"Frekvencmetar"
pause 1500
lcdout $FE,1,"Loading..."
pause 1000
hz var word
khz var word
deckhz var word
start:
count portb.2,1000,hz
if hz > 1000 then
khz = hz / 1000
deckhz = hz - khz * 1000
lcdout $fe,1,"CH1:", dec khz,".",dec3 deckhz,"kHz"
else
lcdout $fe,1,"CH1:", dec hz,"Hz"
endif
goto starttrisa=0
trisb=%11110000
symbol led1=portb.4
symbol led2=portb.5
symbol led3=portb.6
symbol led4=portb.7
symbol taster1=portb.3
symbol taster=portb.0
symbol tastera1=portb.1
symbol tastera= portb.2
symbol buzer=porta.4
output buzer
input taster1
input taster
input tastera1
input tastera
starostanje var bit
novostanje var bit
starostanje= taster
starostanje1 var bit
novostanje1 var bit
starostanje1=taster1
starostanjea var bit
novostanjea var bit
starostanjea=tastera
starostanjea1 var bit
novostanjea1 var bit
starostanjea1=tastera1
i var byte
i=0
pocetak:
novostanjea=tastera
novostanjea1=tastera1
If novostanjea<starostanjea or novostanjea1<starostanjea1 then
i=i+1
sound buzer,[110,10]
endif
if i>4 then i=1
lookup i, [0,1,2,3,4],porta
pause 120
if i=0 then
novostanje=taster
novostanje1=taster1
endif
if novostanje<starostanje or novostanje1<starostanje1 then
sound buzer,[110,10]
low led1
low led2
low led3
low led4
endif
starostanje=novostanje
starostanje1=novostanje1
if i=1 then
novostanje=taster
novostanje1=taster1
endif
if novostanje<starostanje or novostanje1<starostanje1 then
sound buzer,[110,10]
toggle led1
pause 120
endif
starostanje=novostanje
starostanje1=novostanje1
if i=2 then
novostanje=taster
novostanje1=taster1
endif
if novostanje<starostanje or novostanje1<starostanje1 then
sound buzer,[110,10]
toggle led2
pause 120
endif
starostanje=novostanje
starostanje1=novostanje1
if i=3 then
novostanje=taster
novostanje1=taster1
endif
if novostanje<starostanje or novostanje1<starostanje1 then
sound buzer,[110,10]
toggle led3
pause 120
endif
starostanje=novostanje
starostanje1=novostanje1
if i=4 then
novostanje=taster
novostanje1=taster1
endif
if novostanje<starostanje or novostanje1<starostanje1 then
sound buzer,[110,10]
toggle led4
pause 120
endif
starostanje1=novostanje1
starostanje=novostanje
starostanjea=novostanjea
starostanjea1=novostanjea1
goto pocetak
endtrisa=0
trisb=%11110000
symbol led1=portb.4
symbol led2=portb.5
symbol led3=portb.6
symbol led4=portb.7
symbol taster1=portb.3
symbol taster=portb.0
symbol tastera1=portb.1
symbol tastera= portb.2
symbol buzer=porta.4
output buzer
input taster1
input taster
input tastera1
input tastera
starostanje var bit
novostanje var bit
starostanje= taster
starostanje1 var bit
novostanje1 var bit
starostanje1=taster1
starostanjea var bit
novostanjea var bit
starostanjea=tastera
starostanjea1 var bit
novostanjea1 var bit
starostanjea1=tastera1
i var byte
i=0
pocetak:
novostanjea=tastera
novostanjea1=tastera1
If novostanjea<starostanjea or novostanjea1<starostanjea1 then
i=i+1
sound buzer,[110,10]
endif
if i>4 then i=0
lookup i, [0,1,2,3,4],porta
pause 120
if i=0 then
novostanje=taster
novostanje1=taster1
endif
if novostanje<starostanje or novostanje1<starostanje1 then
sound buzer,[110,10]
low led1
low led2
low led3
low led4
endif
starostanje=novostanje
starostanje1=novostanje1
if i=0 then low led1: low led2: low led3: low led4
if i=1 then high led1
if i=2 then high led1: high led2
if i=3 then high led1: high led2: high led3
if i=4 then high led1: high led2: high led3: high led4
starostanje1=novostanje1
starostanje=novostanje
starostanjea=novostanjea
starostanjea1=novostanjea1
goto pocetak
end'****************************************************************
'* Name : dimer1.BAS *
'* Author : [niho] *
'* Notice : Copyright (c) 2010 [niho] *
'* : All Rights Reserved *
'* Date : 21.01.2010 *
'* Version : 1.1 *
'* Notes : *
'* : *
'****************************************************************
@ DEVICE pic16f84a,XT_OSC,WDT_OFF,PROTECT_OFF 'definicija konfiguracije
DEFINE OSC 4 'definicija oscilatora
i VAR BYTE 'postavka prvog brojaca (varijable)
sstu var bit 'staro stanje pojacaj
nstu var bit 'novo stanje pojacaj
sstd var bit 'staro stanje smanji
nstd var bit 'novo stanje smanji
i=1
SYMBOL LED=portb.7 'postavka simbola zamjene pinova
SYMBOL taster1=portb.0
symbol taster2=portb.1
OUTPUT LED
INPUT TASTER1 'postavke ulaza-pojacavanje int.svjetla
input taster2 'smanjivanje intenziteta svjetla
sstu = taster1
sstd = taster2
pocetak: 'radni potprogram
nstu = taster1
nstd = taster2
low led
pause i
high led
pause 30-i
if nstu < sstu then i=i+1 'pojacavanje svjetla
if nstd < sstd then i=i-1 'smanjivanje svjetla
if i>30 then i=30 'ogranicenje pauze
if i<1 then i=1
sstu = nstu
sstd = nstd
goto pocetak
end ' krajOUTPUT PORTB.7
OUTOUT PORTB.6
pocetak:
HIGH PORTB.7
LOW PORTB.6
PAUSE 600000
LOW PORTB.7
LOW PORTB.6
PAUSE 500
LOW PORTB.7
HIGH PORTB.6
PAUSE 500
GO TO pocetak
ENDOUTPUT PORTB.7
OUTPUT PORTB.6
pocetak:
HIGH PORTB.7
LOW PORTB.6
PAUSE 60000
LOW PORTB.7
LOW PORTB.6
PAUSE 500
LOW PORTB.7
HIGH PORTB.6
PAUSE 500
Goto pocetak
END:1000000028288F018E00FF308E07031C8F07031CEA
:10001000232803308D00DF300F2003288D01E83EB8
:100020008C008D09FC30031C18288C070318152838
:100030008C0764008D0F15280C181E288C1C222894
:1000400000002228080083130313831264000800B1
:10005000831686130613831286178316861383125C
:100060000613831606138312EA308F0060300220D5
:1000700086138316861383120613831606138312C0
:1000800001308F00F430022086138316861383120A
:10009000061783160613831201308F00F4300220F6
:0600A0002C28630051282A
:02400E00F53F7C
:00000001FF
OUTPUT PORTB.7
OUTPUT PORTB.6
pocetak:
portb=0
HIGH PORTB.7
pause 60000
low PORTB.7
pause 500
high PORTB.6
pause 60000
low PORTB.6
pause 500
Goto pocetak
END:1000000028288F018E00FF308E07031C8F07031CEA
:10001000232803308D00DF300F2003288D01E83EB8
:100020008C008D09FC30031C18288C070318152838
:100030008C0764008D0F15280C181E288C1C222894
:1000400000002228080083130313831264000800B1
:10005000831686130613831286018617831686136A
:100060008312EA308F0060300220861383168613D5
:10007000831201308F00F430022006178316061316
:100080008312EA308F0060300220061383160613B5
:10009000831201308F00F43002202C2863004E2898
:02400E00F53F7C
:00000001FF
pedja089 wrote:Za programiranje ti treba RB6,RB7,MCLR,Vcc i GND.
I to spajas bez obzira koji je pic u pitanju. I za 12XXX isti pinovi samo sto umesto RB6 i RB7 idu GP0 i GP1...
Ne znam kojim redom, lako se proveri u datasheetu...
Return to Mikrokontroleri - PIC
Users browsing this forum: Google [Bot] and 2 guests