1. STC单片机串口


2. PSW是一个8位寄存器。PSW的全称是Program Status Word,即程序状态字。


奇偶标志位P
每执行一条汇编指令,单片机都能根据A中1的个数的奇偶自动令P置位或清零,奇为1,偶为0。P可以填入TB8,作为偶校验。
此标志位对串行通信的数据传输非常有用,通过就校验可以检验传输的可靠性。

3. 奇偶校验

奇校验(odd parity):让传输的数据(包含校验位)中1的个数为奇数。

偶校验(even parity):让传输的数据(包含校验位)中1的个数为偶数。

4. STC单片机串口实现偶校验
//uart.c
unsigned char var0,var;     //var0一定要是全局变量void Uart_isr( void ) interrupt 4
{uint8_t tmpBuf;RI = 0;tmpBuf= SBUF;var = tmpBuf; var0= 0;var += var0;if(RB8 == P)        //偶校验OK{//数据接收处理}
}void Uart1Init(void)
{//SCON = 0x40; //0100,0000 8 位可变波特率,无校验位, 串口1模式1SCON = 0xC0; //1100,0000 9 位可变波特率,偶校验位, 串口1模式3//其他串口初始化代码}
void UartSend(uint8_t var)
{var0 = 0;var += var0;TB8 = P;SBUF = var;//其他串口发送代码
}

51单片机实现串口偶校验相关推荐

  1. 51单片机(STC)串口无阻塞发送函数

    目录 一.简介 1.1.开发环境 1.2.功能描述 二.串口程序 2.1.串口配置 2.2.变量定义 2.3.中断函数 2.4.发送函数 一.简介 1.1.开发环境 KeilC51,单片机型号STC1 ...

  2. 51单片机stc15w204s串口通信发数据接收数据串口中断发中文字符串完美运行软件延时发送一字节函数全注释

    这里写自定义目录标题 KEIL自己先调试通了然后再说下面的事 51单片机stc15w204s串口通信直接上文件 KEIL自己先调试通了然后再说下面的自己看看就可 KEIL自己先调试通了然后再说下面的事 ...

  3. 51单片机之串口波特率配置

    51单片机之串口波特率计算 方式0的波特率配置 方式2的波特率配置 方式1和3的波特率配置 232串口模式,共有4钟方式,其中方式0.方式2的波特率是固定的.方式1.方式3的是可变波特率,这两个是用T ...

  4. MATLAB与51单片机进行串口通信详解

    目录 一.51单片机与电脑进行串口通信 二.MATLAB串口通信函数 三.串口属性 四.示例Demo 4.1 MATLAB接收单片机发来的数据 4.2 MATLAB向单片机发送数据控制LED 五.总结 ...

  5. 51单片机串口通讯c语言程序,如何使用51单片机实现串口通信

    描述 STC51单片机一般带有1个串口,有的带有2个串口,串口一般用于下载程序和串口通信.串口通信特别适合控制设备,所以工控机的电脑上一般都带有串口. 51单片机的串口引脚为P3.0引脚与P3.1引脚 ...

  6. 51单片机双机串口数码管显示排队叫号仿真设计( proteus仿真+程序+报告+讲解视频)

    51单片机双机串口数码管显示排队叫号仿真设计 1.主要功能: 2.仿真 3.程序 4.设计报告 1.1 设计背景与意义 1.2 设计目的 1.3 设计要求及内容 1.4 本文结构安排 2 总体设计方案 ...

  7. Proteus仿真stm32和51单片机,串口通信调试过程记录

    前言 本文所用Proteus版本为8.10,主要内容为在Proteus中仿真stm32和51单片机进行串口通信,记录了仿真过程中遇到的问题和解决办法.        这里要注意的是,在Proteus中 ...

  8. 51单片机的串口通信

    1.串口通信 (1)串口是串行接口(serial port)的简称,也称为串行通信接口或COM接口. (2)串口通信是指采用串行通信协议(serial communication)在一条信号线上将数据 ...

  9. 串口控制74HC164C语言,51单片机74HC164串口控制数码管显示

    一般数码管需要接7个脚才能显示,如果用单片机本身的I/O口,虽然可以但是浪费宝贵的i/O口资源.本例用移位寄存器74HC164作为数码管驱动进行控制. 74HC164特性   是一种8位串转并口的控制 ...

最新文章

  1. 特殊用户邮箱附件大小设置
  2. 无界阻塞队列 LinkedBlockingQueue 原理探究
  3. 机器学习(MACHINE LEARNING)从零搭建一个汽车状态分类器(Tensorflow)
  4. 深入分析Java Web技术内幕pdf
  5. 【NLP】Github标星7.7k+:常见NLP模型的PyTorch代码实现
  6. Oracle计划任务JOB不自动执行的问题
  7. java提高篇之理解java的三大特性——多态
  8. python查函数用法语句_Python-17 (函数的基本使用)
  9. 机器学习 之 客户分群案例
  10. MFC API 设置Excel单元格格式
  11. android 菜鸟面单打印_android studio 菜鸟实战项目 之 spnner实现
  12. 记模拟器出现横竖屏切换闪屏问题
  13. 轻量级网络 - PVANet SuffleNet
  14. OpenCV学习心得:Scalar()的几种使用方法
  15. java.util.ArrayList源码解析
  16. USB2.0端口设备静电防护方案设计压敏电阻或TVS管
  17. Windows10关闭系统更新(通过本地组策略)
  18. Oracle基础和进阶笔记第一篇
  19. 10个开源的顶级人工智能工具
  20. DIV CSS IE6/IE7/IE8/FF兼容问题汇总

热门文章

  1. java职工工资管理系统(GUI+无数据库)
  2. 湖南大学电气与信息工程学院硕士生指导教师名单
  3. Linux多进程实现生产者消费者问题
  4. VirtualBox 虚拟机无法启动
  5. nouveau linux,不同linux禁用nouveau驱动方法
  6. 2023年下半年软考报名8月14日开始!
  7. ELA图像处理-图像篡改
  8. 50美金即可交易沪深IF300、恒指、外汇、全球股指、原油、黄金。
  9. dscp值_Qos中的DSCP
  10. ChatGPT专业应用:生成亚马逊listing