7 segment termometre

Başlatan memleket, 20 Şubat 2014, 00:42:23

memleket

aşağıdaki resimde ve kodlarını verdiğim (asm ve hex) termometre devresini bir türlü çalıştıramadım. board üzerinde yapıyorum. 2 tane PIC entegre var. 2 side sağlam. içerisine başka hex atıp başka bir devrede çalıştıra biliyorum. displayde ekranda rakamlar çıkıyor ama eksik veya fazla gösteriyor. karakterler bozuk çıkıyor yani. elimi DSDS18B20 dokundurduğumda rakamların değiştiğini görebiliyorum.
bu konu hakkında yardımcı olabilir misiniz.

Parts List:
         
PIC16F628A Microcontroller    1    U1
Dallas DS18B20 Digital Temperature Sensor    1    U2
LED 7 Segment (Common Cathode)    4    D1 - D4
BC548 NPN Transistor    4    Q1 - Q4
         
Resistors         
330Ω    1    R12
470Ω    7    R5 - R11
4.7KΩ    1    R14
10KΩ    5    R1 - R4, R13
         
Capacitors         
.1μF Multilayer Ceramic    2    C1 - C2
              
Power Requirements         
5 Volt DC Regulated, 100mAh




memleket

belki bozulmuş olabilir diye başka pic denedim. displayde abuk subuk karekterler çıkıyor

ete

Buda gösteriyorki kullandığın display yanlış. Ortak katod yerine ortak anot kullanıyorsun.

Ete

memleket

asm dosyasından Ortak katod için düzenleme yapılabilrmi acaba... saygılar..

ete

Sistem zaten ortakkatod çalışıyor. Sen mutlaka ortak anot display kullanmışsındır diyordum.
Bir defa Ortak Katod nedir Ortak Anot nedir biliyormusun?
Ben yinede açıklayayım.
7 segment displayde 7 adet segment ledi bulunur. Her bir çizgi bir led'dir Bu ledlerin bir uçları ortaktır. O ortak uca GND bağlayıp segment uçlarını + besleme verince segmentler yanıyor ise o display ortak katod dur.
Ortak uca + besleme verip segment uçlarına Low verinde segment ledleri yanıyor ise o display ortak anot dur.
Aslında ortak katod ile çalışan bir devreye ortak anot bağlayınca display hiç çalışmaması gerekir. Zira ortak uca ters gerilim uygulamış olursunki bu displey segmentlerinin hiç yanmayacağı anlamına gelir.
Ama abuk subuk şeyler gösteriyor deyince aklıma ortak katod yerine ortak anot kullanabileceğin ihtimali geldi.
Tabiiki bir ihtimal daha var oda bacak bağlantıları yanlış bir display kullanıyorsunda olabilir.
Bu nedenle bir test yapman daha doğru olur. Elindeki displayin bir ortak ucunu bulmaya çalış. Bunun için aşağıdaki adımları takip et,
1. Ortak ucu biliyor isen o uca direk GND bağla voltajı ayarlayabiliyorsan 2V ta ayarla ayarlayamıyorsan 5V voltajı 330 Ohm direnç seri bağlayarak segment uçlarında gezdir. Şayet segmentler yanıyor ise elindeki display ortak katod dur.
2. Şayet bir sonuç alamıyorsan bu sefer ortak uca direk +5V bağla ve segmentlere Gnd yi 330 ohm direnç ile vermeye çalış.
Segmentler yanıyor ise elindeki display ortak anot dur.
3. Şayet displayın uçlarını bilmiyor isen ilk sıradaki pine GND ver ve 330 ohm üzerinden gelen +5V u diğer bacaklara dokundurarak test yap. Şayet yanan segment görürsen kullandığın ve GND bağladığın uç ortak uçtur.
Aynı testi ortak anot olarakda yapabilirsin.
Sonuç olarak displayın ortak ucunun ne olduğunu tespit et daha sonrada A-B-C-D-E-F-G uçlarını bul.
A segmenti, 8 rakamının en yukarda olan yatay çizgisidir.
B segmenti 8 rakamının üst gözün sağdaki dikey çizgisidir.
C segmenti 8 rakamının alttaki gözüne ait sağdaki dik çizgidir.
D segmenti 8 rakamının alttaki gözünün en altındaki yatay çizgidir.
E segmenti 8 rakamının alttagi gözünün soldaki dik çizgisidir.
F segmenti 8 rakamının üstteki gözünün soldaki dik çizgisidir.
G segmenti ise 8 rakamının ortadaki yata çizgisidir.
Bu uçları bulup şemaya göre bağlarsan belki mutlu sona ulaşırsın.

Programdan değişiklik yapılması kolay değil bunuda bilmiş olasın.

Ete


memleket

#5
Alıntı yapılan: memleket - 04 Mayıs 2014, 20:05:22
asm dosyasından Ortak katod için düzenleme yapılabilrmi acaba... saygılar..

dikkat etmeden yazmışım ortak anod için yazacaktım... evet elimdeki 3 tane 7 segment displayde ortak anodlu.. Ortak uçların  herhangi birine + verip diğer uçlara - verdiğimde ledler yanıyor.

ete

Bana kalırsa ortak katod bir display satın al ve kullan.
İllaki anot kullansyım diyorsan, hem program hemde devren değişmesi gerekecek. Önce devreye bakalım, segmentlere giden bilgi ters çevrilecek. Ayrıca npn transistörle sürülmüş olan ortak uçlar pnp ile sürülecek ve o transistörleri süren bilgi de ters çevrilecek.
Bu yazılım değişikliği,
Donanımda ise yalnızca ortak uçları siren transistörler değişecek bunlar pnp yapılıp emiterleri +5v ta bağlanacak. Mevcut npn lerde kullanılabilir . Bu durumda collectorler +5v ta bağlanıp emitterler 470 ohm ile gnd ye bağlanacak ve emitterlerden çıkış alıp ortak uçlara bağlanacak.
Ben olsam ortak katod bulur işi bitirirdim.

Ete

memleket

İlgin için sağol hocam...

Powered by EzPortal