文章目录
- 一、keil仿真调试
- 1.仿真设置
- 2.调试
- 3.运行
- 二、示波器使用
- 三、总结
- 参考链接
一、keil仿真调试
1.仿真设置
①点击魔法棒进行设置
设置后直接进行调试,会报错
error 65: access violation at 0x40023800 : no ‘read’ permission
根本原因是:map地址空间权限映射有问题。部分地址空间没有读写的权限,造成程序不能自动运行。
采用直接修改添加文件的方式能够很好的解决该问题。如下
②错误纠正
工程文件(MDK-ARM下)中新建“debug.ini”文件,在文件中添加map地址权限映射代码
map 0x40000000, 0x40007FFF read write // APB1
map 0x40010000, 0x400157FF read write // APB2
map 0x40020000, 0x4007FFFF read write // AHB1
map 0x50000000, 0x50060BFF read write // AHB2
map 0x60000000, 0x60000FFF read write // AHB3
map 0xE0000000, 0xE00FFFFF read write // CORTEX-M4 internal peripherals
在项目内导入文件
2.调试
①点击Debug进行调试
②选择逻辑分析仪
③设置要观察的引脚
快捷方式添加引脚
输入PORTX.xx(X为A.B…;xx为引脚号,比如:PORTA.4)然后按回车;
输入USARTx_SR(x为数字)然后回车
3.运行
放大后效果
二、示波器使用
示波器分为三部分左边主要是采集和显示设置,右边是分析和解析设置,中间是波形显示区域。
①根据需要选择演示模式
②波形幅值比例,可以通到进行修改不同的比例。
出现start后点击运行即可。
Channel 0 观测的是 USART1 串口信号波形,可见,电平变化周期是 2s ;
Channel 1 观测的是 PB15 引脚信号波形,可见,电平变化周期是 3s (亮 0.5s 灭 2.5s );
Channel 2 观测的是 PB14 引脚信号波形,可见,电平 0.5s 变化一次(亮 0.5s 灭 0.5s )。
与之前的 keil 仿真观测结果相比较可以看出,二者的波形基本对应一致,且均符合代码中设置的电平变化要求。
三、总结
本次实验学会了使用keil仿真观察波形,以及使用示波器观察波形。两种方法都挺好,个人更喜欢直接用keil。
参考链接
keil仿真和使用逻辑分析仪调波形