源码下载地址:

源码:

//**********************************************//STC15F2K60S2串口通信程序,将串口接受到的数据从串口发出去
//采用22.1184M晶振,波特率115200
//为方便大家调试,特附该程序的项目工程文件下载地址,下载打开即可调试下载到单片机
//*********************************************源码下载地址:#include <stc15fxxxx.h> //调用stc15f系列头文件,下载地址: http://pan.baidu.com/s/1eRUbjLS/*************常量定义****************/#define MAIN_Fosc 22118400L //主时钟,晶振频率不同的直接在这里修改频率
#define serial_one_read_max 32 //定义缓存区的长度
#define serial_one_baud_rate 115200L //波特率,只需在这里修改波特率就可以了
#define Timer1_Reload (65536UL -(MAIN_Fosc / 4 / serial_one_baud_rate))   //用定时器1做波特率发生器,计算定时器1的重装值/*************变量定义****************/
u8  serial_one_read_data[serial_one_read_max]; //定义串口接受数据缓存区
u8  serial_one_read_count=0; //接受数据的个数//初始化串口1
void serial_one_init()
{
SCON |= 0x40; //8位数据
P_SW1 &=  ~0xc0; //UART1 使用P30 P31口 默认
TR1 = 0; //关闭定时器
AUXR &= ~0x01; //S1 BRT Use Timer1;
TMOD &= ~(1<<6); //Timer1 set As Timer
TMOD &= ~0x30; //Timer1_16bitAutoReload;2
AUXR |=  (1<<6); //Timer1 set as 1T mode
TH1 = (u8)(Timer1_Reload >> 8);
TL1 = (u8)Timer1_Reload;
TR1  = 1; //打开定时器
PS = 1; //高优先级中断
REN = 1; //允许接收
ES  = 1; //允许中断EA = 1; //允许全局中断
}//延时10毫秒
void Delay10ms() //@22.1184MHz
{
unsigned char i, j, k;_nop_();
_nop_();
i = 1;
j = 216;
k = 35;
do
{
do
{
while (--k);
} while (--j);
} while (--i);
}//串口1发送一个字节
void serial_one_send_byte(u8 dat)
{
SBUF = dat;//发送数据
while(!TI);//等待发送完毕
TI=0; //清除发送标志
}//串口1发送字符串
void serial_one_send_string(u8 *dat)
{
while(*dat)
serial_one_send_byte(*dat++);
}//串口1发送指定指定长度数据
void serial_one_send_length_string(u8 *dat,u8 length)
{
u8 i=0;
for(;i < length;i++)
serial_one_send_byte(dat[i]);
}void main()
{
Delay10ms();//延时10毫秒
Delay10ms();//延时10毫秒
serial_one_init();//串口初始化
while(1)
{
if(serial_one_read_count > 0)//如果接受到数据
{
Delay10ms();//延时10毫秒,等待数据全部读入
serial_one_send_length_string(serial_one_read_data,serial_one_read_count);//发送接收到的数据
serial_one_read_count = 0;//接收计数清0
}
}
}/********************* 串口1中断函数************************/
void UART1_int (void) interrupt UART1_VECTOR
{
if(RI)
{
RI = 0;//清除接受标志
serial_one_read_data[serial_one_read_count] = SBUF;//将数据存入数组
if(++serial_one_read_count > serial_one_read_max) //避免溢出
serial_one_read_count = 0;
}// if(TI)
// {
// }
}

STC15-STC15W4K56S4-STC15F2K60S2串口通信程序代码-提供源码下载相关推荐

  1. java验证码源码_Java通用验证码程序及应用示例(提供源码下载)

    评论 # re: Java通用验证码程序及应用示例(提供源码下载) 2009-11-27 17:09 零全零美 多谢博主写出这么好的总结,如果能加上汉字验证码,会更完美!  回复  更多评论 # re ...

  2. Modbus RTU 51单片机从机源码与组态软件通信支持485和232串口通信,该从机源码可直接用于51系列和STC12系列单片机的

    Modbus RTU 51单片机从机源码与组态软件通信支持485和232串口通信,该从机源码可直接用于51系列和STC12系列单片机的,支持功能码01,02,03,04,05,06,0F,10等常用功 ...

  3. EntLib.com Forum – 开源ASP.NET论坛 v3.5(提供源码下载)

    EntLib.com Forum – 开源ASP.NET论坛 v3.5(提供源码下载) EntLib.com Forum 开源ASP.NET 论坛系统是EntLib.com 小组基于YAF开源论坛,定 ...

  4. EntLib.com Forum – 开源ASP.NET论坛 v4.0(提供源码下载)

    EntLib.com Forum – 开源ASP.NET论坛 v4.0(提供源码下载)  EntLib.com Forum 开源ASP.NET 论坛系统是EntLib.com 小组基于YAF开源论坛进 ...

  5. Open Source Blog 开源ASP.NET/C# 博客平台 v2.5 发布(提供源码下载)

    EntLib.com Blog 开源ASP.NET/C# 博客平台 v2.5 发布(提供源码下载)   基于Subtext v2.0 开源ASP.NET博客系统的中文汉化及定制化开发,EntLib.c ...

  6. 新浪微博PC客户端(DotNet WinForm C# 版,C#调用新浪微博API代码,源码下载)—— 初探 (第二部分内置链接)

    第二篇:新浪微博PC客户端(DotNet WinForm版)--功能实现分解介绍 C#源码下载 最近兴趣使然尝试了一下使用DotNet技术实现新浪微博PC客户端,几天时间,目前实现登录.微博列表.发布 ...

  7. 【2013Esri中国用户大会】引人关注的Web开发(部分提供源码下载)

    演示视频地址:http://v.youku.com/v_show/id_XNjMxNzU2ODQw.html 对于开发者来说,除了移动的Runtime之外,ArcGIS Web API也在不断进行版本 ...

  8. 印章WinForm自定义控件封装,提供源码下载

    看了"康忠鑫-Stephen"的文章(http://www.cnblogs.com/axing/archive/2013/06/04/3116328.html)知道了C#如何通过g ...

  9. 交通运输部·车载导航系统——终端如何与服务器通信——玩转通信协议(源码下载)...

    一.引子与协议说明 之前开发了一个项目--车载导航系统.遇到的第一个问题就是硬件设备如何与服务器通信. 关键在于通信协议! 众所周知:要想实现通信,首先通信双方就要达成通信协议. 话不多说,且看协议: ...

最新文章

  1. xtrabackup备份mysql_配置xtrabackup备份mysql数据库
  2. ECCV 2018 | 美图云联合中科院提出基于交互感知注意力机制神经网络的行为分类技术...
  3. 从未加入域的计算机上使用Windows验证方式访问SQL Server
  4. 个人博客代码_Solo小众开源博客系统:手把手教你搭建自己的博客系统
  5. 推荐一个短小精干的JavaScript对话框
  6. linux下面破解rar压缩包密码
  7. Lazarus安装使用
  8. “24小时城市图鉴”看人间,每个城市都有属于她的独特记忆!
  9. Java基础---File类,就是这么简单
  10. Mr.J--Bootstrap使用
  11. 笔记(4)——Analyzing Communities and Their Evolutions in Dynamic Social Networks
  12. c语言定积分的基本思想_积分的计算方法、技巧、思路总结~
  13. WGS84地球坐标系,GCJ02火星坐标系,BD09百度坐标系简介与转换
  14. 成都拓嘉辰丰:拼多多商家是否可以代销
  15. ffmpeg 抽取视频原始编码数据(mpeg4)方法
  16. 实现发送Http请求的两种方法
  17. vmware连接服务器失败响应时间过长,VMware存储性能问题排错指南
  18. phpqrcode简单在线二维码生成工具源码 非第三方接口
  19. HTML+CSS实现炫酷的登录界面
  20. 摄像头 - 屏幕刷新率(Hz)与帧率(fps)的区别与关系

热门文章

  1. java把中文符号替换成英文符号
  2. 打扮家能否将齐家网变成过去时?
  3. 删除IE下所有临时文件
  4. iOS:GPUImage 简介及滤镜
  5. 苹果6换屏多钱_自贸区专业苹果6换个外屏多少钱
  6. php将数组转化成json字符串,php数组怎么转成json字符串
  7. aidl调用失败的原因
  8. mysql语句记录学习(备忘)
  9. 上海鲁班软件 笔试 面试 回忆
  10. 从星座文化走红背后,看其发展新前景