STM32F103使用USART3/UART4乱码问题

news2024/9/24 5:31:49

         源程序为USART1的配置,更改USART3/4相应寄存器测试,测试一直显示有规律乱码,收发不符。

void uart_init(u32 pclk,u32 bound)
{  	 
	float temp;
	u16 mantissa;
	u16 fraction;	   
	temp=(float)(pclk*1000000)/(bound*16);//得到USARTDIV
	mantissa=temp;				 //得到整数部分
	fraction=(temp-mantissa)*16; //得到小数部分	 
    mantissa<<=4;
	mantissa+=fraction; 
  
	
	//重映射USART到PC10、11
	RCC->APB2ENR|=1<<0; //启动AFIO时钟
	AFIO->MAPR&=~(0x1<<4);
	AFIO->MAPR|=0x1<<4;
	
	RCC->APB1ENR|=1<<18;  //使能串口3时钟 
	
	RCC->APB2ENR|=1<<4;   //使能PORTC口时钟  
	GPIOC->CRH&=0XFFFF00FF;//IO状态设置
	GPIOC->CRH|=0X00008B00;//IO状态设置 
	
	RCC->APB1RSTR|=1<<18;   //复位串口3
	RCC->APB1RSTR&=~(1<<18);//停止复位	   	   
	
	//波特率设置
 	USART3->BRR=mantissa; // 波特率设置	 
	USART3->CR1|=0X200C;  //1位停止,无校验位.

}

发送:

		printf("nihao啊");

 串口助手接收:

灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~瀱瀫?灋~?~

    单片机采用8MH晶振,系统9倍频,72MHz,查STM32手册发现:

      USART1与其余的USART使用的时钟不一样,PCLK1最高为36Mhz

 初始化时PCLK=36后串口助手接收正常

nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nihao啊nih

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/689568.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

labview 公式节点转换(U16->S16)

问题&#xff1a;在和测力计通讯时&#xff0c;需要把读出的裸数据转化有符号整数 其它网友的文章可以进行转换 &#xff08;笔记&#xff09;labview各种进制转换&#xff08;通讯得到的负数补码转换成负数原码&#xff09;_labview数字间的进制转换_是孑然呀的博客-CSDN博客…

chatgpt赋能python:用Python计算AIC:一种常用的信息标准

用Python计算AIC&#xff1a;一种常用的信息标准 介绍 AIC&#xff08;赤池信息准则&#xff09;是一种用于模型选择的信息理论标准&#xff0c;旨在平衡模型复杂度和拟合准确度的权衡。在统计学和机器学习中&#xff0c;模型选择是一项关键任务&#xff0c;因为正确选择模型…

QT使用问题记录

VS中无法直接打开QT的Ui界面 需要确保安装上这个VS的QT扩展插件 还需要把QT的path添加到VS里面 这是添加好的 运行编译好的QT软件报 应用程序无法正常启动(0xc000007b)&#xff0c;需要把QT的路径添加到系统环境变量的path中哦 加上这个就可以了

【python 第三方库安装换源】

换源&#xff1a; pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple/其他国内第三方库的下载源地址&#xff1a; 阿里云&#xff1a;http://mirrors.aliyun.com/pypi/simple/ 科技大学&#xff1a;https://pypi.mirrors.ustc.edu.cn/simple/ 豆瓣&a…

4.用python写网络爬虫,并发下载

目录 前言 4.1 100万个网页 4.1.1 解析Alexa列表 4.2 串行爬虫 4.3 多 线程爬虫 4.3.1 线程和进程如何工作 4.3.2 实现 4.3.3 多进程爬虫 4.4性能 4.5 本章小结 前言 在之前的章节中&#xff0c;我们的爬虫都是串行下载网页的&#xff0c;只有前一次下载完成之后才会…

【Nginx】第一章 Nginx简介

内容概览 1、nginx简介 &#xff08;1&#xff09;介绍nginx的应用场景和具体可以做什么事情 &#xff08;2&#xff09;介绍什么是反向代理 &#xff08;3&#xff09;介绍什么是负载均衡 &#xff08;4&#xff09;介绍什么是动静分离 2、nginx安装 3、nginx常用的命…

GDPU C语言 番外篇

1. 冒泡排序 &#x1f351; 冒泡排序详解 &#x1f351; 测试地址 #include<stdio.h>int main() {int n;int a[1010];scanf("%d", &n);int i,j;for(i 0; i < n; i)scanf("%d", &a[i]);//冒泡排序for(i 0; i < n-1; i)//最多需要进…

文件系统考古 3:1994 - The SGI XFS Filesystem

在 1994 年&#xff0c;论文《XFS 文件系统的可扩展性》发表了。自 1984 年以来&#xff0c;计算机的发展速度变得更快&#xff0c;存储容量也增加了。值得注意的是&#xff0c;在这个时期出现了更多配备多个 CPU 的计算机&#xff0c;并且存储容量已经达到了 TB 级别。对于这些…

7.NVIC中断优先级管理

1.NVIC中断优先级分组&#xff1a; 分组就是确定系统初始化中断分组之后&#xff0c;确定系统是哪一个分组&#xff0c;从而确定好每一个中断到底有几位抢占优先级和响应优先级&#xff1b;CM3内核支持256个中断&#xff0c;其中包含了16个内核中断和240个外部中断&#xff0c…

@Validated 和 @Valid校验提示信息的双语化以及动态参数添加

对于国际性应用来说&#xff0c;提示信息的双语化是必须的&#xff0c;那么Validated 和 Valid校验提示信息怎么来进行双语化呢&#xff0c;下面我们一起学习一下。 Validated 和 Valid校验提示信息的双语化 SpringBoot项目双语化配置 因为这里是基于SpringBoot项目学习的&a…

最佳实践|亚马逊可持续发展的架构模型

在过去的十年里面&#xff0c;亚马逊云科技一直都致力于帮助企业和开发者实现数字化转型&#xff0c;包括如何使用云技术帮助企业提高运营中资源利用率&#xff1b;如何通过云基础架构、容器、DevOps 进行业务的创新和敏捷性&#xff1b;未来的十年&#xff0c;亚马逊云科技将帮…

idea导入SpringBoot项目,没有启动按钮,没有maven

解决办法&#xff1a;&#xff08;快捷键双击Shift&#xff0c;在搜索框中搜索maven&#xff0c;点击Add Maven Project&#xff0c;就 行了&#xff09; 如果在idea出现下图这种&#xff0c;说明成功了

HAL库介绍

HAL 库&#xff08;Hardware Abstraction Layer&#xff0c;硬件抽象层&#xff09;和标准库&#xff08;Standard Peripheral Library&#xff0c;标准外设库&#xff0c;又称为 SPL&#xff09;都是 STM32 微控制器的固件库。它们的主要区别在于结构和抽象级别。 1.HAL 库&a…

使用IDEA启动项目,build时出现OOM相关异常

在使用idea启动项目时&#xff0c;即使使用参数设置了很大的JVM内存&#xff0c;但在项目构建时&#xff0c;仍会出现OOM异常&#xff0c;这一般是由于idea限制了项目构建时的heap size导致的&#xff0c;可以按需将这个数值调大。 参数位置&#xff1a;setting > Build,Ex…

C# 变量与类型

目录 一 变量类型 二 变量类型大纲 三 使用示范 一 变量类型 C# 有两种类型&#xff1a;值类型和引用类型。 值类型的变量直接包含它们的数据。 引用类型的变量存储对数据&#xff08;称为“对象”&#xff09;的引用。 对于引用类型&#xff0c;两个变量可以引用同一个对…

图像增强之图像锐化(边缘增强)之拉普拉斯算子

note mat (0,1,0;1,-4,1;0,1,0) code // 图像增强之图像锐化(边缘增强)之拉普拉斯算子 void GetLaplaceMat(Mat& laplaceMat) {laplaceMat (Mat_<int>(3,3) << 0,1,0,1,-4,1,0,1,0); } void EdgeSharpenLaplace(Mat&src, Mat& res) {Mat laplaceMa…

【微信小程序】添加了自定义组件引用还是报错

例如&#xff0c;在微信开发者工具中添加了自定义组件group-list&#xff0c;再到页面使用&#xff0c;点重新编译后&#xff0c;报错了。 在Console输出报错信息如下&#xff1a; Component is not found in path "components/group-list/group-list" (using by &q…

ElementUI中使用页签,在一个页面中可以包含多个页面

<el-tabs v-model"activeName" style"margin-left: 10px" tab-click"handleClick"><el-tab-pane label"资质证明文件" name"first"></el-tab-pane><el-tab-pane label"资质大全文件" name&q…

Jupyter----将新创建的环境添加到jupyter中

1、激活你的环境 2、安装ipykernel conda install ipykernel 3、将虚拟环境添加到jupyter中 python -m ipykernel install --user --name 环境名称&#xff08;maliao&#xff09; --display-name "显示名称&#xff08;maliao&#xff09;" 安装完成后即可在Kernel中…

IMX6ULL——音频驱动

WM8960简介 WM8960内部 ADC和 DAC都为24 I2S 总线接口 2S 总线用于主控制器和音频CODEC 芯片之间传输音频数据。 I2S 接口需要3 根信号线(如果需要实现收和发&#xff0c;那么就要4根信号线&#xff0c;收和发分别使用一根信号线)&#xff1a; SCK&#xff1a;串行时钟信号&…