找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2248|回復(fù): 0
收起左側(cè)

通過單片機(jī)串口控制LED燈點(diǎn)亮 實(shí)驗(yàn)一

[復(fù)制鏈接]
ID:808939 發(fā)表于 2021-7-18 19:23 | 顯示全部樓層 |閱讀模式
本實(shí)驗(yàn)可以初步了解怎樣通過上位機(jī)來進(jìn)行數(shù)據(jù)的讀取和執(zhí)行。本實(shí)驗(yàn)將仿真打開可以將零到七任意一個(gè)數(shù)字輸入在上位機(jī)中,則相應(yīng)的LED燈會(huì)被點(diǎn)亮。

仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
捕獲.PNG

單片機(jī)源程序如下:
  1. #include "reg51.h"
  2. #define u8 unsigned char//0--255
  3. #define u16 unsigned int//0--65535
  4. //void delay16(u16 i){while(i--);}
  5. #include "uart.h"
  6. u8 code tab[20]={1,2,4,8,16,32,64,128,64,32,16,8,4,2,1};
  7. u8 i=0;//獲取電腦上位機(jī)通過串口發(fā)送過來的數(shù)

  8. void main()
  9. {
  10.         UART1_init();
  11.         while(1);
  12. }

  13. void UART_INT(void) interrupt 4//暫時(shí)只接收1個(gè)數(shù)
  14. {
  15.         if(RI)//如果是串口輸入引起的中斷
  16.         {
  17.                 i=SBUF & 0x0F;//或者i=SBUF-0x30;
  18.                 P1=~tab[i];
  19.                 RI=0;
  20.         }
  21.         else TI=0;//串口輸出引起的中斷,不管
  22. }
復(fù)制代碼
51hei.png
所有資料51hei提供下載:
串口控制1-8個(gè)LED.7z (93.61 KB, 下載次數(shù): 26)


回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表