標題: 51單片機單片機串口通信,單片機接收到的數(shù)據(jù)怎么轉換成10進制 [打印本頁]

作者: 123LI    時間: 2019-4-27 10:13
標題: 51單片機單片機串口通信,單片機接收到的數(shù)據(jù)怎么轉換成10進制
怎么用串口發(fā)送0-225控制不同的LED點亮


作者: 莫名我喜歡你    時間: 2019-4-27 14:24
http://www.torrancerestoration.com/sp/4305.htm
你可以去看這個郭天祥的視頻,里面講的很詳細
作者: ssx666    時間: 2019-4-27 17:00
while(1) { i=串口接收函數(shù)得到的值; if(i==0) 燈滅; if(i==1) 燈亮; while(i==2) { 閃爍; i=串口接收函數(shù)得到的值; if(i!=2) break; } } 大體上就是這個形式,
作者: smarttran    時間: 2019-4-30 16:31
可以參考下這個

#include<STC15F2K60S2.h>

/***********位定義************/
sbit LED0 = P0^0;                // LED0
sbit LED1 = P0^1;                // LED1
sbit LED2 = P0^2;                // LED2
sbit LED3 = P0^3;                // LED3
sbit LED4 = P0^4;                // LED4
sbit LED5 = P0^5;                // LED5
sbit LED6 = P0^6;                // LED6
sbit LED7 = P0^7;                // LED7

sbit LED127 = P3^7;                // LED127

void main(void)
{
        P0M1 = 0x00;
        P0M0 = 0xff;
        P0   = 0x00;
       
        P3M1 = 0x03;
        P3M0 = 0xfe;
        P3   = 0xc3;
       
        SCON = 0xf0;                                // 8位數(shù)據(jù)+1位起始位,可變波特率
        AUXR |= 0x04;                                // 定時器2時鐘為Fosc,即1T
        T2L  = 0x8f;                                // 設定定時初值
        T2H  = 0xfd;                                // 設定定時初值
        AUXR |= 0x10;                                // 啟動定時器2
        ES   = 1;                                        // 允許串口中斷
        while(1)
        {
                switch(SBUF)
                {
                        case 0x00:        LED0 = on;        break;        // LED0燈亮
                        case 0x01:        LED0 = off;        break;        // LED0燈滅
                        case 0x02:        LED1 = on;        break;        // LED1燈亮
                        case 0x03:        LED1 = off;        break;        // LED1燈滅
                        case 0x04:        LED2 = on;        break;        // LED2燈亮
                        case 0x05:        LED2 = off;        break;        // LED2燈滅
                        //        以下省略
                       
                        case 0xfe:        LED127 = on;break;        // LED127燈亮
                        default:        LED128 = off;                // LED127燈滅
                }
        }
}

void UartRcv(void) interrupt 4
{
        if(RI)
        {
                RI = 0;
        }
}




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