回覆列表
  • 1 # 使用者5916393697425

    /*採用11MHZ晶振,波特率9600*/

    #include

    #include

    char temp;

    bit flag;

    sbit uart_rd=P3^2;

    void ser() interrupt 4

    {

    RI=0;

    temp=SBUF;

    flag=1;

    }

    void serinit()

    {

    TMOD=0x20;

    TH1=0xfd;

    TL1=0xfd; //設定波特率9600

    SM0=0;

    SM1=1;

    REN=1;

    TR1=1;

    ES=1;

    EA=1;

    }

    void main()

    {

    serinit();

    uart_rd=0;

    while(1)

    {

    if(flag==1) // 判斷是否完成接收

    {

    uart_rd=1;

    flag=0;

    ES=0; // 串列埠中斷關閉

    SBUF=temp; // 將原先發送的值給快取器(接發都是同一個,但意義不一樣)

    while(!TI); //判斷是否傳送完成

    TI=0; // 是則硬體清0

    ES=1; // 再次開啟串列埠中斷

    uart_rd=0;

    }

    }

    }

  • 中秋節和大豐收的關聯?
  • 空心饅頭的做法,空心饅頭怎麼做好吃,空心饅頭?