16F84 ile takometre yapmaya çalışıyorum

Başlatan Evren KILIÇ, 01 Eylül 2009, 21:04:48

Evren KILIÇ

16F84 ile takometre yapmaya çalışıyorum bu konuda bana yardımcı olurmusunuz yapmak istediğim devre aşagıdaki gibi RA0 daki sinyali bellli bir süre sayıp hesap yapmasını istiyorum ama sinyali saydıramadım sizce nasıl olmalı
http://img177.imageshack.us/i/tako.jpg/


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

TRISA=1  'A portu GİRİŞ olarak ayarlandı.
TRISB=0  'B portu çıkış olarak ayarlandı.
LOW PORTB.2   'RW bacağı ekrana yazmaya imkan vermek için LOW yapıldı.

PAUSE 200  ' LCD nin kullanıma hazır hale gelebilmesi için gerekli süre

LCDOUT $FE,1  'Önce Ekranı siliyoruz.
LCDOUT "TAKOMETRE"

bundan sonrası nasıl olmalı yardım edermisiniz?
[email]evren1623@hotmail.com[/email]

ilker_32

Bu konuda birçok hazır projeler var onları araştır derim.

Kolay gelsin...

Evren KILIÇ

elde olan mlz. var onları değerlendirmek istiyorum yoksa bir sürü mlz .almam gerekecek hem basit bir devre olacak diye düşünüyorum başı bir gelse sonuda gelecek ama gelmiyor
[email]evren1623@hotmail.com[/email]

OG

En basiti ile
COUNT komutunu incele.

W1 VAR WORD
COUNT PORTA.0,100,W1  ' 100ms süresi içindeki palsleri say W1 e yükle

Bundan sonra sayılan palsi motorun durumuna göre değerlendirmen gerekir.
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

Evren KILIÇ

tamam o komutu inceledim diyelimki W1 değişkenine yazılan degeri ben lcd ekranına göndermek istiyorum onu nasıl yapacagım lcdout W1 ile olmayacaktır değilmi
[email]evren1623@hotmail.com[/email]

OG

Olup olmayacakmı denemen gerekir demi. Önce ISIS de şemayı çiz, kodlarını yazıp derle, ve dene bakalım neler olacak. LCDOUT komutu nasıl kullanılır araştırırsan bulursun, forumda hepsi var.
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

Evren KILIÇ

aynen öyle yaptım ama ekranda bişey yok

BASLA
COUNT PORTA.0,1000,W1 ' 1 sn süresi içindeki palsleri say W1 e yükle

LCDOUT W1
GOTO BASLA
END                   'Program sonu
veya
BASLA
COUNT PORTA.0,1000,W1 ' 1 sn süresi içindeki palsleri say W1 e yükle
LCDOUT PORTA.0,  [W1]
şeklinde denedim ama olmadı
[email]evren1623@hotmail.com[/email]

OG

FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

Evren KILIÇ

BASLA
COUNT PORTA.0,1000,W1 ' 1 sn süresi içindeki palsleri say W1 e yükle
LCDOUT $FE, 1,W1
GOTO BASLA
END
şeklinde yaptım ama yine  olmadı şimdi bu counter sayacı 1 sn içinde saydığı palsi W1 içinde  saklıyorsa ve bu degişken  içindeki degeri lcdout yaptığımızda göstermesi gerekmiyormu :(
[email]evren1623@hotmail.com[/email]

OG

FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

OG

FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

Evren KILIÇ

[email]evren1623@hotmail.com[/email]

aslan_korhan

BASLA
COUNT PORTA.0,1000,W1 ' 1 sn süresi içindeki palsleri say W1 e yükle
LCDOUT $FE, 1,DEC W1
GOTO BASLA
END


W1'den önce DEC yazarsan W1 değişkenini Decimal olarak görürsün.
Dünyada 10 çeşit insan vardır. Binary bilen ve bilmeyenler.