pcbway

pic basic de analog giriş kullanılmıyor

Başlatan ocs61, 12 Mayıs 2013, 15:35:22

ocs61

merhaba benm şöyle bi sıkıntım var..

basic proda analog giriş kullanmak için gerekli komutları yapıyorum hiç bir yerde hata yok ama program şöyle bir hata veriyor

error(113)c:/pbp/pbppic14.lib 449 : symbol not previously defined (adres)

programa star etiketi ile başlıyorum

adcın 0,adres yazıyorum kabul etmiyor.. buradaki adresi adresl yada adresh yazsam hata vermiyor ama uygulamadada çalışmıyor.. gerek varsa programın kodlarını da verebilirim
Erdemlerimiz ve kusurlarımız birbirinden ayrılamaz, güç ve madde gibi. Onlar ayrıldığında insan bir hiçtir.
-Nikola Tesla-

F.T

12 Mayıs 2013, 16:34:26 #1 Son düzenlenme: 12 Mayıs 2013, 16:36:45 F.T
adc ı n burdaki ı olmayacak i olacak   yani adcin 0,okunan yada büyük yazarsan ADCIN 0, OKUNAN

ocs61

BÜYÜK HARFLE YAZDIĞIN ZAMAN \"I\" OLACAK.. HATA AYNI DEVAM EDİYOR :s
Erdemlerimiz ve kusurlarımız birbirinden ayrılamaz, güç ve madde gibi. Onlar ayrıldığında insan bir hiçtir.
-Nikola Tesla-

F.T

12 Mayıs 2013, 16:38:24 #3 Son düzenlenme: 12 Mayıs 2013, 16:39:48 F.T
Şu programı koysanda herkes ona göre baksa.sarı çizmeli mehmet ağa kim gibi oluyor yoksa. ;)

bide hangi işlemciyi kullanıyon acaba analog girişi varmı?

ocs61

HASTAMIZ  BURDA :)



ADCON0=%00000001\'00 000 001 .. 3 TANE 0 HANGİ GİRİŞİ KULANACAĞIMIZI GÖSTERİOR..SONDAKİ 1 İSE ANALOG GİRİŞİ AÇIOR...EXEL DOSYASINA BAK ADCON0 KISMINA
ADCON1=%10000101
TRISA=%11101111
TRISB=0
TRISC=0

HAB VAR WORD
HESAP VAR WORD
MVOLT VAR WORD
HESAB VAR WORD
VOLT VAR BYTE


DEFINE LCD_DREG PORTB \'LCD data bacakları PortB ye bağlı
DEFINE LCD_DBIT 4 \'LCD data bacakları 4. bit den başlıyor
DEFINE LCD_RSREG PORTB \'LCD RS Bacağı PortA ye bağlı
DEFINE LCD_RSBIT 2 \'LCD RS bacağı 1. Bite bağlı
DEFINE LCD_EREG PORTB \'LCD Enable Bacağı PortB ye bağlı
DEFINE LCD_EBIT 3 \'LCD Enable Bacağı 3. bite bağlı
\'DEFINE LCD_RWREG PORTB \'LCD RW Bacağı PortB ye bağlı
\'DEFINE LCD_RWBIT 1 \'LCD RW Bacağı 2. bite bağlı
DEFINE LCD_BITS 4 \'LCD 4 bit olarak bağlı
DEFINE LCD_LINES 2 \'LCD 2 sıra yazabiliyor

LCDOUT $FE,1

START:
ADCIN 0, ADRES \' ANALOG GİRŞİN 0. BİTİNDEN BİLGİ AL... 0 YERİNE 1 OLSAYDI 1. BİTTEN BİLGİ ALIRDI

BEKLE:
IF ADCON0.2=1 THEN
GOTO BEKLE
ENDIF

HAB=ADRESL
IF ADRESH.0=1 THEN
HAB=HAB+256
ENDIF
IF ADRESH.1=1 THEN
HAB=HAB+512
ENDIF

HESAB=HAB/2
VOLT=HESAB/100
MVOLT=HESAB//100

IF VOLT>3 THEN  \'TOCKI AYAĞINDAKİ LEDİ YAKMAK İÇİN
PORTA.4=1
ELSE
PORTA.4=0
ENDIF           \'TOCKI AYAĞINDAKİ LEDİ YAKMAK İÇİN

LCDOUT $FE,$80, \"SONUC :\", DEC4 HAB
LCDOUT $FE,$C0, \"GERILIM :\", DEC1 VOLT, \",\", DEC2 MVOLT

GOTO START

END
Erdemlerimiz ve kusurlarımız birbirinden ayrılamaz, güç ve madde gibi. Onlar ayrıldığında insan bir hiçtir.
-Nikola Tesla-

pwm.c

benim PBP derleyicim senin kodları 16F877 için sorunsuz derledi ve proteustada sorunsuz çalıştı. yanlız, referans girişleri aktif yapılmış.

işte hex dosyası:
:10000000B201CB280408A700861106110611831639
:100010008611061106110F30860583122708B218C3
:100020002E283A30A100FC3091203330A600422027
:100030001030A1006830912042206430902022309E
:10004000A600422028302D200C302D2001302D20FC
:1000500006302D20B21427082E283214A600321C98
:100060003C280611033C031C412841200730A10015
:10007000D0309120031408003214FE3C0319C62826
:100080000615321C321086150F3086052608F03909
:1000900086048611A60E32184228323090200314AE
:1000A0000800B31329080319B3170530A800273037
:1000B000A300103067200330A300E8306720A301BD
:1000C00064306720A3010A30672024086E28A2004C
:1000D0002508A1002408A000A5202008A000A8034E
:1000E0000319B313290803197828280203180800F4
:1000F0002008031DB313B31B0800303EC128A00025
:10010000A00DA00D200D3839C1389F000030A1008E
:10011000323091201F151F198B28A1011E08C628F7
:10012000A101E83EA000A109FC30031C9A28A00709
:1001300003189728A0076400A10F97282018A0286B
:10014000A01CA4280000A4280800A501A4011030C8
:10015000A600210DA40DA50D2208A4022308031C4E
:10016000230FA5020318BB282208A407230803189D
:10017000230FA5070310A00DA10DA60BA928200889
:10018000C628840031088A003008820083130313D4
:1001900083126400080001309F00831685309F00A1
:1001A000EF30850086018701FE3083128A0103202B
:1001B00001308A01032000308A017F209E00640004
:1001C0008A110A121F1DE6288A01DF2883161E08DD
:1001D0008312B800B90164008A110A121E1CF628A5
:1001E0000030B80701300318013EB90764008A11D6
:1001F0000A129E1C01290030B80702300318013E84
:10020000B9070310390CBB00380CBA003A08A0003B
:100210003B08A1006430A200A3018A01A520C00010
:100220003A08A0003B08A1006430A200A3018A01A3
:10023000A5202408BE002508BF0064000430400249
:100240008A110A12031C282905168A110A12292963
:100250000512FE308A01032080308A0103205330CA
:100260008A0103204F308A0103204E308A01032087
:1002700055308A01032043308A01032020308A014F
:1002800003203A308A0103200430A9003808A40072
:100290003908A5000230B000B1018A015120FE30BA
:1002A0008A010320C0308A01032047308A010320DD
:1002B00045308A01032052308A01032049308A01E7
:1002C00003204C308A01032049308A0103204D303D
:1002D0008A01032020308A0103203A308A0103205A
:1002E0000130A9004008A400A5010230B000B1010E
:1002F0008A0151202C308A0103200230A9003E08D7
:10030000A4003F08A5000230B000B1018A015120CD
:0A0310008A01DB2863008A018A29B4
:02400E00753FFC
:00000001FF


sanırım senin derleyici ADRES değişkeni olmadığı için hata veriyor olmalı. bunun yerine başka bir word değişkeni atayıp dene bakalım.
_/\/\/\_ -[ı- -ı>|- -|ı|ı|ı- -ı< -||- -l[]l-

ocs61

Alıntı yapılan: pwm.c - 12 Mayıs 2013, 20:51:08sanırım senin derleyici ADRES değişkeni olmadığı için hata veriyor olmalı. bunun yerine başka bir word değişkeni atayıp dene bakalım.

dediğini yaptım oldu hocam sağolasın :)
Erdemlerimiz ve kusurlarımız birbirinden ayrılamaz, güç ve madde gibi. Onlar ayrıldığında insan bir hiçtir.
-Nikola Tesla-