单片机论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 323|回复: 3
打印 上一主题 下一主题
收起左侧

基于51单片机的串口控制led灯的亮灭源程序

[复制链接]
跳转到指定楼层
楼主
白的一匹 发表于 2020-7-15 18:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
/*注意设置波特率为4800,向串口不断输入0,便可实现led的亮灭*/
#include "reg52.h"    //此文件中定义了单片机的一些特殊功能寄存器
typedef unsigned int u16;   //对数据类型进行声明定义
typedef unsigned char u8;

sbit led0=P2^0;
sbit led1=P2^1;
sbit led2=P2^2;
/*******************************************************************************
* 函数名         :UsartInit()
* 函数功能     :设置串口
* 输入           : 无
* 输出           : 无
*******************************************************************************/
void UsartInit()
{
SCON=0X50;   //设置为工作方式1
TMOD=0X20;   //设置计数器工作方式2
PCON=0X80;   //波特率加倍
TH1=0XF4;    //计数器初始值设置,注意波特率是4800的
TL1=0XF4;
ES=1;      //打开接收中断
EA=1;      //打开总中断
TR1=1;     //打开计数器
}
/*******************************************************************************
* 函 数 名       : main
* 函数功能   : 主函数
* 输    入       : 无
* 输    出      : 无
*******************************************************************************/
void main()
{
UsartInit();  // 串口初始化
while(1);  
}
/*******************************************************************************
* 函数名         : Usart() interrupt 4
* 函数功能    : 串口通信中断函数
* 输入           : 无
* 输出           : 无
*******************************************************************************/
void Usart() interrupt 4
{
u8 receiveData,i;
if(SBUF=='0')
  led0=~led0;
receiveData=SBUF;//出去接收到的数据
RI = 0;//清除接收中断标志位
SBUF=receiveData;//将接收到的数据放入到发送寄存器
while(!TI);    //等待发送数据完成
TI=0;       //清除发送完成标志位
}

串口控制led.zip

1.06 KB, 下载次数: 4, 下载积分: 黑币 -5

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏2 转播转播 分享分享 分享淘帖 顶 踩
回复

使用道具 举报

沙发
aking991 发表于 2020-7-16 08:22 | 只看该作者
是初学者吗?这种程序只适合测试串口接收是否能接收到数据,但如果用协义进行通讯呢?要学会用协义去通讯执行才有意义,不然也只能是作为测试用罢了
回复

使用道具 举报

板凳
 楼主| 白的一匹 发表于 2020-7-16 15:17 | 只看该作者
aking991 发表于 2020-7-16 08:22
是初学者吗?这种程序只适合测试串口接收是否能接收到数据,但如果用协义进行通讯呢?要学会用协义去通讯执 ...

刚开始学,小白,不懂协议
回复

使用道具 举报

地板
咩咩咩@dxy 发表于 2020-8-2 15:45 | 只看该作者
还是发送不成功哎
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表