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

QQ登錄

只需一步,快速開始

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

基于51單片機(jī)的串口控制led燈的亮滅源程序

[復(fù)制鏈接]
ID:536119 發(fā)表于 2020-7-15 18:26 | 顯示全部樓層 |閱讀模式
/*注意設(shè)置波特率為4800,向串口不斷輸入0,便可實(shí)現(xiàn)led的亮滅*/
#include "reg52.h"    //此文件中定義了單片機(jī)的一些特殊功能寄存器
typedef unsigned int u16;   //對(duì)數(shù)據(jù)類型進(jìn)行聲明定義
typedef unsigned char u8;

sbit led0=P2^0;
sbit led1=P2^1;
sbit led2=P2^2;
/*******************************************************************************
* 函數(shù)名         :UsartInit()
* 函數(shù)功能     :設(shè)置串口
* 輸入           : 無
* 輸出           : 無
*******************************************************************************/
void UsartInit()
{
SCON=0X50;   //設(shè)置為工作方式1
TMOD=0X20;   //設(shè)置計(jì)數(shù)器工作方式2
PCON=0X80;   //波特率加倍
TH1=0XF4;    //計(jì)數(shù)器初始值設(shè)置,注意波特率是4800的
TL1=0XF4;
ES=1;      //打開接收中斷
EA=1;      //打開總中斷
TR1=1;     //打開計(jì)數(shù)器
}
/*******************************************************************************
* 函 數(shù) 名       : main
* 函數(shù)功能   : 主函數(shù)
* 輸    入       : 無
* 輸    出      : 無
*******************************************************************************/
void main()
{
UsartInit();  // 串口初始化
while(1);  
}
/*******************************************************************************
* 函數(shù)名         : Usart() interrupt 4
* 函數(shù)功能    : 串口通信中斷函數(shù)
* 輸入           : 無
* 輸出           : 無
*******************************************************************************/
void Usart() interrupt 4
{
u8 receiveData,i;
if(SBUF=='0')
  led0=~led0;
receiveData=SBUF;//出去接收到的數(shù)據(jù)
RI = 0;//清除接收中斷標(biāo)志位
SBUF=receiveData;//將接收到的數(shù)據(jù)放入到發(fā)送寄存器
while(!TI);    //等待發(fā)送數(shù)據(jù)完成
TI=0;       //清除發(fā)送完成標(biāo)志位
}

串口控制led.zip

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

回復(fù)

使用道具 舉報(bào)

ID:65956 發(fā)表于 2020-7-16 08:22 | 顯示全部樓層
是初學(xué)者嗎?這種程序只適合測(cè)試串口接收是否能接收到數(shù)據(jù),但如果用協(xié)義進(jìn)行通訊呢?要學(xué)會(huì)用協(xié)義去通訊執(zhí)行才有意義,不然也只能是作為測(cè)試用罷了
回復(fù)

使用道具 舉報(bào)

ID:536119 發(fā)表于 2020-7-16 15:17 | 顯示全部樓層
aking991 發(fā)表于 2020-7-16 08:22
是初學(xué)者嗎?這種程序只適合測(cè)試串口接收是否能接收到數(shù)據(jù),但如果用協(xié)義進(jìn)行通訊呢?要學(xué)會(huì)用協(xié)義去通訊執(zhí) ...

剛開始學(xué),小白,不懂協(xié)議
回復(fù)

使用道具 舉報(bào)

ID:805551 發(fā)表于 2020-8-2 15:45 | 顯示全部樓層
還是發(fā)送不成功哎
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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