dot matrix 8x8

elektrobi

Üye
Katılım
18 Ocak 2013
Mesajlar
14
Puanları
1
Merhabalar
74hc164 ile 8x8 dot matriksi çalıştırmaya çalışıyorum ancak isiste gayet güzel çalışmasına rağmen gerçekte çalışmıyor.
Örneğin ekte gönderdiğim çizimde yarısı yanarken gerçekte çok farklı şeyler çıkıyor. bağlantıları isisteki gibi yaptığıma eminim neden çalışmıyor anlamadım.Kullandığım mikroişlemci 16f877a . Yardımcı olabilirseniz çok çok sevineceğim, çok teşekkürler, herkese iyi çalışmalar
smiley.gif


#include <sondisplay.h>



//TODO: User Code
#FUSES NOWDT //No Watch Dog Timer
#FUSES XT //Crystal osc <= 4mhz for PCM/PCH , 3mhz to 10 mhz for PCD
#FUSES NOPUT //No Power Up Timer
#FUSES NOPROTECT //Code not protected from reading
#FUSES NODEBUG //No Debug mode for ICD
#FUSES NOBROWNOUT //No brownout reset
#FUSES NOLVP //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
#FUSES NOCPD //No EE protection
#FUSES NOWRT //Program memory not write protected
#use delay(clock=4000000)

#define DATA pin_d7
#define CLOK pin_d6
int i;
int Shdata[8]={0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f};

void HCLK164(int a)
{
switch (a)
{
case 0: output_high(DATA);break;
case 1: output_low(DATA);break;
case 2: output_low(DATA);break;
case 3: output_low(DATA);break;
case 4: output_low(DATA);break;
case 5: output_low(DATA);break;
case 6: output_low(DATA);break;
case 7: output_low(DATA);break;
}
output_high(CLOK);
delay_us(10);
output_low(CLOK);
}

//Main Program------------------------------------------------------------------
void main() {
setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_CLOCK_DIV_2);

setup_spi(SPI_SS_DISABLED);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
setup_ccp1(CCP_OFF);
setup_comparator(NC_NC_NC_NC);
output_b(0x00);
output_d(0x00);

{
while(1)
for(i=0;i<8;i++)
{
HCLK164(i);
output_b(~Shdata);

delay_us(100);
}
}
}Ekli dosyayı görüntüle denee.rar
 

Ekli dosyalar

  • denee.rar
    16.5 KB · Görüntüleme: 8
bewkleme süreleri degistirebilirsin.proteusla gercek her zaamnn birbirini tutmuyor özellikle dot matrixte.delay_us(100) yerine delay_ms(3) gibi bise yazıp dene istersen
 

Forum istatistikleri

Konular
128,163
Mesajlar
915,583
Kullanıcılar
449,925
Son üye
Taylor Quinntin

Yeni konular

Geri
Üst