#include <htc.h>
#include "delay.h"
const unsigned char segment[] = {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F };
void main(void)
{
int i; // Herhangi bir değiĢken tanımlanıyor
i = 0;
RBIE = 0;
INTCON = 0x00;
PIE1 = 0;
PIE2 = 0;
ADCON1=0x07; // PORTA dijital yapılıyor
TRISA=0x01; // PORTA'nın ilk iki pini giriĢ
TRISB=0x00; // PORTB çıkıĢ olarak yönlendiriliyor
TRISC=0x00; // PORTC çıkıĢ yapılıyor
PORTA=0x00; // PORTA'nin tüm çıkıĢları sıfırlanıyor
PORTB=0x00; // PORTB'nin tüm çıkıĢları sıfırlanıyor
PORTC=0x00; // PORTC'nin tüm çıkıĢları sıfırlanıyor
PORTB = segment[i];
while(1)
{
if(RA0==1) // RA0'pini 0 mı?
{
i++;
if(i==10)
i=0;
PORTB = segment[i];
DelayMs(250);
}
/*for(i=0; i<10; i++)
{
PORTB = segment[i];
DelayMs(250);
DelayMs(250);
DelayMs(250);
}*/
}
}
Evet arkadaşlar devrenin son çalışır hali kanıtlanmış bir şekilde aşağıda durmaktadır.
Millet de sanacak gömülü sistem geliştirdik gece gece.
Görüntü biraz bozuktur, idare edin.
Kod:#include <htc.h> #include "delay.h" const unsigned char segment[] = {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F }; void main(void) { int i; // Herhangi bir değiĢken tanımlanıyor i = 0; RBIE = 0; INTCON = 0x00; PIE1 = 0; PIE2 = 0; ADCON1=0x07; // PORTA dijital yapılıyor TRISA=0x01; // PORTA'nın ilk iki pini giriĢ TRISB=0x00; // PORTB çıkıĢ olarak yönlendiriliyor TRISC=0x00; // PORTC çıkıĢ yapılıyor PORTA=0x00; // PORTA'nin tüm çıkıĢları sıfırlanıyor PORTB=0x00; // PORTB'nin tüm çıkıĢları sıfırlanıyor PORTC=0x00; // PORTC'nin tüm çıkıĢları sıfırlanıyor PORTB = segment[i]; while(1) { if(RA0==1) // RA0'pini 0 mı? { i++; if(i==10) i=0; PORTB = segment[i]; DelayMs(250); } /*for(i=0; i<10; i++) { PORTB = segment[i]; DelayMs(250); DelayMs(250); DelayMs(250); }*/ } }