protues仿真STM32串口波特率问题

今天我尝试用PROTUES来仿真串口通信,但是全部调整完后,串口始终是乱码,通过在网上了搜了很久也没找到根本原因,于是乎自己进行无头苍蝇的尝试让我找了规律。
这是我进行仿真实验的电路图,按一下按钮灯变换状态同时串口输出内容
我买之前买的是野火的板子 所以就直接用了他们的程序,

#define  DEBUG_USARTx                   USART1
#define  DEBUG_USART_CLK                RCC_APB2Periph_USART1
#define  DEBUG_USART_APBxClkCmd         RCC_APB2PeriphClockCmd
#define  DEBUG_USART_BAUDRATE           115200
int main(void)
{
	// 来到这里的时候,系统的时钟已经被配置成72M。
	LED_GPIO_Config();
	KEY_GPIO_Config();
	USART_Config();
	
	while(1)
	{
		if( Key_Scan(KEY1_GPIO_PORT,KEY1_GPIO_PIN) ==KEY_ON )
		LED_G_TOGGLE;
    printf("还得天天学习啊\r");
		Delay(0X9FFFF);
	}
}

这里命名已经设置了115200的波特率,但是Protues老哥 去给我这样的显示
这就很头疼
直接说我最后得出的结果吧
就是说他这仿真软件的波特率是(CPU主频÷外部晶振)×程序波特率。也就是72/8*115200=1036800。
这样的设置
结果就很美好
可我时钟不能知道是什么原因导致的,哪位大神可以给讲解一下,不懂得也可以按着我这个方法去尝试一下。是可以决绝当下的仿真问题,调试程序


  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: Protues是一款常用的电路仿真软件,可以用来模拟STM32的串口通信。在仿真过程中,可以通过添加串口模块和编写相应的代码来实现串口通信的功能。需要注意的是,在仿真过程中,需要设置好串口波特率、数据位、停止位等参数,以确保通信的稳定性和正确性。同时,还需要注意代码的编写和调试,以保证程序的正确性和可靠性。 ### 回答2: Proteus是一款广泛应用于电子设计、测试、仿真的软件,能够在软件模拟环境中进行电路仿真、PCB设计等。而STM32是一款32位嵌入式芯片,具有强大的处理能力和周边功能,被广泛应用于各种嵌入式系统中。本文将介绍如何在Proteus中进行STM32串口通信仿真。 第一步:选择硬件模型 首先需要在Proteus中选择一个STM32的硬件模型,可以在“Pick Device”中搜索并选择对应的型号,例如STM32F103C8T6。将其拖放到仿真界面中。 第二步:添加串口模块 在STM32上添加一个串口模块以便进行串口通信。在“Library” 中搜索“UART”,找到需要使用的串口模块,将其拖放到STM32的引脚上。 第三步:连接串口 通过连线连接STM32和串口模块,将串口模块的Rx和Tx引脚分别连接到STM32的对应引脚。此外,还需要连接一个地线,以保证电路的正常工作。 第四步:设置串口参数 在仿真界面的“Properties”中设置串口参数,例如波特率、数据位、停止位、奇偶校验等。在模拟过程中,可以通过更改串口参数来进行不同的实验。 第五步:编写程序 使用Keil等编译工具编写STM32的程序,并将其烧录到STM32内部。程序需要包含串口的初始化、发送和接收数据等操作,以便与串口模块进行通信。 第六步:进行仿真 完成以上设置后,即可进行仿真。通过开启仿真窗口可以查看串口数据的收发情况,并进行调试分析。 总结 通过上述步骤,我们可以在Proteus中完成STM32串口通信的仿真。这种仿真方法可以方便地调试各种串口通信方案,为实际应用提供了重要的帮助。 ### 回答3: Proteus是一款电子仿真软件,其中包含了大量的电子元件和器件模型,可帮助工程师及学生快速验证电路设计的正确性。其中,Proteus支持STM32控制器的仿真,因此可以使用Proteus仿真STM32串口通信。 首先,需要在Proteus中添加STM32控制器的模型及串口模块。这些模型可在Proteus自带库中搜索下载或在第三方资源网站中找到合适的模型进行导入。 接下来,需要编写STM32串口通信的代码,并将编译后的.hex文件加载到仿真模型中。在Proteus中,点击右上角的“Debug/Run”按钮,即可开始仿真过程。 在仿真运行过程中,可以通过Proteus提供的虚拟示波器或打印输出来实时观察串口通信的数据传输情况。除此之外,还可以在仿真模型中设置断点或监视特定变量的值来调试代码。 需要注意的是,在仿真过程中,由于与实际硬件的差异,部分硬件功能可能无法完全仿真。因此,在实际应用中,需要进行实际硬件测试和调试,以确保系统正常运行。 总之,使用Proteus仿真STM32串口通信可以帮助我们快速验证设计的正确性,减少硬件调试的时间和成本,提高开发效率。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值