在实际项目开发中keil的调试方法
转载2015-06-14 20:23:04
一.在keilc的调试状态下,如何观察各个片内外设的运行状态?如何修改它们的设置?
在调试状态下,点击Peripherals菜单下的不同外设选项命令,就会显示或隐藏对应外设的观察窗口。
在程序运行时,各个片内外设的状态会不断地变化,为了随时观察它们的变化,为了随时观察它们的变化,可以启用view菜单下的Periodic Windows Update命令,让keilc自动周期刷新各个调试窗口。
二.在keilc的调试状态下,如何观察和修改变量?
在调试状态下,点击view菜单下的watch&call stack windows命令或对应的按钮,就会显示或隐藏起变量窗口。变量窗口包含有4个标签,即4个显示区,可以分别显示局部变量(locals标签)、指定变量(watch#1和watch#2两个标签)、及堆栈调用(call stack标签)。
在局部变量区,显示的是当前函数中的变量,这些变量不用设置,自动出现在窗口中。为了观察其它变量,可以在watch#1标签按F2输入变量名。在程序运行中,可以观察这些显示的变量的变化,也可以用鼠标点击修改它们的值。
另外还有更简单的方法观察变量的值,在程序停止运行时,将光标放在要观察的变量上停大约1s,就会出现对应变量的当前值。
三.在keilc的调试状态下,如何设置断点和删除断电?
方法一:用鼠标双击。在需要设置的行的最前面,双击鼠标左键,即可设置或清除断电。
方法二:用命令或命令按钮。先将光标移动到需要设置的行,然后点击debug菜单下的insert/remove breakpoint命令或工具栏中的相应按钮,即可设置或清楚断点。
另外还有断点禁用和全部清楚命令按钮。
四。在keilc的调试状态下,如何使用跟踪运行、单步运行、跳出函数运行命令?
step命令和step over命令的区别:当遇到调用函数时,前者将跟踪进入函数,而后者是一步执行完函数。
如果用全速运行命令go,可以使用stop running命令停止运行。
欲退出调试状态,可以再次点击debug菜单下的start/stop debug session命令或相应的按钮。
(ps.大家要是对keil的调试感兴趣的话,可以去看郭天详十天教你学会单片机,大概可能在前2章~~~(看了已经好久了,忘记啦0.0),讲的很详细。)
在实际项目开发中keil的调试方法的更多相关文章
- Java Web项目开发中常见路径获取方法
项目绝对路径 String serverPath = request.getSession().getServletContext().getRealPath("/"); E:\J ...
- 一探前端开发中的JS调试技巧
前言 调试技巧,在任何一项技术研发中都可谓是必不可少的技能.掌握各种调试技巧,必定能在工作中起到事半功倍的效果.譬如,快速定位问题.降低故障概率.帮助分析逻辑错误等等.而在互联网前端开发越来越重要的今 ...
- 前端开发中的JS调试技巧
前言:调试技巧,在任何一项技术研发中都可谓是必不可少的技能.掌握各种调试技巧,必定能在工作中起到事半功倍的效果.譬如,快速定位问题.降低故障概率.帮助分析逻辑错误等等.而在互联网前端开发越来越重要的今 ...
- 【repost】一探前端开发中的JS调试技巧
有请提示:文中涉及较多Gif演示动画,移动端请尽量在Wifi环境中阅读 前言:调试技巧,在任何一项技术研发中都可谓是必不可少的技能.掌握各种调试技巧,必定能在工作中起到事半功倍的效果.譬如,快速定位问 ...
- 一探前端开发中的JS调试技巧(转)
有请提示:文中涉及较多Gif演示动画,移动端请尽量在Wifi环境中阅读 前言:调试技巧,在任何一项技术研发中都可谓是必不可少的技能.掌握各种调试技巧,必定能在工作中起到事半功倍的效果.譬如,快速定位问 ...
- 团队项目开发中,常见的版本控制有svn,git
团队项目开发中,常见的版本控制有svn,git
- 项目开发中的一些注意事项以及技巧总结 基于Repository模式设计项目架构—你可以参考的项目架构设计 Asp.Net Core中使用RSA加密 EF Core中的多对多映射如何实现? asp.net core下的如何给网站做安全设置 获取服务端https证书 Js异常捕获
项目开发中的一些注意事项以及技巧总结 1.jquery采用ajax向后端请求时,MVC框架并不能返回View的数据,也就是一般我们使用View().PartialView()等,只能返回json以 ...
- Json的本地写入和读取,也可以方便在开发中数据的调试
不知道小伙伴们,在开发中,数据调试的过程中,尤其是很多状态的情况下调试,是不是总是麻烦后台的小哥改变不同的状态,总感觉这样太麻烦了, 那么就可以,把数据写入到本地,然后去沙盒中,找到这个写入的文件,直 ...
- Angular 项目开发中父子组件传参
在项目开发中经常会遇到 组件之间传参的问题.今天总结下在使用angular的项目中父子组件传参的问题: 1.父组件向子组件传参: 然后在父组件中 然后在父组件的html中 然后就可以在子组件中使用了 ...
随机推荐
- dp之区间:最大k乘积
题目:给你一个n(1<=n<=15)位数,求将它分成m段,用m-1个*连接起来的最大乘积....... 思路:定义dp[i][j]为将前i位数分成j段的最大乘积,那么dp[i][j]==m ...
- [转]SQL Server 2012 的 T-SQL 新功能 – 新的数据分析函数(LEAD、LAG)
当您需要在 SQL Server 中利用 T-SQL 比较结果集的每一列跟前一列或后一列的差异时,在过去可能需要利用 CURSOR 搭配临时表变量,或是透过递归 CTE 来达到这个效果,如今 SQL ...
- Gtest创建第一个测试
gtest测试框架是在不同平台上(Linux,Mac OS X,Windows,Cygwin,Windows CE和Symbian)为编写C++测试而生成的.它是基于xUnit架构的测试框架,支持自动 ...
- 深入学习RabbitMQ(四):channel的confirm模式
转自:http://m.blog.csdn.net/article/details?id=54340711 上一篇博客我们介绍了使用RabbitMQ可能会遇到的一个问题,即生产者不知道消息是否真正到达 ...
- 【转】【Unity】实现全局管理类的几种方式
本文原作者未知,转载自:http://blog.csdn.net/ycl295644/article/details/42458477 如何在Unity中实现全局管理类?由于Unity脚本的运行机制和 ...
- 4G模块ME3760_V2的拨号过程
AT AT+CFUN=1 模块功能全打开,上电可以设置默认状态 AT+ZSET="LET_INFO" 掉电后可以保存AT+CFUN ...
- Nhibernate 一对一,一对多,多对多 成功映射
前语: 在Nhibernate xml 的文件配置上,一对一和多对多的配置比较简单,容易出错的反而是一对多(多对一)上. 1.一对一关联关系的映射: <one-to-one name=" ...
- C++ 递归实现汉诺塔
C++实现汉诺塔 #include <iostream> using namespace std; void move(int n,char x,char y,char z) { ) { ...
- [转]Python与设计模式
一.创建类设计模式 前言 什么样的程序员是一个好的程序员?学会很多门编程语言,就是一个好的程序员了么?事实上,学会一门编程语言不是一件很难的事,而“学会”一门编程语言是非常难的一件事.前一个“会”强调 ...
- iOS边练边学--九宫格布局
一.介绍一下ViewController中的结构 二.九宫格设计思路 三.代码实现 // 点击增加按钮 - (void)add:(UIButton *)btn { // 定义一行中的列数(个数) NS ...