logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Atmega 128 VMlab , Avr, przesuwany napis ,

Początkujący30 18 Sty 2010 23:21 1365 0
REKLAMA
  • #1 7556386
    Początkujący30
    Poziom 1  
    Witam dopiero co zaczynam programować , i mianowicie chodzi mi o przesuwający się napis i sterowanie prędkością tego przesuwania np. za pomocą potencjometru , jak narazie udało mi się napisać program wyświetlający cyferki , wiem że nie jest to przesuwanie , ale może ktoś mi podpowie co mam poprawić . Z góry dziękuję Dodam tylko że podłączony jest wyświetlacz 7 segmentowy .Używam programu VMLAB +kompilatorWinAVR-najnowszy

    
    #include <avr\io.h>              // Most basic include files
    #include <avr\interrupt.h>       // Add the necessary ones
    #include <avr\signal.h>
    #include <avr\delay.h>
    #define F_CPU 11059200
    
    char znak[16]={0x3F,0x06,0x5B,0x4F,
                   0x66,0x6D,0x7D,0x07,
                   0x7F,0x6F,0x77,0x7C,
                   0x58,0x5B,0x79,0x71};
    
    void hw_init(void) {  // Put the open brace '{' here
    
       DDRA=0xff;
       DDRE=0xff;
       PORTE=(1<<PE6);
       PORTA=0x77;
    }
    
    //**************************************
    
    int main(void) {
       char seg[4]={0x3f,0x70,0x79,0x3d}; //,0x07,0x07};
    
       while(1) {
          hw_init();
    
    for(int p=0;p<6;p++)
    {
         for(int s=0;s<4;s++)
          {
         PORTA=0x00;
         PORTE=(1<<(7-s));
         PORTA=znak[s+p];
          _delay_ms(50000);
     }
         _delay_ms(50000);
         }
       }
    
    }


    Przeniesiono z Programowanie Ogólne. - arnoldziq
  • REKLAMA
REKLAMA