STM32和STM8的串口貌似都可以一次发送9位数据,最近才注意到这个,在此记录。

一般不带奇偶校验位的串口数据:起始位(1)+数据位(8)+停止位(1)

带奇偶校验位的串口数据:起始位(1)+数据位(8)+校验位(1)+停止位(1)

如果数据位为9位,即:起始位(1)+数据位(9)+停止位(1)

9位数据STM8串口的配置:

UART1_DeInit();// 波特率      9位              1位停止位        无奇偶校验         同步时钟关                  发送接收使能
UART1_Init((u32)1000000, UART1_WORDLENGTH_9D, UART1_STOPBITS_1, UART1_PARITY_NO, UART1_SYNCMODE_CLOCK_DISABLE, UART1_MODE_TXRX_ENABLE);

9位数据STM8串口的配置:

USART_InitStructure.USART_BaudRate = 115200;
USART_InitStructure.USART_WordLength = USART_WordLength_9b;
USART_InitStructure.USART_StopBits = USART_StopBits_1;
USART_InitStructure.USART_Parity = USART_Parity_No;
USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;
USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;USART_Init(USART1, &USART_InitStructure);

要发送的数据类型要为16位,使用低9位即可。

STM8使用UART1_SendData9(value[j]);来发送。

STM32使用

void USART_SendData(USART_TypeDef* USARTx, uint16_t Data)
{/* Check the parameters */assert_param(IS_USART_ALL_PERIPH(USARTx));assert_param(IS_USART_DATA(Data)); /* Transmit Data */USARTx->DR = (Data & (uint16_t)0x01FF);
}

来发送。

STM32串口9位数据,无奇偶校验相关推荐

  1. STM32串口实时接收数据与所提前定义的比较,并作出相应的操作

    STM32串口实时接收数据与所提前定义的比较,并作出相应的操作 //typedef const uint16_t uc16; /*!< Read Only */uc16 BUF[10]={162 ...

  2. 笔记——STM32串口USART收发数据。

    关于上次的串口内容只是知道怎么用,不晓得什么意思,这次就做个笔记详细的来描述一下.关于STM32有许多通信的协议,其中串口也是常用的通信协议,并且串口用来调试和查看信息非常重要的.包括用到阿里云的云智 ...

  3. STM32的7位数据位支持

    对于外部设备来说,STM32可支持7位数据位,但是必须不能是无校验,同时需要做一些额外的处理 众所周知,STM32系列单片机控制寄存器只支持8.9位数据位 但是在设置8数据位时,如果选择了硬件奇偶校验 ...

  4. 手把手教你从0创建STM32串口空闲+DMA数据接收工程

    串口通讯是嵌入式系统中最常用的通讯方式. STM32的串口接收普通的方式是在串口读数据寄存器非空RXNE中断(Read data register not empty)中1个字节1个字节的接收串口数据 ...

  5. STM32串口发送接收数据

    目录 1.串口通信 2.串口的结构体 3.如何配置串口的发送 4.通过串口向电脑发送ok字符 5.封装发送字符串函数 6.重定向printf串口发送 7.串口输入控制LED灯开关 遇到的问题 1.串口 ...

  6. 关于stm32串口接收发送数据不完整的相关问题

    如果串口接收数据,数据传输的比较快,这个时候还要使用同一个串口发送数据. 如果是在主函数中使用HAL_UART_Receive();,这个时候不管使用HAL_UART_Transmit();还是使用H ...

  7. STM32 —— 串口数据接收

    STM32 -- 串口接收数据 我们已经在前面的博客中讲过了串口通信中发送数据和中断的一些基本原理,这里主要介绍串口接收数据的相关内容 定长字符串的接收 当接收单字节时,我们就可以使用最简单的接收方式 ...

  8. STM32移植RT-Thread后的串口在调试助手上出现:(mq != RT_NULL) assert failed at rt_mq_recv:2085和串口只发送数据不能接收数据问题

    STM32移植RT-Thread后的串口在调试助手上出现:(mq != RT_NULL) assert failed at rt_mq_recv:2085的问题讨论:http://www.rt-thr ...

  9. STM32串口通信详解(嵌入式学习)

    STM32串口通信 1.通信基础知识 1.1 时钟信号区分 同步通信 异步通信 波特率 总线协议(电气协议) 1.2 通信方式划分 串行通信 并行通信 1.3 通信方向划分 单工通信 半双工通信 全双 ...

最新文章

  1. leetcode 【 Find Peak Element 】python 实现
  2. 一文看懂鸿蒙手机操作系统。和安卓、iOS 有何区别?
  3. 为什么说在KMP算法中文本串中的每个字符都是需要进行比较操作的?
  4. zookeeper启动失败排查
  5. 进化之路:线程池来帮忙,却好心办坏事
  6. 0009:err:listview:LISTVIEW_WindowProc unknown msg 108c问题解决
  7. 絮语之一:悲悯·海·《垂死的肉身》
  8. q-dir 打不开文件_Q-Dir –多窗格文件管理器
  9. react取消捕获_React学习笔记(三)
  10. 香港政府活用无人机,正式应用到调研检测领域
  11. mysql search yum_mysql的yum安装与配置
  12. 在网页博客文章中输入上下角标(指次幂、下角标)、分数及特殊字符
  13. Ann Rheum Dis | 华科韩金祥/宁康等发现微生物失调和代谢紊乱在类风湿关节炎中的作用...
  14. Python工程师需要学习的知识总结,送给需要的人
  15. ubuntu运行Openvino出现 ModuleNotFoundError: No module named ‘openvino.model_zoo.model_api‘解决
  16. GA遗传算法及相关代码
  17. 最优化理论与KKT条件
  18. 六大质疑拷问大中华第一妖股 蒙古能源估值调查
  19. Python数学实验与建模 课后习题第5章解析
  20. JAVA练习题16:双色球彩票系统

热门文章

  1. Python数据可视化:幂律分布
  2. 学习java的一些笔记(3)
  3. 如何借助“AI+边缘计算”助推能源产业智能化转型?这场直播给你答案 | 量子位·视点...
  4. 大脑“拖延症”让你直呼“眼瞎”:加工视觉信息有15秒延迟 | Science子刊
  5. 小米做的这件事,捍卫了你的隐私
  6. 阿里达摩院AI抗疫最新战报:已诊断3万多疑似病例CT影像,准确率96%
  7. ICLR论文盲审大反转:三个“8”完美过关,又来两个“1”彻底拒绝
  8. GitHub发福利:30多万元资源,学生可以免费用
  9. ICML新研究提出泛化能力评估新指标:直接上向量余弦距离就OK,还开源了相关代码...
  10. 下载ssl证书并安装后如何导出备份