標(biāo)題: 兩個(gè)89C52單片機(jī)之間的串口通信代碼 [打印本頁(yè)]

作者: LHY_lhy    時(shí)間: 2021-7-13 10:36
標(biāo)題: 兩個(gè)89C52單片機(jī)之間的串口通信代碼
學(xué)習(xí)了串口通信 嘗試了一下單片機(jī)與單片機(jī)之間的串口通信
使用UART協(xié)議

主要實(shí)現(xiàn)了在主機(jī)上按下獨(dú)立按鍵 然后從機(jī)上的LED燈顯示

主機(jī)發(fā)送的main.c

#include "regx52.h"
#include <UART.h>
#include <Key.h>
#include <Delay.h>


unsigned char keyn;
void main()
{
          UART_Init();
    while(1)
                {
                        keyn=Key();
                        switch(keyn)
                        {
                                case 1:UART_SendByte(keyn);break;
                                case 2:UART_SendByte(keyn);break;
                                case 3:UART_SendByte(keyn);break;
                                case 4:UART_SendByte(keyn);break;
                        }
                        keyn=0;
                }
}





從機(jī)接收的main.c
#include "regx52.h"
#include <UART.h>
#include <Key.h>
#include <Delay.h>


sbit LED1=P2^0;
sbit LED2=P2^1;
sbit LED3=P2^2;
sbit LED4=P2^3;
unsigned char keyn;
// 主機(jī)按下獨(dú)立按鍵 從機(jī)的LED亮燈或滅燈//
void main()
{
          UART_Init();
    while(1)
                {
                  switch(keyn)
                        {
                                case 1:LED1=0;break;
                                case 2:LED1=1;break;
                                case 3:LED2=0;break;
                                case 4:LED2=1;break;
                        }
                }
}
void UART_R() interrupt 4
{
                         keyn=SBUF;
                         RI=0;
                         SBUF=keyn;
                         while(!TI);
                                        TI=0;
                        
}



其他的模塊代碼都在附件中

51hei.png (2.69 KB, 下載次數(shù): 119)

51hei.png

單片機(jī)與單片機(jī)通信.zip

66.93 KB, 下載次數(shù): 42, 下載積分: 黑幣 -5






歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1