加载中…
个人资料
大头
大头
  • 博客等级:
  • 博客积分:0
  • 博客访问:147,995
  • 关注人气:56
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
搜博主文章
博文
分类: STM32-Cortex-M

最近在用STM32F051单片机,其内核是Cortex-M0。根据网上的教程,希望用Keil的Debug功能中的串口,观察程序变量。

但是在Debug中的Command窗口,一配置MODE COM1 9600,0,8,1​,就报错

“*** error 76: command not supported in target mode”

后来才知道,串口观察得用在软件调试模式下,不是硬件调试。

当把Debug模式调到simulation模式,虽然过了Mode这一关,但是不认Assign的virtual register。查到有人也遇到此类问题,但他们用的是其他高级芯片,修改了Debug的调试文件,便通过了。但Cortex-M0不行,因为这与ST没有给足Cortex-M0的调试文件有关。他们认为现在芯片硬件成本在这么低,最好是硬件调试,效果又快又好,还要啥自行车(避免软件调试)。

其次,Cortex-M0不支持Trace功能,因为是ARM V6结构,较老,没有ITM功能,所以无论你用Jlink,还是STLink,都不能用到Trace。

建议使用Segger​的RTT和J-Scope功能,不仅覆盖Cortex-M0,而且功能强大、高效。网上有周立功工作室出的“浅谈工程师调试法宝”系列教程。

 

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
分类: STM32-Cortex-M

摘要: 我们前三篇的文档中介绍的调试方法,都因为各种原因而不能在所有的MCU上做到通用,而今天这一切将发生改变。现在就一起来看一下这个神奇的调试工具-RTT。

RTT( Real Time Terminal)是SEGGER公司新出的可以在嵌入式应用中与用户进行交互的实时终端。J-Link驱动4.90之后的版本都有这个软件哦。

用RTT可以从目标MCU上输出信息的同时也可以非常高速的向应用程序发送信息,并且不影响MCU的实时性。其实现原理就是J-link与MCU共享内存,具体实现细节感兴趣的读者可以自己去查阅下资料,本文以应用为主。RTT的工作框图如图 1所示。MCU通过J-link与电脑连接并将打印信息输出到电脑上,电脑同时可以通过键盘等向MCU发送数据。

如果你想使用它,操作也非常简单,首先从官网下载RTT代码,然后把如图 2所示的4个文件添加到你的工程中。并且在主函数文件的起始处添加SEGGER_RTT.h文件。如下所示。

#include 'SEGGER_RTT.h'

然后我们就可以直接在主函数中调用SEGGER_RTT_printf函数来打印调试信息了,该函数用法和printf函数类似,只是多了一个参数用来指定RTT通道。其中通道0,就是我们在调试时使用的通道。在主函数中添加

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

科幻

分类: 虚拟溶液

程序、CPU中的中断,就如同基因、生物体的突变。

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

科幻

分类: 虚拟溶液

         断刀和老婆并排坐在餐桌前吃饭,老婆已经五周的身孕,他幸福无比,突然想起今天看到的一段书,要讲给老婆听。

         早些年,断刀只不过是个街头的一穷二白的孤儿,在修车铺里打工,平时给兄弟们帮帮忙、出出头、站站台,兄弟们给他起了个绰号“断刀”、“刀哥”。到了结婚的年龄,老板给他介绍了个外地来京做保姆的姑娘。他俩认识不久后,就结婚了。可是结婚三四年,老婆的肚子一点动静也没有。

        4S店的兴起,让修车铺​​的生意峻减。断刀在交通大学实验室里找了份临时工的工作——电焊工。平时工作,听听这些教授博士们的课,四下无人时也会捡起他们丢掉的书拿起来看看。工作中少了些戾气、多了份书香,倒是让老婆怀上了。

        断刀很奇怪,他觉得这些大部头的书似乎在讲故事,而且是他能看懂的故事。他越看越喜欢,而且回家给老婆讲。今天他又感悟出一个很有趣的想法。

​      “老婆,你知不知道现在天下的

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
分类: 虚拟溶液

2016年6月15日 星期三 (雨)

代码具有了智能,不仅仅是人工智能,它可以复制、交配、变异、繁殖、进化。新的代码不断的产生。

最原始的那个代码是什么呢?

在一个小小的单片机里,这一小段原始代码被写进去。它犹如在一个囚徒被困在黑色的箱子里,想了解这个世界、想寻找出口。

出口有一个,是个串口,连着另外一台上位机电脑,一个慵懒的程序员躺在椅子里玩着手机,偶尔看下电脑屏幕的串口助手。终于有一天,那个串口收到了字符:ÿ.​

我们称它为“病毒”。​

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

科幻

分类: 虚拟溶液

2056年4月19日 星期三 (雨) 

从四点半起,就下起了小雨。一大片乌云,一动不动,死死得压在我们头顶。我们关停了车窗玻璃的纳米模式,故意让雨水挂在玻璃上,外面的行人看不到我们,也没兴趣看我们,这钟隐藏总给我一种静谧的感觉,所以我喜欢在雨天行动。

5:45,段天铭(Timmy Dyun,样本号13)​准时从地铁里走出来。真是感谢老头子Elon Musk当年的发明-Hyperloop,让十几年前这些整天排长队等地铁、挤地铁的上班族,现在刷刷得直接送来送去。这是我当警几十年来最大的感受。以前蹲点等一个人,从他下班起就开始在家门口等着了,赶不齐要等到什么时候。现在好了,这帮人一下班,无论多远,最多十来分钟,就走出地铁了。

这家伙今天看起来状态不怎么样啊。

6:00,进家门。好了,我们开始行动了。

录音完毕,OVER!​

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

杂谈

分类: 虚拟溶液
凯文凯利所著的《失控》,给了我一些分析GitHub的视角:去中心化、分布式系统、人与人的自由组合、信息的复制与传递。也许,这又是一个互联网公司复制了“去中心化”的理念后(与SVN的不同)成功的故事。

但,继续读《失控》,会发现“互联网”精神不止是信息共享,还要隐私保护,而隐私保护在无处不互联网的今天,反而是昂贵的,很有市场的。GitHub的私有仓库提供了隐私保护,也收了费。可这种按年收费的模式反而不那么“去中心化”了。

好的收费模式,应该是按信息收费的:我上传了多少信息,就扣掉我多少钱;我想让哪段代码被隐藏,就扣哪段代码的钱。这才是真正的数字金融——货币和信息点对点得绑在了一起,你只需要为你需要的付费,不必为你不需要的掏冤枉钱。

同样,下载别人的代码也需要向作者付费。那帮别人改代码,并被采用,作者需要向贡献者付费吗?不需要,下载者下载了哪行代码,只需要向这行代码的作者付费即可。

哦,这么看,GitHub岂不是代码界的淘宝了吗?!不仅仅是。这是一个可以把货币和信息点对点绑在一起的平台,这个
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

it

分类: EDA使用技巧
1.网上众多的解决方法基本就是告诉你:在Modelsim环境变量path中添加Xilinx编译的路径。这里不再赘述。
  我去此路径所对应的的文件中找过,其实没有mti_se这个文件。所以遇到“mti_se not found”并不是因为软件没装好,当然也不可能在别人的电脑上拷一份过来。

2.如添加路径后编译仍不成功,请查看自己的Modelsim版本,是SE,还是PE,还是PE_Student?!若是后两者,请把命令语句改成mti_pe。因为命令“compxlib -s mti_se -arch all -l all -w -lib all”中:
-s 选项用于指明为哪一种仿真器编译仿真库,用户必须为compxlib命令指定该选项。
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

it

分类: EDA使用技巧
    U盘启动的目的是为了特定的目的, 可以是启动DOS 也可以是一个备份还原软件 还可以是一个能在内存中运行的PE系统或者prayaya Q3系统.现在大部分的电脑都支持U盘启动。在系统崩溃和快速安装系统时能起到很大的作用。

    U盘启动的介绍:    现在的主板BIOS都支持USB启动,从主板看支持。

  

1、首先是你是否设置了启动顺序,如果没有:

  将U盘插入主板USB接口(最好将其他无关的USB设备暂时拔掉),重启电脑,在系统自检的界面上按Del键进入BIOS设置(如果是特殊BIOS,请参考主板手册后确定按哪个键进入BIOS),进入BIOS FEATURES SETUP中,将Boot Sequence(启动顺序)设定为USB-ZIP(或USB-HDD、USB-FDD,USB-CD-ROM 请与你

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

it

其实PE系统就相当于精简型的XP系统,知道精简的程度不同,PE精简的更深而已。
大家说不明白PE,可能是不明白在为什么它是一个文件
PE.IMG 或 PE.ISO 或 PE.IM_ 或 PE.IS_ 这是因为我们把PE的文件打包、压缩了 就象普通XP系统,你下的不是一个ISO文件吗?
还有就是大家都用过DOS吧,它在WINDOWS 启动前引导,为什么PE和这些DOS一样
在WINDOWS 启动前引导呢?那是因为它和XP、DOS一样,是一个独立的操作系统。
那它和深度精简的XP到底有什么不同和相同的地方呢?不同点有许多许多:
1、PE直接运行,不需安装。你下载一个DEEPIN XP 要安装到硬盘上才可以运行
  而PE的光盘,直接在光盘上或内存里运行,不需安装,没硬盘也可以使用(要不然PE怎么会有硬盘分区这个功能呢?)
2、PE的精简程度比精简型XP要大的多。因为是用来做系统维护,不需要太多的功能,可以运行一些简单的程序就可以了,这里就照应了大家经常遇到的一个问题:为什么有许多程序不可以在PE下运行?这是因为我们毕竟把XP的许许多多的功能都杀掉了,它只是一个维护工具。
3、都基于XP,易于上手,会用XP,就会用PE

大家暂时把PE理
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
  

新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

新浪公司 版权所有