اطلاعیه

Collapse
No announcement yet.

سوال در مورد برنامه نویسی spi میکرو

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    سوال در مورد برنامه نویسی spi میکرو

    با سلام :
    من یه برنامه از این انجمن واسه تابلو روان دانلود کردم که از تکنولوژی spi در اون استفاده شده اما متاسفانه از کد های نوشته شده سر در نمیارم که اگه کمکم کنین ممنون میشم
    اینم کدهای برنامه :
    #include <mega48.h>

    // SPI functions
    #include <spi.h>

    // Declare your global variables here
    #define LOAD PORTB.2 // connect to pin 12 of all 74HC595
    flash unsigned int power[8]={1,2,4,8,16,32,64,128};

    void main(void)
    {
    // Declare your local variables here
    unsigned char i,row,frame[24][5];

    // Input/Output Ports initialization
    // Port B initialization
    // Func7=In Func6=In Func5=Out Func4=In Func3=Out Func2=Out Func1=Out Func0=In
    // State7=T State6=T State5=0 State4=T State3=0 State2=0 State1=0 State0=T
    PORTB=0x00;
    DDRB=0x2E;


    // SPI initialization
    // SPI Type: Master
    // SPI Clock Rate: 2*5000.000 kHz
    // SPI Clock Phase: Cycle Start
    // SPI Clock Polarity: Low
    // SPI Data Order: MSB First
    SPCR=0x54;
    SPSR=0x01;

    while (1)
    {
    // Place your code here
    //load 1 frame from memory
    for(row=0;row<24;row++)
    {
    for(i=0;i<5;i++)
    {
    spi(frame[i][0]);
    };
    if(row<8)
    {
    spi(0);
    spi(0);
    spi(power[row]);
    }
    else
    {
    if(row<16)
    {
    spi(0);
    spi(power[row-8]);
    spi(0);
    }
    else
    {
    spi(power[row-16]);
    spi(0);
    spi(0);
    };
    };
    };
    LOAD=1;
    LOAD=0;
    };
    }
    چو ایران نباشد تن من مباد
لطفا صبر کنید...
X