首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

STM32 keil 环境下如何使用 cm_backtrace进行错误追踪

引言 我们平常使用STM32单片机的时候,往往会碰到程序跑飞的情况,出现hard_fulat等错误,而我们定位错误的时候,采用的方法往往是连上仿真器,一步一步单步调试,定位到具体的错误代码,再去猜测...、排除、推敲错误原因,这样一个过程很是痛苦,而且实际情况中,很多产品真机调试时必须断开仿真器或者说,问题确实存在,但是极难出现,所以基于这样一个问题背景下,RTT 的大佬armink开发了一个基于...功能 备注 cmb_println(…) 错误及诊断信息输出 必须配置 CMB_USING_BARE_METAL_PLATFORM 是否使用在裸机平台 使用则定义该宏 CMB_USING_OS_PLATFORM...测试 移植完之后,我们现在来测试一下,单片机中除0造成的错误如何检查出来,我们主函数中添加如下所示的代码: #include "stm32f10x.h" #include "bsp_usart.h"...使用这个工具的时候,需要知道当前工具输出的可执行文件的名字,我们打开keil,信息如下所示: ?

1.4K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MVC 3.0 的新特性 摘要

    Action 方法进行处理,实际上,有时候你希望对所有的 Action 都进行类似的处理,MVC3 允许你将过滤器加入到 GlobalFilters 集合中来创建全局的过滤器,详细的介绍,参考下列资源...HttpStatusCodeResult JavaScript 和 Ajax 改进 默认情况下, MVC3 中,Ajax 和验证使用不引人注目的 unobtrusive 的 JavaScript...当 Model 绑定的时候,MVC3 从 IValidatableObject 接收错误信息,视图中使用内建的 HTML 助手时,将会自动标识或者高亮受影响的字段。...脚手架的改进 MVC3 中的脚手架对于主键提供了更好的支持,例如,脚手架的模板不会将主键加入的编辑表单中了。...默认情况下,创建和编辑的脚手架现在使用 Html.EditorFor 助手来替代 Html.TextBoxFor 助手,这个改进在增加视图对话框生成一个视图的时候,支持模型中的元数据标签。

    2.6K10

    ASP.NET MVC 2示例Tailspin Travel UI层分析

    ,以及jQuery和ASP.NET Ajax配合的相关内容,可以参考 Asp.net MVC2 使用经验,性能优化建议学习。...下面重点来说明一下管理后台的DynamicData的结构,先可以阅读一下Scott Guthrie 的文章 新的ASP.NET动态数据支持: ASP.NET 动态数据进行创建和更新数据时还会对所录入的数据进行验证...ASP.NET 动态数据还具有自动识别表关联的功能:比如产品表与产品类别表进行了关联,那么我们录入产品数据的时候,ASP.NET 动态数据会自动以下拉列表的形式显示产品类别。此功能非常不错。...包含各种类型的字段查看和创建、编辑时所呈现的控件。 DynamicData/PageTemplates 文件夹。包含在进行查看、编辑时的页面模板。...MVC2保证性能,UI界面的开发方面非常值得借鉴的一种模式。

    1.6K90

    手把手教你写一个脚手架(二)

    时隔三个月,终于有时间写脚手架系列第二篇文章了,北京上班确实比天津忙多了,都没时间摸鱼。如果你没看过本系列的第一篇文章手把手教你写一个脚手架,建议先看一遍再来阅读本文,效果更好。...add @mvc/cli-plugin-babel --scope=@mvc/cli 改造成 monorepo-repo 后的脚手架功能和第二版没有区别,只是将插件相关的代码独立成一个单独的 repo...使用 monorepo 的优点 如果采用 multirepo 的方式开发,本地调试时如果需要调用其他插件,则需要先执行 npm i 安装,才能使用。...发布到 npm 后 下载 mini-cli 脚手架,其实下载的只是核心插件 mvc-cli。如果这个插件需要引用其他插件,则需要先进行安装,再调用。因此对 create add 命令需要做一些修改。...花费了挺长的时间,后来懒得弄了,干脆将所有的插件重新改了前缀名,变成 mvc 开头的前缀。 参考资料 lerna多包管理实践 vue-cli npm scripts 使用指南

    72120

    MVC到DDD,该如何下手重构?

    经过实践得知,DDD 架构能解决,现阶段 MVC 贫血结构中所遇到的众多问题。众所周知,MVC 分层结构是一种贫血模型设计,它将”状态“和”行为“分离到不同的包结构中进行开发使用。...具体如图所示;左侧是我们常见的 MVC 分层结构,右侧是给大家上文讲解过的 DDD 分层结构。从 MVC 到 DDD 的映射,使用了相同颜色进行标注。...使用说明这套脚手架使用了 maven-archetype-plugin 使用命令(archetype:create-from-project)进行工程的脚手架创建,创建后进行一些内容的修改,最终完成脚手架的模板...读者使用这套脚手架的时候,可以本地下载工程代码后,进入工程下的 scaffold-lite/std 模块执行 README.md 中 mvn clean install 脚本进行安装。...熟悉后进入”黑圈“ README.md 中执行 mvc clean install 这样就能在本地 maven 仓库安装上脚手架了。

    3.5K13110

    基于开源大数据调度系统Taier的Web前端架构选型及技术实践

    1、前端脚手架选型介绍 在前端众多的脚手架、框架中我们选择了UmiJS作为我们的底层脚手架,之所以选择UmiJS的原因,主要是基于以下几点的考虑: 上手成本低,启动项目快 较少的配置需求,需要快速搭建页面...接下来,我们详细分析这三者组成的 MVC 架构是如何在项目中发挥作用,三者之间是如何联系并支撑起 Taier 项目。...React React 是 Facebook 开源的一个用于构建用户界面的 JavaScript 库,较高的性能和较为简单的代码逻辑使得自发布以来,越来越多的人关注和使用它,而在此项目中我们使用的是React...同时我们观察到该组件的参数(即 props)中可以获取到Service 中存储的数据结构,简单地使用后,就可以组件内容获取到Service 的数据。...目前Taier 项目的稳定性还不够,更稳定是我们一直追求的目标,未来我们要做到: 提升测试覆盖率,确保稳定性 优化错误提示信息,以确保发生错误后可以通过错误排查问题 支持埋点平台或其他监控平台接入

    78772

    .NET Core多平台开发体验: Mac OS X

    一、安装开发环境 和Windows一样,如果我们下午Mac上进行.NET Core应用的开发,我们只需要安装 .NET Core SDK和相应的IDE就可以了。...我们先通过dotnet new这个脚手架命令行工具按照如下图所示的方式创建一个名为helloworld的控制台应用。 ?...上图(右)所示的是脚手架命令行创建的控制台应用的项目结构,可以看出它与我们Windows上执行相同命令创建的应用具有相同的文件结构。...三、改造成ASP.NET Core MVC应用 《.NET Core多平台开发体验[1]: Windows》中,我们演示了如何将一个通过脚手架命令行创建的控制台应用一步步改造成ASP.NET Core...MVC应用,既然.NET Core提供真正的跨平台支持,那么我们按照相同方式改造的ASP.NET Core MVC应用同样可以Mac OS上运行,接下来我们就来验证一下。

    1.4K50

    基于开源大数据调度系统Taier的Web前端架构选型及技术实践

    1、前端脚手架选型介绍 在前端众多的脚手架、框架中我们选择了 UmiJS 作为我们的底层脚手架,之所以选择 UmiJS 的原因,主要是基于以下几点的考虑: 上手成本低,启动项目快 较少的配置需求...接下来,我们详细分析这三者组成的 MVC 架构是如何在项目中发挥作用,三者之间是如何联系并支撑起 Taier 项目。...React React 是 Facebook 开源的一个用于构建用户界面的 JavaScript 库,较高的性能和较为简单的代码逻辑使得自发布以来,越来越多的人关注和使用它,而在此项目中我们使用的是...同时我们观察到该组件的参数(即 props)中可以获取到 Service 中存储的数据结构,简单地使用后,就可以组件内容获取到 Service 的数据。...目前 Taier 项目的稳定性还不够,更稳定是我们一直追求的目标,未来我们要做到: 提升测试覆盖率,确保稳定性 优化错误提示信息,以确保发生错误后可以通过错误排查问题 支持埋点平台或其他监控平台接入

    53910

    .NET Core多平台开发体验: Mac OS X

    一、安装开发环境 和Windows一样,如果我们下午Mac上进行.NET Core应用的开发,我们只需要安装 .NET Core SDK和相应的IDE就可以了。...我们先通过dotnet new这个脚手架命令行工具按照如下图所示的方式创建一个名为helloworld的控制台应用。 ?...上图(右)所示的是脚手架命令行创建的控制台应用的项目结构,可以看出它与我们Windows上执行相同命令创建的应用具有相同的文件结构。...三、改造成ASP.NET Core MVC应用 《.NET Core多平台开发体验[1]: Windows》中,我们演示了如何将一个通过脚手架命令行创建的控制台应用一步步改造成ASP.NET Core...MVC应用,既然.NET Core提供真正的跨平台支持,那么我们按照相同方式改造的ASP.NET Core MVC应用同样可以Mac OS上运行,接下来我们就来验证一下。

    89910

    手把手教你写一个脚手架

    我将这个轮子分成三个版本: 1.尽可能用最少的代码实现一个最简版本的脚手架。2. 1 的基础上添加一些辅助功能,例如选择包管理器、npm 源等等。3.实现插件化,可以自由的进行扩展。...让你不用从零开始配置一个项目,尽可能快的进行业务开发。 建议阅读本文时,能够结合项目源码一起配合使用,效果更好。这是项目地址 mini-cli[2]。.../bin/mvc.js" }, 再执行 npm link[4],就可以将 mvc 注册成全局命令。这样电脑上的任何地方都能使用 mvc 命令了。实际上,就是用 mvc 命令来代替执行 node ..../bin/mvc.js。 假设用户命令行上输入 mvc create demo(实际上执行的是 node ..../bin/mvc.js create demo),commander 解析到命令 create 和参数 demo。然后脚手架可以 action 回调里取到参数 name(值为 demo)。

    1.8K20

    零基础ASP.NET Core MVC插件式开发

    这里介绍一种使用ASP.NET Core MVC 技术开发Web后台系统,使用插件式的方案。...这个方案项目中已经使用效果觉得还不错,这里把主要思想提取出来,做个简单的demo分享下 一、创建主项目 这里使用的开发工具是vs2019,ASP.NET Core 2.1。...创建一个ASP.NET Core MVC项目,项目结构如下图1,完全是脚手架自动创建好的标准项目 ?...图7 插件项目说明,插件是根据业务模块划分的,还有为了防止注册到主项目之后路由命名的冲突,插件项目就使用MVC自带的区块Areas功能来存放。这里就是前面主项目要增加Areas路由映射的原因。...然后删除脚手架默认创建的外层控制器和视图文件,因为主项目也有这样同名的控制器路由,这些不删除,到时候注册到主项目,会出现重复路由错误

    1.2K30

    Asp.NetCore Web开发之路由

    asp.net core中通过路由来将请求映射到对应的action,主要用到两个中间件,UseRouting()和UseEndpoints() 前者用于设置请求和action的映射关系,后者用于请求没有对应...action的情况(一般是设置路由到主页,或者错误页面) MVC中路由到控制器 一个新建的mvc模板,最后一个中间件默认是: app.UseEndpoints(endpoints => {...; }); 这是一个传统路由,用于将请求映射到控制器的action,默认是访问home控制器下的index界面,并且支持使用REST风格传入一个可空参数(不是必须的),也就是/{id?}...Web API 中的路由规范 web api中,一般会使用ApiController这个特性标记控制器,它的作用仅返回序列化的数据,不会返回视图,下面看段代码: app.UseEndpoints...(endpoints => { endpoints.MapControllers(); }); 通过VS脚手架生成的web api模板,它的终点路由是映射到控制器

    86620

    跨平台开发体验: Mac OS

    我们先来体验一下使用Mac来开发.NET Core应用,在这之前我们照例先得Mac OS上构建我们的开发环境。...一、安装开发环境 和Windows一样,如果我们希望Mac上进行.NET Core应用的开发,我们只需要安装 .NET Core SDK和相应的IDE就可以了。...上图右侧所示的是执行脚手架命令行创建的控制台应用的项目结构,可以看出它与我们Windows上执行相同命令创建的应用具有相同的文件结构。...三、ASP.NET Core MVC应用 《跨平台开发体验: Windows[下篇]》中,我们演示了如何将一个通过脚手架命令行创建的控制台应用一步步改造成ASP.NET Core MVC应用,既然.NET...Core提供真正的跨平台支持,那么我们按照相同方式改造的ASP.NET Core MVC应用同样可以Mac OS上运行。

    1.3K30

    如果没有Visual Studio 2015,我们如何创建.NET Core项目 ?

    于此同时,.NET Core充分借鉴了目前非常流行的基于“脚手架(Scaffolding)”的源文件生成方式,它的核心命令行“dotnet”也添加了脚手架的命令行开关。...被创建出来的这个Web应用实际上是一个ASP.NET Core MVC项目,如下图所示,它具有一个完整的目录结构。 ?...通过执行“dotnet restore”命令恢复依赖的NuGet包之后,我们可以直接执行“dotnet run”启动这个MVC应用。...应用启动之后,默认注册的服务器绑定到“http://localhost:5000”这个地址进行监听,所以我们利用浏览器像这个地址发送请求会得到如下图所示的响应。 ?...二、利用Yoeman创建项目 对于Yoeman这个脚手架工具,相信大家都应该很熟悉了。

    1K90

    架构师技能2:组件化思想之框架、脚手架、基础应用框架。

    而所谓流程,就是对一些日常工作环节、方式方法、次序等进行标准化、规范化。且不论精不精髓,技术团队中,对一些通用场景,统一规范是必要的,只有步调一致,才能高效向前。...例如:MVC、MVP、MVVM等,是提供基础功能的半成品,例如开源框架:Spring、spring boot、Django等,这是可以拿来直接使用或者在此基础上二次开发。框架是规范,架构是结构。...1、框架主要有两特性: 1)、框架是提供基础功能的半成品:已经对基础的代码(例如文件上传,数据库查询)进行了封装并提供相应的API,开发者使用框架是直接调用封装好的api可以省去很多代码编写,从而提高工作效率和开发速度...组件单独测试方便:测试完成后进行集中测试。 二、组件化之基础应用框架/脚手架 ---- 组件化到组件的粒度到底多大,如何区分业务组件以及基础业务组件?这个需要根据具体项目具体分析。...#900~999 区间表示系统异常错误 #1000~1999 区间表示用户模块1错误 #2000~2999 区间表示用户模块2错误 这样前端开发人员得到返回值后,根据状态码就可以知道,大概什么错误

    53641

    盘点7款顶级 PHP Web 框架

    Laravel的优势:易于学习;无缝数据迁移; PHP 社区中很受欢迎;MVC 架构支持;大量培训材料(文档、图像和视频教程);模板引擎;简单的单元测试等。...这个功能强大且易于使用的框架适用于各种 Web 应用。 Yii2 的优势:AJAX 支持;处理错误的有效工具;自定义默认设置;简单的第三方组件集成;强大的社区支持等。...CodeIgniter 的优势:MVC 架构;Top-Notch 错误处理;提供卓越的性能;包中提供了几种工具;内置安全工具;优秀的文档等。...它还具有这些增强的安全功能:SQL 注入预防;跨域请求(CSRF)保护;输入验证;跨站点脚本(XSS)保护;该框架带来了代码生成和脚手架功能,以加速开发过程。...与其他框架相比,Phalcon(最流行的 PHP 框架中)使用的资源非常少,从而可以快速处理 HTTP 请求。

    4.7K00

    .NET Core多平台开发体验: Windows

    dotnet.exe是.NET Core SDK为我们提供的一个重要的命令行工具,我们进行.NET Core应用的开发部署的时候将会频繁地使用它。...NET Core SDK安装的时候为我们提供了一系列预定义的脚手架模板,我们可以按照如下图所示的方式执行命令行“dotnet new list”列出当前安装的脚手架模板。 ?...; } } } 虽然很简单,但是我们通过执行脚手架命令行创建出来的是一个完成的.NET Core控制台应用,所以我们可以无需对其作任何修改的情况下直接对它进行编译和运行,针对....为了程序性中使用到上述这两个对象,我们自然先得具有对应程序集的引用。...如果我们需要为这个应用添加View,这个SDK并不能提供针对View的动态编译功能(在运行时动态编译使用到的View,而不是部署的时候将所有View进行预编译),所以我们按照如下的方式编辑.csproj

    1.7K70
    领券