01 Haziran 2020, 05:23:46

Haberler:

Foruma Resim Yükleme ve Boyut Sınırlaması ( ! )  https://bit.ly/2GMFb8H


7 Segment 8 Digit Display Kullanımı

Başlatan PICaso, 13 Mayıs 2020, 17: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?nat?ld?.
   
MOVWF PORTB
   MOVLW 0xFE
   MOVWF PORTC
   
   CALL ZAMAN
   
   MOVLW 0x07        
;W kaydedicisine 7 say?s?nat?ld?.
   
MOVWF PORTB
   MOVLW 0xFD
   MOVWF PORTC
   
   CALL ZAMAN
   
   MOVLW 0x6D        
;W kaydedicisine 5 say?s?nat?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, 18: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

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.

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.