Derleme Sorunu

Başlatan agora_meyhanesi42, 04 Ağustos 2008, 09:16:02

agora_meyhanesi42

Pic Basic Derleyicim var ama ne yaptıysam derleyemedim eger zahmet olmazsa su programı derleyen arkadaslarım olursa cok sevinirim. Saat yapmak istiyorum ama derleyemiyorum

DEVICE 16F84A

TrisA=0
TrisB=192

Dim Tick as Byte
Dim Saat as Byte
Dim Dakika as Byte
Dim Saniye as Byte
Dim i as Byte
Dim k as Byte
Dim l as Byte
Dim s as Byte

Dim a as Byte
Dim b as Byte
Dim c as Byte
Dim d as Byte
Dim e as Byte
Dim f as Byte

Saat=0:Dakika=0:Saniye=0:k=22
-------------------------------------------------------------------------------
OPTION_REG = $55
INTCON =
On Interrupt Goto tickint
PORTB=192
-------------------------------------------------------------------------------
BAS:
If s=1 Then Inc l
If l=40 Then l=0 : k=22
-------------------------------------------------------------------------------
If PORTB.7 = 0 Then
a=0:b=0:c=0:d=0:e=0:f=0
Else
a=32:b=16:c=8:d=4:e=2:f=1
EndIf
If PORTB.6 = 0 Then
DEC k
If k = 0 Then k = 1
s = 0
Goto Dakikayi_Artir
Else s = 1
EndIf
-------------------------------------------------------------------------------
PORTB=0
PORTA=DIG Saniye, 0
PORTB=a
DELAYMS 2
PORTB=0
PORTA=DIG Saniye, 1
PORTB=b
DELAYMS 2
PORTB=0
PORTA=DIG Dakika, 0
PORTB=c
DELAYMS 2
PORTB=0
PORTA=DIG Dakika, 1
PORTB=d
DELAYMS 2
PORTB=0
PORTA=DIG Saat, 0
PORTB=e
DELAYMS 2
PORTB=0
PORTA=DIG Saat, 1
PORTB=f
DELAYMS 2
GOTO BAS
-------------------------------------------------------------------------------
Dakikayi_Artir:
Dakika = Dakika + 1
If Dakika >= 60 Then
Dakika = 0:Saat = Saat + 1
If Saat = 24 Then Saat = 0
Saniye = 0
Endif
Goto debounce
debounce:
For i = 1 to k
PORTB=0
PORTA=DIG Saniye, 0
PORTB=a
DELAYMS 2
PORTB=0
PORTA=DIG Saniye, 1
PORTB=b
DELAYMS 2
PORTB=0
PORTA=DIG Dakika, 0
PORTB=c
DELAYMS 2
PORTB=0
PORTA=DIG Dakika, 1
PORTB=d
DELAYMS 2
PORTB=0
PORTA=DIG Saat, 0
PORTB=e
DELAYMS 2
PORTB=0
PORTA=DIG Saat, 1
PORTB=f
DELAYMS 2
Next i
Goto BAS
-------------------------------------------------------------------------------
Disable
TickInt:
Tick = Tick + 1
If Tick < 61 Then tiCik
Tick = 0
Saniye = Saniye + 1
If Saniye >= 60 Then
Saniye = 0
Dakika = Dakika + 1
If Dakika >= 60 Then
Dakika = 0
Saat = Saat + 1
If Saat >= 24 Then
Saat = 0
Endif
Endif
Endif
-------------------------------------------------------------------------------
tiCik: INTCON.2 = 0
If s = 0 Then Saniye = 0
Resume
Yüksel Türk ! Senin için yükselmenin hududu yoktur...

karbal656

Device 16F84A 

TRISA=0 
TRISB=192 

Dim Tick As Byte 
Dim Saat As Byte 
Dim Dakika As Byte 
Dim Saniye As Byte 
Dim i As Byte 
Dim k As Byte 
Dim l As Byte 
Dim s As Byte 

Dim a As Byte 
Dim b As Byte 
Dim c As Byte 
Dim d As Byte 
Dim e As Byte 
Dim f As Byte 

Saat=0:Dakika=0:Saniye=0:k=22 
'------------------------------------------------------------------------------- 
OPTION_REG = $55 
INTCON = %10100000
On Interrupt GoTo TickInt 
PORTB=192 
'------------------------------------------------------------------------------- 
BAS: 
If s=1 Then Inc l 
If l=40 Then l=0 : k=22 
'------------------------------------------------------------------------------- 
If PORTB.7 = 0 Then 
a=0:b=0:c=0:d=0:e=0:f=0 
Else 
a=32:b=16:c=8:d=4:e=2:f=1 
EndIf 
If PORTB.6 = 0 Then 
Dec k 
If k = 0 Then k = 1 
s = 0 
GoTo Dakikayi_Artir 
Else s = 1 
EndIf 
'------------------------------------------------------------------------------- 
PORTB=0 
PORTA=Dig Saniye, 0 
PORTB=a 
DelayMS 2 
PORTB=0 
PORTA=Dig Saniye, 1 
PORTB=b 
DelayMS 2 
PORTB=0 
PORTA=Dig Dakika, 0 
PORTB=c 
DelayMS 2 
PORTB=0 
PORTA=Dig Dakika, 1 
PORTB=d 
DelayMS 2 
PORTB=0 
PORTA=Dig Saat, 0 
PORTB=e 
DelayMS 2 
PORTB=0 
PORTA=Dig Saat, 1 
PORTB=f 
DelayMS 2 
GoTo BAS 
'------------------------------------------------------------------------------- 
Dakikayi_Artir: 
Dakika = Dakika + 1 
If Dakika >= 60 Then 
Dakika = 0:Saat = Saat + 1 
If Saat = 24 Then Saat = 0 
Saniye = 0 
EndIf 
GoTo debounce 
debounce: 
For i = 1 To k 
PORTB=0 
PORTA=Dig Saniye, 0 
PORTB=a 
DelayMS 2 
PORTB=0 
PORTA=Dig Saniye, 1 
PORTB=b 
DelayMS 2 
PORTB=0 
PORTA=Dig Dakika, 0 
PORTB=c 
DelayMS 2 
PORTB=0 
PORTA=Dig Dakika, 1 
PORTB=d 
DelayMS 2 
PORTB=0 
PORTA=Dig Saat, 0 
PORTB=e 
DelayMS 2 
PORTB=0 
PORTA=Dig Saat, 1 
PORTB=f 
DelayMS 2 
Next i 
GoTo BAS 
'------------------------------------------------------------------------------- 
Disable 
TickInt: 
Tick = Tick + 1 
If Tick < 61 Then tiCik 
Tick = 0 
Saniye = Saniye + 1 
If Saniye >= 60 Then 
Saniye = 0 
Dakika = Dakika + 1 
If Dakika >= 60 Then 
Dakika = 0 
Saat = Saat + 1 
If Saat >= 24 Then 
Saat = 0 
EndIf 
EndIf 
EndIf 
'------------------------------------------------------------------------------- 
tiCik: INTCON.2 = 0 
If s = 0 Then Saniye = 0 
Resume

Birde bu şekilde dene Proton ile derledim. ufak tefek hataların vardı ----- şu çizgilerin önüne (')kesme işareti koymamışsın ve intcon'a değer atamamışsın.
Başarılar.

agora_meyhanesi42

karbal656 emeğin için teşekkürler. Bendeki pc biraz eski ve güç kaynagının yarısı yanık bilgisayar tam derleme yapacakken kendine restart atıyor onun için bir türlü derleyemiyorum. Eğer zahmet olmazsa derlediğin hex dosyasını upload edermisin ama zahmet olmazsa
Yüksel Türk ! Senin için yükselmenin hududu yoktur...

karbal656

:02000000522884
:0800080008008F018E00FF309B
:100010008E07031C8F07031C4D2803308D00DF3033
:10002000132007288D01E83E8C008D09FC30031C4D
:100030001C288C07031819288C0700008D0F19281D
:100040000C1822288C1C2628000026280800013EB7
:1000500093000A308E008F013120930B2C2810085A
:10006000080091019001103092000D0D900D910D3E
:100070000E0890020F08031C0F0F91020318472867
:100080000E0890070F0803180F0F910703108C0D2F
:100090008D0D920B35280C084D2883138312031302
:1000A0000000080083168501C03086008312950188
:1000B0009601970116309900553083168100A030C3
:1000C0008B008B17831267288B1B0800C5296420BF
:1000D0006420C0308600642001301B02031D72289A
:1000E00064209A0A642028301A02031D7E286420A6
:1000F00064209A0164206420163099006420861BD5
:100100009428642064209C01642064209D01642064
:1001100064209E01642064209F0164206420A0016B
:1001200064206420A101AC286420642020309C005D
:100130006420642010309D006420642008309E00FC
:100140006420642004309F00642064200230A000FA
:10015000642064200130A1006420061BBF286420B5
:10016000990364209908031DB92864206420013094
:100170009900642064209B0164203129C3286420F5
:10018000642001309B006420642086016420642088
:100190008D0117088C000030272085006420642022
:1001A0001C0886006420023005206420642086013B
:1001B000642064208D0117088C0001302720850001
:1001C000642064201D08860064200230052064201D
:1001D00064208601642064208D0116088C000030A4
:1001E00027208500642064201E08860064200230D9
:1001F0000520642064208601642064208D01160897
:100200008C00013027208500642064201F088600B0
:10021000642002300520642064208601642064206C
:100220008D0115088C000030272085006420642093
:1002300020088600642002300520642064208601A6
:10024000642064208D0115088C0001302720850072
:100250006420642021088600642002300520642088
:100260006B2864206420960A64203C301602031C2C
:100270004A2964206420960164206420950A642041
:1002800018301502031D472964206420950164205D
:100290006420970164204C296420013098001808DC
:1002A0001902031CC3296420642086016420642091
:1002B0008D0117088C000030272085006420642001
:1002C0001C0886006420023005206420642086011A
:1002D000642064208D0117088C00013027208500E0
:1002E000642064201D0886006420023005206420FC
:1002F00064208601642064208D0116088C00003083
:1003000027208500642064201E08860064200230B7
:100310000520642064208601642064208D01160875
:100320008C00013027208500642064201F0886008F
:10033000642002300520642064208601642064204B
:100340008D0115088C000030272085006420642072
:100350002008860064200230052064206420860185
:10036000642064208D0115088C0001302720850051
:100370006420642021088600642002300520642067
:10038000980A031D4F2964206B28940A3D301402FB
:100390000318CB29DE299401970A3C301702031C6D
:1003A000DE299701960A3C301602031CDE299601CD
:1003B000950A18301502031CDE2995010B119B08C4
:0803C000031DE3299701090068
:02400E00F13F80
:00000001FF

agora_meyhanesi42

Çok teşekkür ederim büyük bi sıkıntıma çare oldun
Yüksel Türk ! Senin için yükselmenin hududu yoktur...