7 Segment 8 Digit Display Kullanımı

Başlatan PICaso, 13 Mayıs 2020, 14:45:23

PICaso

Arkadaşlar Merhaba,

Resimde de paylaştığım üzere bu devrede displaye sabit bir sayı yazdırmak istiyorum.

NUMARA
   MOVLW 0x06        ;W kaydedicisine 1 say?s?n? at?ld?.
   MOVWF PORTB
   MOVLW 0xFE
   MOVWF PORTC
   
   CALL ZAMAN
   
   MOVLW 0x07        ;W kaydedicisine 7 say?s?n? at?ld?.
   MOVWF PORTB
   MOVLW 0xFD
   MOVWF PORTC
   
   CALL ZAMAN
   
   MOVLW 0x6D        ;W kaydedicisine 5 say?s?n? at?ld?.
   MOVWF PORTB
   MOVLW 0xFB
   MOVWF PORTC
  
   CALL ZAMAN
   
   GOTO NUMARA
   
   
ZAMAN   	
movlw .255    	; desimal olarak 255 sayısını w registerine yükle
movwf R7    	; w registerindeki sayıyı R7 registerine yükle
z0      	
movlw   .255   	; desimal olarak 255 sayısını w registerine yükle
movwf   R6    	; w registerindeki sayıyı R6 registerine yükle
z1      	
decfsz  R6,F  	; R6 nin değerini bir azalt ve 0 değilse 
goto    z1      	; Z1 ye git
decfsz  R7,F  	; R7 in değerini bir azalt ve 0 değilse
goto    z0      	; Z0 e git
retlw   00      	; geldiğin yere geri git

Bu şekilde sadece ilk 3 digiti çalıştırdım. 1. digite sayı geliyor, 1. digitteki sayı gidince 2. digitteki sayı geliyor, 2. digitteki kapanınca 3. digitteki sayı geliyor, sırasıyla böyle devam ediyor.
Süreyi kısaltmayı düşündüm ama bu seferde 3 digitte farklı şekiller oluşmaya başladı.

Sağlıcakla kalın.


quarko

Proteus gerçek zamanlı olarak 7 segment displayi çalıştıramadığı için farklı şekiller oluşması normaldir. Gerçekte olduğu gibi görüntü elde etmek beklenmemeli bu yüzden.
"Aslanlar kendi hikayelerini yazmadıkça, avcıların kahramanlık hikayelerini dinlemek zorundayız."

PICaso

Alıntı yapılan: quarko - 13 Mayıs 2020, 15:31:59Proteus gerçek zamanlı olarak 7 segment displayi çalıştıramadığı için farklı şekiller oluşması normaldir. Gerçekte olduğu gibi görüntü elde etmek beklenmemeli bu yüzden.
Elimde bu displayden olmadığı için reelde deneyemeyeceğim. Program kurgusu sizce doğru mu? Bekleme zamanı kaç ms olmalıdır?

mehmet

Display özelliklerinden süresini
50uS ye kadar indirebilirsiniz
şimdilik.
Birinci display açılır, rakam
yollanıp bir süre bekkenir.
Boş veri yollanır. İkinci display
açılır. Bu şekilde devam eder...
Süre kısmını izlereyek
bakabilirsiniz
Olan olmuştur,
olacak olan da olmuştur.
Olacak bir şey yoktur.
---------------------------------------------
http://www.mehmetbilgi.net.tr

quarko

50us çok kısa bir süre. Eğer tarama işini kesme ile yapıyorsan, gereksiz yere sürekli kesmeye gitmiş olacaksın. Ayrı aşırı hızlı tararsan, parlaklıkta bir miktar kaybolacaktır. O yüzden optimum bir süre tercih etmelisin. Bunun içinde 2msn gibi bir süre yeterli olacaktır.
"Aslanlar kendi hikayelerini yazmadıkça, avcıların kahramanlık hikayelerini dinlemek zorundayız."

mehmet

Proteus daki dispay süresinden
bahsediyorum.
Olan olmuştur,
olacak olan da olmuştur.
Olacak bir şey yoktur.
---------------------------------------------
http://www.mehmetbilgi.net.tr

sadogan

Kurgun doğru,call zaman dansornra
   MOVLW 0xFF
   MOVWF PORTC
  göndererek
@mehmet hocanında dikkat çekti gibi ışık veren segmentlerı kapatmalısın, yoksa gölge yapıyor.