stm32 使用keil无实物(软件)仿真,虚拟串口通讯

这篇具有很好参考价值的文章主要介绍了stm32 使用keil无实物(软件)仿真,虚拟串口通讯。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

准备

1.keil

2.vspd虚拟串口

3.sscom串口助手

4.CubeMX

//哪里报错no ‘read‘ permission,把哪里map一下
map 0x40000000, 0x400077FF read write     // APB1
map 0x40010000, 0x40014BFF read write     // APB2
map 0x40020000, 0x4007FFFF read write     // AHB1
map 0x50000000, 0x50060FFF read write     // AHB2
map 0x60000000, 0xA0000FFF read write     // AHB3
map 0xE0000000, 0xFFFFFFFF read write   // CORTEX-M4 internal peripherals

map 0xA0000000, 0xA0000FFF read write     // AHB3


//将串口绑定到vspd虚拟串口的命令
MODE COM1 9600,0,8,1
ASSIGN COM1 <S1IN> S1OUT

//因为这两部分都要需要,通过command指令输入有问题,就放到了一个.ini文件里

stm32 使用keil无实物(软件)仿真,虚拟串口通讯,stm32,嵌入式,stm32,嵌入式硬件,单片机

设置好ini文件和程序后,编译前虚拟串口是关闭的

stm32 使用keil无实物(软件)仿真,虚拟串口通讯,stm32,嵌入式,stm32,嵌入式硬件,单片机

 编译完成后,串口显示打开,说明keil使用了vspd的串口。

stm32 使用keil无实物(软件)仿真,虚拟串口通讯,stm32,嵌入式,stm32,嵌入式硬件,单片机

 然后就是修改程序,接收和发送数据。

无硬件仿真,有些定时器和其他一些配置通过CubeMX进行配置,再把配置文件给keil。

keil ARM与虚拟串口联调设置及解决办法

keil ARM与虚拟串口联调设置及解决办法 - 搜档网

Keil ARM 与虚拟串口联调设置第一步:创建虚拟串口

使用工具:Configure Virtual Serial Port Driver

stm32 使用keil无实物(软件)仿真,虚拟串口通讯,stm32,嵌入式,stm32,嵌入式硬件,单片机

记住自己创建的两个虚拟串口

第二步:创建debug.ini 命令执行文件

Mode COM2 9600,0,8,1

assign com2 S2OUT

stm32 使用keil无实物(软件)仿真,虚拟串口通讯,stm32,嵌入式,stm32,嵌入式硬件,单片机

注意:1:串口选择与虚拟串口相同

2:串口工作波特率,校验方式,数据长度,停止位

assign com2 <输入寄存器> 输出寄存器

串口工作方式对应

9600,0,8,1

第三步:环境设置

stm32 使用keil无实物(软件)仿真,虚拟串口通讯,stm32,嵌入式,stm32,嵌入式硬件,单片机

 第四步:全部编译

进入调试:开启仿真,打开串口调试助手。虚拟串口驱动显示工作方式

stm32 使用keil无实物(软件)仿真,虚拟串口通讯,stm32,嵌入式,stm32,嵌入式硬件,单片机

其他:

命令行也可以直接写命令在命令栏中,操作如下:

点击进入仿真模式,在命令行将debug.ini的内容

MODE COM1 9600,0,8,1
ASSIGN COM1 <S1IN> S1OUT
 

分别命令输入。

错误及其解决办法:

*** error 30, line 2: undefined name of virtual register

问题描述:虚拟寄存器没有定义

问题原因:命令assign com2 S2OUT中 S2OUT是没有定义的。可以通过dir vtreg命令查看可以寄存器

stm32 使用keil无实物(软件)仿真,虚拟串口通讯,stm32,嵌入式,stm32,嵌入式硬件,单片机

 stm32 使用keil无实物(软件)仿真,虚拟串口通讯,stm32,嵌入式,stm32,嵌入式硬件,单片机

对将对应串口寄存器写入对应命令中

这个错误我没有解决。

*** error 65: access violation at 0x40021000 : no 'read' permission

驱动没有调用正确

stm32 使用keil无实物(软件)仿真,虚拟串口通讯,stm32,嵌入式,stm32,嵌入式硬件,单片机

 在ini文件中加入以下内容:

map 0x40000000, 0x400077FF read write 	// APB1
map 0x40010000, 0x40014BFF read write 	// APB2
map 0x40020000, 0x4007FFFF read write 	// AHB1
map 0x50000000, 0x50060FFF read write 	// AHB2
map 0x60000000, 0xA0000FFF read write 	// AHB3
map 0xE0000000, 0xFFFFFFFF read write   // CORTEX-M4 internal peripherals

*** error 127, line 2: Com channel not opened, use MODE command first 命令:Mode COM4 9600,0,8,1

assign com4 S2OUT

中的串口选择错误,要确保与虚拟串口一致

stm32 使用keil无实物(软件)仿真,虚拟串口通讯,stm32,嵌入式,stm32,嵌入式硬件,单片机

解决使用MDK分析仪输入dir vtreg后端口不全

解决使用MDK分析仪输入dir vtreg后端口不全_方栗的博客-CSDN博客

stm32 使用keil无实物(软件)仿真,虚拟串口通讯,stm32,嵌入式,stm32,嵌入式硬件,单片机

 解决:

stm32 使用keil无实物(软件)仿真,虚拟串口通讯,stm32,嵌入式,stm32,嵌入式硬件,单片机

 **-pSTM32F103C8**不是-pSTM32F103C8T6

对于stm32f407ve是不行的,仍然只显示这几个虚拟寄存器,像gpio  sin sout等还是没有显示,可能stm32f407确实不支持软件仿真。

stm32f407没有找到软件仿真方式,stm32f103在网上一找就找到了一个例子,

stm32f103虚拟串口调试可以用的案例:keil MDK 中使用虚拟串口调试串口

keil MDK 中使用虚拟串口调试串口_keil串口调试窗口_⁽⁽ଘ晴空万里ଓ⁾⁾的博客-CSDN博客

一部分说keil不支持stm32f407的软件仿真,一部分说支持,试了几种方式都不行,

暂时不找stm32f407的软件仿真方式了。

RTOS踩坑记——KEIL Xtal undefined_泷且的博客-CSDN博客

5.35版本之后不再支持软件仿真所需要的驱动。

stm32 使用keil无实物(软件)仿真,虚拟串口通讯,stm32,嵌入式,stm32,嵌入式硬件,单片机

 stm32 使用keil无实物(软件)仿真,虚拟串口通讯,stm32,嵌入式,stm32,嵌入式硬件,单片机

以上对比可以看出,stm32f407少了很多外设。

stm32 使用keil无实物(软件)仿真,虚拟串口通讯,stm32,嵌入式,stm32,嵌入式硬件,单片机

stm32 使用keil无实物(软件)仿真,虚拟串口通讯,stm32,嵌入式,stm32,嵌入式硬件,单片机

使用dir vtreg查看外设寄存器,f103还有很多没有截下来,f407只有5个寄存器。文章来源地址https://www.toymoban.com/news/detail-520957.html

到了这里,关于stm32 使用keil无实物(软件)仿真,虚拟串口通讯的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 第10课【STM32 USB通讯协议实战】HID键盘+CDC虚拟串口组合设备

    第10课【STM32 USB通讯协议实战】HID键盘+CDC虚拟串口组合设备

    文章中的部分概念可参考第9课【USB协议】USB总线 接口 端点 管道 数据包 枚举 STM32_USB-FS-Device_Lib V4.1.0 USB协议中为了提供对多样设备的支持,定义了许多外部设备子类,常见的包括: 人机交互类设备HID(Human Interface Device) 通信类设备CDC(Communicate Device Class) 大容量存储设备

    2024年02月04日
    浏览(34)
  • STM32在Keil中使用串口助手打印中文字符出现乱码问题

    STM32在Keil中使用串口助手打印中文字符出现乱码问题

     问题如下,中文字符显示乱码,但数字正常。 通常这种在串口助手打印出现乱码情况: 无非是 波特率设置错误 ,不对应。就像一个滴水的水龙头,水滴进一个循环开合的容器,双方速率不能很好匹配,一定会出现水滴不能完全滴进容器,或者完全滴进或者完全滴不进的情

    2024年02月09日
    浏览(13)
  • [嵌入式软件][启蒙篇][仿真平台] STM32F103实现串口输出输入、ADC采集

    [嵌入式软件][启蒙篇][仿真平台] STM32F103实现串口输出输入、ADC采集

    上一篇:[嵌入式软件][启蒙篇][仿真平台] STM32F103实现LED、按键 学C语言时,使用的printf()函数,就是通过串口打印出来的。 跟外部器件通信,比如GPS模块、蓝牙模块、wifi模块; 两个开发板之间通信,制定私有协议。 PC电脑通信,使用上位机显示数据或控制下位机。 操作:打

    2024年01月22日
    浏览(53)
  • keil构建STM32工程并使用proteus仿真led点灯实验

    keil构建STM32工程并使用proteus仿真led点灯实验

        STM32单片机与51单片机有很大区别,不仅结构上有很大差异,STM32更复杂一些,在操作上来说,STM32也要复杂很多,51单片机上手写代码,可以很直接操作引脚,但是STM32单片机在操作引脚之前需要作很多初始化工作,比如开启时钟使能,GPIO管脚初始化。     下面就入门S

    2024年02月02日
    浏览(14)
  • 【正点原子STM32】STM32初体验(Keil MDK工具下载使用、DAP仿真器、MDK上配置DAP、Debug)

    【正点原子STM32】STM32初体验(Keil MDK工具下载使用、DAP仿真器、MDK上配置DAP、Debug)

    一、MDK5编译例程 二、串口下载程序 2.1、串口下载程序须知 2.2、串口下载硬件连接 2.3、配置下载工具 (ATK-XISP.exe) 2.4、STM32启动模式(M3和M4) 三、DAP下载程序 3.1、DAP下载硬件连接 3.2、在MDK上配置DAP 不同开发板的下载算法有所不同 Build构建 F7、Download下载 F8 四、DAP调试程序 4.

    2024年02月20日
    浏览(45)
  • 【STM32仿真】STM32CubeMX+Keil+Proteus单片机仿真

    【STM32仿真】STM32CubeMX+Keil+Proteus单片机仿真

      博主最近进行单片机的仿真,本篇文章主要利用了STM32CubeMX、Keil和Proteus三个软件,为后期的硬件打下基础。文章主要目的是学习软件的使用和单片机的仿真。   本文是我在学习proteus软件和STM32CubeMX过程当中的心得和学习笔记,在学习时已经有C, C++的基础。文章附上了

    2024年02月16日
    浏览(12)
  • 【STM32通讯系列--串口通讯】使用标准库、HAL库实现任意长度数据的收发(包含帧头、帧尾校验,配套完整开源程序)

    【STM32通讯系列--串口通讯】使用标准库、HAL库实现任意长度数据的收发(包含帧头、帧尾校验,配套完整开源程序)

    【数据组成】串口的通讯协议由开始位,数据位,校验位,结束位构成。 【数据结构】一般以一个低电平作为一帧数据的起始,接着跟随 8 位或者 9 位数据位,之后为校验位,分为奇校验,偶校验和无校验,最后以一个先高后低的脉冲表示结束位,长度可以设置为 0.5,1,

    2024年02月14日
    浏览(11)
  • STM32(2)-串口通讯实际应用:串口屏

    STM32(2)-串口通讯实际应用:串口屏

    文章以UART基础知识和串口屏实际应用来说明串口的作用。 、 UART是通用异步收发传输器(Universal Asynchronous Receiver/Transmitter)的缩写,是一种串行通讯协议,通常用于将计算机或微处理器与其他设备(如传感器、模块、显示器等)进行通信。UART可以将数据以一定速率和格式(

    2024年02月16日
    浏览(14)
  • STM32CubeMX串口通讯

    STM32CubeMX串口通讯

    根据通讯使用的电平标准不同, 串口通讯可分为 TTL 标准及 RS-232 标准 。而STM32的串口是TTL电平标准的。如果需要使用到RS-232则需要一个电平转换芯片。 讲到串口,我们还需要具备这些基础概念。 单工通讯 (1)单工通讯特点很简单,就是只有一个发送端,一个接收端。 从一

    2024年02月02日
    浏览(9)
  • P27[9-3]STM32:串口通信(串口发送)(内含:1.接线图+2.实物图+3.代码部分+4.解决串口发送数据,数据是汉字,结果发送结果为乱码的现象)

    P27[9-3]STM32:串口通信(串口发送)(内含:1.接线图+2.实物图+3.代码部分+4.解决串口发送数据,数据是汉字,结果发送结果为乱码的现象)

    1.接线图如下: 跳线帽接在4~5引脚,2,3引脚连接PA9和PA10引脚。下图也可得出USART接PA9和PA10引脚。 TX和RX是交叉连接。PA9(黄线)是TX,接RXD。PA9(绿线)是RXD,接TX. 图中的串口模块和STINK都接电脑上,使之拥有独立供电。 2.实物图: 黄色为跳线帽,接4~5引脚。

    2024年02月09日
    浏览(9)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包