51单片机串口通信


-
51单片机通信课程代码啊!
-
2019-07-18
394KB
51单片机串口通信程序 含详细例子
2014-03-16含详细例子,RS232串口通信单片机接收发送数据的 C51程序,手把手教你用增强型51 实验板实现RS232 串口通信
串口通信的C51单片机程序下载_course
2020-12-30beep bit p3.7 ;蜂鸣器定义 相关下载链接://download.csdn.net/download/u011113464/5603307?utm_source=bbsseo
C语言51单片机串口通信程序求教_course
2013-11-17#include <reg51.h> #include <string.h> #include <intrins.h> #define INBUF_LEN 4 //数据长度 unsigned char inbuf1[INBUF_LEN]; unsigned char checksum,count3; bit read_flag=0; void init_serialcomm(void) { SCON = 0x50; //SCON: serail mode 1, 8-bit UART, enable ucvr TMOD |= 0x20; //TMOD: timer 1, mode 2, 8-bit reload PCON |= 0x80; //SMOD=1; // TH1 = 0xF4; //Baud:4800 fosc=11.0592MHz TH1 = 0xFD; //Baud:19200 fosc=11.0592MHz TL1 = 0xFD; //Baud:19200 fosc=11.0592MHz // IE |= 0x90; //Enable Serial Interrupt ES = 1; //使能串口中断 EA = 1; //打开主中断 TR1 = 1; // timer 1 run // TI=1; } //向串口发送一个字符 void send_char_com(unsigned char ch) { SBUF=ch; while(TI==0); TI=0; } //向串口发送一个字符串,strlen为该字符串长度 void send_string_com(unsigned char *str,unsigned int strlen) { unsigned int k=0; do { send_char_com(*(str + k)); k++; } while(k < strlen); } //串口接收中断函数 void serial () interrupt 4 using 3 { if(RI) { unsigned char ch; RI = 0; ch=SBUF; // count3=0; inbuf1[count3]=ch; count3++; if(count3==(INBUF_LEN)) { read_flag=1; count3=0; } } else if(TI) { TI=0; } } main() { init_serialcomm(); //初始化串口 count3=0; while(1) { if(read_flag) //如果取数标志已置位,就将读到的数从串口发出 { read_flag=0; //取数标志清0 send_string_com(inbuf1,INBUF_LEN); } } } 以上程序代码参考自龚建伟 串口中断接收、发送例程。本意是通过串口发送4个字节数据,单片机串口接收后,发送回4个字节数据(在串口助手显示出来)。 但我通过uvison3下载到stc12c5a60s2最少单片机系统,通过串口测试工具(波特率19200,校验位:无,数据位:8,停止位:1)发送数据为:ff ff ff ff (十六进制发),十六进制收,结果为发送4字节,接收2字节,串口助手接收到显示为77 ff, 程序不知道是哪里出错了,求正解。 我自己分析如下: 发送4字节,只接收到2字节?首先怀疑是串口初始化问题,但查不出。再看缓存的4字节数据,也提供了足够的空间,处理上也看不出问题。哪位高手指点下。非常感谢!!!
-
博客
Predicting drug–disease associations through layer attention graph convolutional network
Predicting drug–disease associations through layer attention graph convolutional network
-
学院
MaxScale 实现 MySQL 读写分离与负载均衡
MaxScale 实现 MySQL 读写分离与负载均衡
-
博客
2推荐系统设计
2推荐系统设计
-
博客
Item-Based CF 预测评分
Item-Based CF 预测评分
-
下载
Novel scheme enabling broadcast signal transmission in WDM passive optical network
Novel scheme enabling broadcast signal transmission in WDM passive optical network
-
博客
@Secured注解的使用
@Secured注解的使用
-
博客
LeetCode 1190. 反转每对括号间的子串--栈储存
LeetCode 1190. 反转每对括号间的子串--栈储存
-
学院
MySQL 高可用工具 DRBD 实战部署详解
MySQL 高可用工具 DRBD 实战部署详解
-
下载
排队叫号系统V1.0 -- By Kingzd.rar
排队叫号系统V1.0 -- By Kingzd.rar
-
学院
虚幻4引擎基础
虚幻4引擎基础
-
学院
基于python的dango框架购物商城毕业设计毕设源代码使用教程
基于python的dango框架购物商城毕业设计毕设源代码使用教程
-
学院
工程制图 AutoCAD 2012 从二维到三维
工程制图 AutoCAD 2012 从二维到三维
-
博客
leetcode 867.转置矩阵
leetcode 867.转置矩阵
-
学院
使用 Linux 平台充当 Router 路由器
使用 Linux 平台充当 Router 路由器
-
学院
ELF视频教程
ELF视频教程
-
学院
基于Qt的LibVLC开发教程
基于Qt的LibVLC开发教程
-
学院
Galera 高可用 MySQL 集群(PXC v5.6 + Ngin
Galera 高可用 MySQL 集群(PXC v5.6 + Ngin
-
下载
ResPr-UNet-3D去噪高效管道TF-keras:3D图像降噪使用改进的U-Net架构,可利用先前的图像。 使用基于keras和tf.data.Dataset API的高效张量流管道训练模型-源码
ResPr-UNet-3D去噪高效管道TF-keras:3D图像降噪使用改进的U-Net架构,可利用先前的图像。 使用基于keras和tf.data.Dataset API的高效张量流管道训练模型-源码
-
下载
Hadoop集群datanode磁盘不均衡的解决方案
Hadoop集群datanode磁盘不均衡的解决方案
-
博客
07 - 线程池与Lambda表达式
07 - 线程池与Lambda表达式
-
博客
【树】112. 路径总和 & 113. 路径总和 II & 129. 求根到叶子节点数字之和 & 257. 二叉树的所有路径 && 437. 路径总和 III & 687. 最长同值路径
【树】112. 路径总和 & 113. 路径总和 II & 129. 求根到叶子节点数字之和 & 257. 二叉树的所有路径 && 437. 路径总和 III & 687. 最长同值路径
-
下载
使用不同的分类器根据临床参数预测三阴性乳腺癌患者的复发
使用不同的分类器根据临床参数预测三阴性乳腺癌患者的复发
-
博客
11、Java中public static void main(String [] args)方法有哪些定义格式?
11、Java中public static void main(String [] args)方法有哪些定义格式?
-
下载
基于移动用户特征预测的HAPS通信热点区域的信道分配
基于移动用户特征预测的HAPS通信热点区域的信道分配
-
博客
锁升级过程和锁状态
锁升级过程和锁状态
-
下载
在低烧结温度下加工具有匹配导磁率和介电常数的低损耗NiZnCo铁氧体,可用于VHF-UHF天线的小型化
在低烧结温度下加工具有匹配导磁率和介电常数的低损耗NiZnCo铁氧体,可用于VHF-UHF天线的小型化
-
下载
同时更新双能计算机断层扫描的光谱和图像的迭代算法。
同时更新双能计算机断层扫描的光谱和图像的迭代算法。
-
学院
iptables 企业级防火墙配置(四表五链)
iptables 企业级防火墙配置(四表五链)
-
学院
access应用的3个开发实例
access应用的3个开发实例
-
博客
2021-02-26
2021-02-26