اطلاعیه

Collapse
No announcement yet.

برنامه فرستنده گیرنده

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

    برنامه فرستنده گیرنده

    سلام لطفا یه کمک فوریه فوریه بهم برسونید :sad:من توضیح این برنامه هارو نمیفهمم
    #include <avr/io.h>
    #include <util/delay.h>
    #ifndef F_CPU
    //define cpu clock speed if not defined
    #define F_CPU 8000000
    #endif
    //set desired baud rate
    #define BAUDRATE 1200
    //calculate UBRR value
    #define UBRRVAL ((F_CPU/(BAUDRATE*16UL))-1)
    //define receive parameters
    #define SYNC 0XAA// synchro signal
    #define RADDR 0x44
    #define LEDON 0x11//switch led on command
    #define LEDOFF 0x22//switch led off command

    void USART_Init(void)
    {
    //Set baud rate
    UBRRL=(uint8_t)UBRRVAL; //low byte
    UBRRH=(UBRRVAL>>8); //high byte
    //Set data frame format: asynchronous mode,no parity, 1 stop bit, 8 bit size
    UCSRC=(1<<URSEL)|(0<<UMSEL)|(0<< UPM1)|(0<<UPM0)|
    (0<<USBS)|(0<<UCSZ2)|(1<<UCSZ1)| (1<<UCSZ0);
    //Enable Transmitter and Receiver and Interrupt on receive complete
    UCSRB=(1<<TXEN);
    }
    void USART_vSendByte(uint8_t u8Data)
    {
    // Wait if a byte is being transmitted
    while((UCSRA&(1<<UDRE)) == 0);
    // Transmit data
    UDR = u8Data;
    }
    void Send_Packet(uint8_t addr, uint8_t cmd)
    {
    USART_vSendByte(SYNC);//send synchro byte
    USART_vSendByte(addr);//send receiver address
    USART_vSendByte(cmd);//send increment command
    USART_vSendByte((addr+cmd));//send checksum
    }
    void delayms(uint8_t t)//delay in ms
    {
    uint8_t i;
    for(i=0;i<t;i++)
    _delay_ms(1);
    }
    int main(void)
    {
    USART_Init();
    while(1)
    {//endless transmission
    //send command to switch led ON
    Send_Packet(RADDR, LEDON);
    delayms(100);
    //send command to switch led ON
    Send_Packet(RADDR, LEDOFF);
    delayms(100);
    }
    return 0;
    }

    #2
    پاسخ : برنامه فرستنده گیرنده

    چیش رو نمیفهمید
    این ها برنامه با زبان cهست
    مشکل رو کامل بگید تا بشه کمک کرد
    از دو چیز بسیار زیاد یاد گرفتم (1) نمونه مدارهای موجود در سایت های خارجی (2) مهندسی معکوس بردهای غیر ایرانی. به نقل از آقای مرتضی امانی
    --------------------------------------------------------
    تمام دنیا ما را تحریم کرده اند؛ حداقل خودمان همدیگر را تحریم نکنیم. به نقل از pencil
    --------------------------------------------------------
    اشک هایی که پس از هر شکست ریخته میشوند همان عرق هاییست که برای پیروزی ریخته نشده است. mehran901

    دیدگاه

    لطفا صبر کنید...
    X