16F877A PortE dijital çıkış olarak kullanma

Başlatan ens_azl, 25 Ağustos 2019, 02:13:23

ens_azl

16F877A pic inin PORTA çıkışlarını analog sensör için PORTE çıkışları ise dijital çıkış buton olarak kullanmak istiyorum bunun için

trisa=0b00011111;
trise=0b00000111;

Adcon0=0b10000001;
Adcon1=0b00000010;

Şeklinde ayarladım ancak trise çıkalarına bağladığım butonları çalıştıramıyorum. Analog olarak ayarlarsam çalılıyorlar. Donanımsal olarak sıkıntım yok. Nerede hata yaptığım hakkında bilgi verebilir misiniz?

M.Salim GÜLLÜCE

@ens_azl

Kavramları yerine doğru oturtsak daha iyi olacak.
Buton çıkışı değil girişi denmesi gerek.
"PORTA çıkışlarını analog sensör için PORTE çıkışları ise dijital çıkış.."
dediğinde çıkışmkı girişmi Sorusunu sorarlar.
"PORTA Pinleri" dersen arkasından giriş yada çıkış olarak tanımlamalarla kullanım amacını belirtmiş olmalısın.
İşi bilenler Buton çıkışları desende aslında buton algılayan digital giriş kastettiğini anlayacaklardır.
Genede kafa karıştırmaya müsait ifadeler kullanmışsın.

Ayrıca Devre şemanı eklersen yanlışlarını daha rahat analiz eder arkadaşlarımız.

Bilgine.

ens_azl

O zaman söyle söyleyim öncelikle donanım olarak sorunum yok.

PortA pinlerine analog sensör bağlayarak kullanmak istiyorum.
PortE pinlerine ise buton bağlamak istiyorum.

Bunun için ise;
trisa=0b00011111;
trise=0b00000111;

Adcon0=0b10000001;
Adcon1=0b00000010;

Bu tanımlamaları kullanıyorum.Butonlarım çalışmıyor.

ipek

şöyle bir makale okumuşum,önemli olabilir diye kaydetmişim, fakat PORTE ile hiç tecrübem yok..

PIC16F877A

TRISE register'ının sadece küçük 3 biti PORTE'nin yönünü belirliyor.
Soruna sebep olan TRISE'nin 4. biti olan PSPMODE biti.
Sen TRIS = 255 yazınca bu biti 1 yapıyorsun.

ens_azl

@ipek trise tanımlarken 0b00000111; olarak tanımladım yani 4. Bit 0 ayrıca pspmode 0 olmuş oluyor

RaMu

CMCON = 0x07; bir dene,
olmazsa PORTE çıkış yapıp led bağlayıp,
led yakmayı dene,
şema paylaş,
birde butonun çalışmadığını nereden anlıyorsun?
Sorularınıza hızlı cevap alın: http://www.picproje.org/index.php/topic,57135.0.html

ens_azl

Butonun 1 veya 0 olması durumunda portb de bir led yakıyorum. Şematik sorunum olmadığına eminim. Adc_init() ve adc_read(1) ,adc_read(2) için yazdığım kısımları silince sadece buton okuma kısımları çalıştı  adc tarafında bir sorun var galiba.

mehmet

#7

39582b.pdf, S.128, PCFG3:PCFG0 bitlerini inceleyiniz.

ADCON0 = 0b11000101;  // Frc, AN0
ADCON1 = 0b11000010;  // Frc, (C/R -> 5/0)

RaMu

Alıntı yapılan: ens_azl - 26 Ağustos 2019, 08:43:48Butonun 1 veya 0 olması durumunda portb de bir led yakıyorum. Şematik sorunum olmadığına eminim. Adc_init() ve adc_read(1) ,adc_read(2) için yazdığım kısımları silince sadece buton okuma kısımları çalıştı  adc tarafında bir sorun var galiba.
Program mantığında bir hata vardır,
kodu görmek gerekir.
Sorularınıza hızlı cevap alın: http://www.picproje.org/index.php/topic,57135.0.html

mehmet

#9
RE0, RE1, RE2 buton. Çıkışları RB0, RB1 ve
RB2 deki ledlere bağlı.
AN0(RA0) ve AN1(RA1) de potlar bağlı.
CCP1(RC2) ve CCP2(RC1) deki PWM çıkışlarını
kontrol ediyor.

:060000000A128A11FC2F18
:10062600C030831203139F041F111F108316031378
:100636009F171F171F08F03902389F000800073060
:10064600831603139C008312031385018601870119
:1006560088018901FF30831603138500860187010F
:100666008801FF3089000800831203135F08E10048
:100676005E08E0000310E10CE00C0310E10CE00C56
:10068600600895005E080339E00003300310E00DB2
:10069600FF3E031D492B0310600D0C389700080020
:1006A600831203135F08E1005E08E0000310E10C0B
:1006B600E00C0310E10CE00C60089B005E080339B7
:1006C600E00003300310E00DFF3E031D652B031011
:1006D600600D0C389D000800F3007308F200F20D5F
:1006E600F20DF20D831203131F087206C739720644
:1006F6009F001F140D30F200F20B7F2B83120313A1
:100706001F151F19842B1E08F100831603131E08DC
:10071600F0000800F501F601700871040319C42BF6
:10072600F701F70AF11BA32B01300310F00DF10DB1
:10073600FF3E031D982B0130F4007408F707952B34
:1007460001300310F50DF60DFF3E031DA42B7108B5
:100756007302031DB02B70087202031CB92B7008BC
:10076600F2027108031CF303F3027514013003103F
:10077600F10CF00CFF3E031DBA2B0130F702031DEE
:10078600A32B7608F1007508F00008000030FC0085
:100796000030FB000030FA000030F900701CE72B37
:1007A6007408F907750803110318013E031DFA07BB
:1007B600760803110318013E031DFB077708031192
:1007C6000318013E031DFC070130F8000310F40D69
:1007D600F50DF60DF70DF80BE92B01300310F30CB0
:1007E600F20CF10CF00CFF3E031DF12B73087204A2
:1007F60071047004031DD12B7C08F3007B08F20002
:100806007A08F1007908F00008000030831203131B
:10081600AB000030AA000030A9000030A800230871
:1008260022042104200403195F2CAC01AC0AA31B8B
:100836002A2C0130FD000310A00DA10DA20DA30D61
:10084600FD0B1E2C0130FD007D08AC071A2C013073
:10085600FD000310A80DA90DAA0DAB0DFD0B2C2C48
:1008660023082702031D412C22082602031D412CC2
:1008760021082502031D412C20082402031C522CAA
:100886002008A4022108031C210FA5022208031C2C
:10089600220FA6022308031C230FA70228140130E7
:1008A6000310A30CA20CA10CA00CFF3E031D532C9D
:1008B6000130AC02031D2A2C2B08A3002A08A20033
:1008C6002908A1002808A000080083120313A90123
:1008D600A31F7A2CA009A109A209A309A00A03193A
:1008E600A10A0319A20A0319A30AA901A90AA71FA3
:1008F6008B2CA409A509A609A709A40A0319A50A08
:100906000319A60A0319A70A0130FD007D08A906E6
:100916000030AD000030AC000030AB000030AA0063
:1009260023082204210420040319E02CA801A80AA4
:10093600A31BAB2C0130FD000310A00DA10DA20DD1
:10094600A30DFD0B9F2C0130FD007D08A8079B2CF5
:100956000130FD000310AA0DAB0DAC0DAD0DFD0B66
:10096600AD2C23082702031DC22C22082602031DD4
:10097600C22C21082502031DC22C20082402031CB8
:10098600D32C2008A4022108031C210FA50222084B
:10099600031C220FA6022308031C230FA7022A14F6
:1009A60001300310A30CA20CA10CA00CFF3E031DEA
:1009B600D42C0130A802031DAB2C29080319EE2CF8
:1009C600AA09AB09AC09AD09AA0A0319AB0A0319AE
:1009D600AC0A0319AD0A2D08A3002C08A2002B08A7
:1009E600A1002A08A0000800013083120313BF00EB
:1009F6000030C00000304002113003193F020318D6
:100A0600632D3008A3002F08A2002E08A1002D0890
:100A1600A0003408A7003308A6003208A500310854
:100A2600A4000A128A1108240A128A1183120313D7
:100A36002008B7002108B8002208B9002308BA0028
:100A460002300310BA0CB90CB80CB70CFF3E031DEC
:100A5600242D3808BE003708BD004008F1003F08C5
:100A6600F0003E08F3003D08F2000A128A118D23B9
:100A76000A128A117008FF3E83120313BD00710823
:100A86000318013EFF3EBE0001303E02003003194E
:100A96003D020318552D00303E02023003193D0277
:100AA6000318632D02300310BF0DC00DFF3E031D5A
:100AB600562D00304002113003193F02031C042D4D
:100AC60000304002113003193F02031C742DAD01A2
:100AD600AE0108000430722D0530722D07309200E9
:100AE600812D4008003A0319792D712D3F08013AEE
:100AF60003196D2D053A03196F2D712D3D088316C7
:100B060003139200831203133F08F0004008F1001C
:100B1600F201F3013008F7002F08F6002E08F50061
:100B26002D08F4000A128A11C9230A128A117308C1
:100B360083120313A3007208A2007108A1007008B3
:100B4600A0003408A7003308A6003208A500310823
:100B5600A4000A128A110824831203132108BC0078
:100B66002008BB003C08AE003B08AD00080083121D
:100B760003133608C2003708C3003808C400390812
:100B8600C5003209C6003309C7003409C800350953
:100B9600C900C60A0319C70A0319C80A0319C90AEC
:100BA6004608C20747080318470FDA2DDB2DC3078F
:100BB60048080318480FE02DE12DC407490803181B
:100BC600490AC5074508A3004408A2004308A10036
:100BD6004208A0002E08CA002F08CB003008CC001F
:100BE6003108CD003209CE003309CF003409D000D8
:100BF6003509D100CE0A0319CF0A0319D00A031901
:100C0600D10A4E08CA074F0803184F0F0B2E0C2E99
:100C1600CB0750080318500F112E122ECC0751087F
:100C26000318510ACD074D08F3004C08F2004B0893
:100C3600F1004A08F0003E08D2003F08D300400801
:100C4600D4004108D5003A09D6003B09D7003C0933
:100C5600D8003D09D900D60A0319D70A0319D80ABC
:100C66000319D90A5608D20757080318570F3C2EFE
:100C76003D2ED30758080318580F422E432ED4078B
:100C860059080318590AD5075508F7005408F600FD
:100C96005308F5005208F4000A128A11C9230A12F1
:100CA6008A11730883120313A7007208A60071083D
:100CB600A5007008A4000A128A116824831203137F
:100CC60020083A07DA000030031801302107DC015A
:100CD6000318DC0A3B07DB000318DC0A22085C0762
:100CE600DD010318DD0A3C07DC000318DD0A2308D2
:100CF6005D073D07DD005D08B1005C08B0005B08DC
:100D0600AF005A08AE00080083160313A401A5011C
:100D16000030A3000030A2001E30A1007830A000F1
:100D26007030AA001730AB000A128A1122230A1269
:100D36008A110A128A1113230A128A1183160313BF
:100D4600230883120313B0008316031322088312A9
:100D56000313AF0083160313210883120313AE0097
:100D660083160313200883120313AD000030B4006A
:100D76007A30B3001230B2000030B100831603138C
:100D8600250883120313B60083160313240883125F
:100D96000313B5000A128A11F7240A128A11831264
:100DA60003132D08FE3E83160313AC0083120313B0
:100DB6002E080318013EFF3E83160313AD002A08D2
:100DC6002B040319E02F831203130918FE2E1A3081
:100DD60083120313E300F730E200E20BF02EE30B7D
:100DE600F02EF52E831203130918FE2E061CFD2E77
:100DF6000610FE2E06148918142F1A3083120313B8
:100E0600E300F730E200E20B062FE30B062F0B2F71
:100E1600831203138918142F861C132F8610142F80
:100E2600861409192A2F1A3083120313E300F730A8
:100E3600E200E20B1C2FE30B1C2F212F831203135E
:100E460009192A2F061D292F06112A2F06150030EB
:100E56000A128A116F230A128A1171088316031364
:100E6600A7007008A60001300A128A116F230A1221
:100E76008A11710883160313A9007008A8002608B2
:100E860083120313AE00831603132708831203137A
:100E9600AF00B001B1010030B5000030B400003041
:100EA600B3000030B2000030B9000030B8000330A3
:100EB600B700FF30B6000030BD000030BC00003087
:100EC600BB000030BA00831603132C0883120313E9
:100ED600BE00831603132D0883120313BF00C0013F
:100EE600C1010A128A11BA250A128A118312031342
:100EF6002F08DF002E08DE000A128A1137230A1295
:100F06008A1183160313280883120313AE0083166F
:100F16000313290883120313AF00B001B101003097
:100F2600B5000030B4000030B3000030B20000302D
:100F3600B9000030B8000330B700FF30B60000300B
:100F4600BD000030BC000030BB000030BA00831684
:100F560003132C0883120313BE00831603132D08F4
:100F660083120313BF00C001C1010A128A11BA25F8
:100F76000A128A11831203132F08DF002E08DE00DF
:100F86000A128A1153230A128A110230831203139A
:100F9600E4000430E300B930E200E20BD02FE30BAB
:100FA600D02FE40BD02FD72F013083160313AA02BC
:100FB6000030031CAB03AB02E22E0A30831203138C
:100FC600DE000030DF000A128A1137230A128A1166
:100FD6000A3083120313DE000030DF000A128A1182
:100FE60037230A128A118312031306148614061570
:0A0FF600FB2F83010A128A11872ED7
:02400E00721E20
:00000001FF