学了8051单片机, 学了MSP430系列, 终于开始步入正轨, 开始学习 stm32(ARM Cortex-M3)系列微处理器~

  学51用Keil uVision开发环境, 提一下Keil uVision在我眼中是个什么贷吧(我是说代码编辑器,因为大部分是在写代码):
    1.对中文支持非常不好, 经常乱码
    2.代码高亮简直一坨X
    3.结构体成员/指针没有快速提示信息
    4.函数调用没有参数提示
    5.不想再说下去...

  插一句:我是学过电脑编程的, 大量使用过VisualStudio系列, 对她们的方便深有体会, 所以我才会对Keil嗤之以鼻~
    人家VC6.0已经是98年,上个世纪的产品, 你TM怎么跟人家完全不是一个级别的..............................

  我忍气吞声, 终于熬过了那一段完全使用uVision的艰苦时间~~~

  开始学MSP430, 使用IAR Embedded Workbench, 这个跟Keil没两样, 不好意思再说, 不过有一点, IAR可以配置外部编辑器,
  还好她有自知之明... 度过了一段使用IAR+VS2012的时间~

  好了, 现在开始了解STM32, 原来编辑器又是KeiluVision这货(也可以使用IAR,那又怎么样.........), 我无话可说~

  还好, 有一点我很欣慰, 人家stm32 官方提供的固件库是基于ANSI-C语言写的, 其代码是多个编译器平台均可使用的~
  我的意思是说, 这样的话, stm32的代码结构, 也可以由win32平台的VisualStudio智能感知识别出来了, 不至于编辑时报语法错误~

  下面截几张图吧, 是我在VC6.0中编辑代码的截图, 大家一看就可以知道VC6.0并不是真的到了该抛弃的年龄了....:

  如果以前在学校使用VC6.0, 没有发现其这么强大的功能的, 赶快试一试吧~
    

  1.变量名自动补全
  

  

  2.多种颜色区分函数变量宏定义.png
  

  3.函数调用提示.png

  

  4.宏定义列表显示.png
  

  5.结构体成员提示.png
  

  6.快速转到某函数处.png
  

  7.清晰的内定义展示.png
  

  8.一键转到函数变量宏定义定义处.png
  

  
  当然, VC6.0编辑器的优点远不止比KeiluVision多这么多, 用得多了就会真的觉得怎样写起代码来才有效率~

  好了, 关于为什么要不使用Keil的编辑器, 取而代之的是VC6.0的代码编辑器原因就是这些了, 已经足够了吧?

  另外,需要说明的是: 以上我说的只是针对于代码编写工作而言, 不涉及到代码的编译与程序的烧写, 以及程序的调试工作~

  当然, 大家可能注意到了, 要在VC中写代码, 当然还是要创建一个项目的, 不然, 智能感知将不会工作...
  要创建的VC6的项目就是从Keil的项目那样的就好了, 目录一样, 包含的库一样, 项目源代码结构一样~
  呵呵, 确实有点复杂, 每建一个Keil项目就要另外建一个VC6.0的工程, 麻烦了~
  别担心, 我花了时间写了个几十KB的程序解决了从Keil uVision项目文件到VC6.0项目文件的转换工作, 只要一运行程序,输入
相应的参数, 就可以生成和Keil的工程一模一样的项目结构了.

  下面还是来一张图吧:
  

  生成的项目文件用VC6.0打开后,大家应该可以看到VC6.0和Keil具有完全一样的目录树结构:
  

  关于转换工具 keil2vs.exe:
    我今天写的一个工具, 用VC6.0+C语言+控制台的方式简单写成, 程序内部使用了开源的TinyXml库来解析KeiluVision的项目文件.
    转换工作我只在KeiluVision4上面测试过, uV3和uV2都没作测试, 不知道能否正常工作~

  程序及源码下载: http://blog.twofei.com/files/511/keil2vs.7z

  女孩不哭 @ 2013-10-29 @ http://www.cnblogs.com/nbsofer/p/keil2vs.html

stm32开发 - 远离 Keil uVision, 回到 Visual Studio的更多相关文章

  1. Xamarin+Prism开发详解三:Visual studio 2017 RC初体验

    Visual studio 2017 RC出来一段时间了,最近有时间就想安装试试,随带分享一下安装使用体验. 1,卸载visual studio 2015 虽然可以同时安装visual studio ...

  2. 【转】让开发变得简单一点- Visual Studio 2010几个让人印象深刻的新功能

    原文网址:http://xhinker.blog.51cto.com/640011/313055/ 引言 "我们的目标,不仅仅是做出几个新功能,而是要回答一个问题:'如何让现在的开发人员生活 ...

  3. 在【Xamarin+Prism开发详解三:Visual studio 2017 RC初体验】中分享了Visual studio 2017RC的大致情况,同时也发现大家对新的Visual Studio很是感兴趣。于是发时间深入研究了一下Visual Studio 2017RC 是不是和微软Connect()://2016上说得一样神。

    总共列出了12点,耐心点慢慢看! 1,添加了不少[代码样式]的设置项目. 通过合理的设置每个人都能写出优美的代码,而且团队项目也可以达到统一代码风格. this首选项:可以设置[字段,属性,方法,事件 ...

  4. Visual Studio 开发(三):Visual Studio 使用时常见问题解决方案

    一.Error LNK2019: 无法解析的外部符号 此问题应该是Visual Studio的初学者最常碰到的问题,也是相对来说很让人头疼的问题. 注:Error LNK2019 问题在VC 6.0 ...

  5. MVC开发 好的扩展套件(Visual Studio 插件)

     

  6. 在 Visual Studio 2010 中开发和部署 Windows Azure 应用程序

    原文 在 Visual Studio 2010 中开发和部署 Windows Azure 应用程序 在 Visual Studio 2010 中开发和部署 Windows Azure 应用程序 Jim ...

  7. Visual Studio跨平台开发实战(2) - Xamarin.iOS基本控制项介绍

    原文 Visual Studio跨平台开发实战(2) - Xamarin.iOS基本控制项介绍 前言 在上一篇文章中, 我们介绍了Xamarin 以及简单的HelloWorld范例, 这次我们针对iO ...

  8. Visual Studio跨平台开发实战(1) - Hello Xamarin!

    原文 Visual Studio跨平台开发实战(1) - Hello Xamarin! 前言 应用程式发展的脚步, 从来没有停过. 从早期的Windows 应用程式, 到网路时代的web 应用程式, ...

  9. visual studio多工程开发配置

    文章:带你玩转Visual Studio——带你多工程开发 带你玩转Visual Studio——带你理解微软的预编译头技术 通过上一篇文章带你玩转Visual Studio——带你多工程开发的讲解, ...

随机推荐

  1. Oracle聚合连接字符串

    问题需求 现有一个数据表,如下: ID    CODE    NAME 1    A    张三 2    A    李四 3    B    王五 4    C    赵六 5    C    孙七 ...

  2. 基于redis分布式缓存实现(新浪微博案例)转

    第一:Redis 是什么? Redis是基于内存.可持久化的日志型.Key-Value数据库 高性能存储系统,并提供多种语言的API. 第二:出现背景 数据结构(Data Structure)需求越来 ...

  3. js检测来源网址,如果是搜索引擎跳转到新地址

    [js]代码 <script> var regexp=/\.(sogou|soso|baidu|google|youdao|yahoo|bing|118114|biso|gougou|if ...

  4. Mysql5.7初始化成空密码或随机密码的方式

    命令在此:mysqld --initialize-insecure --user=mysql 文档表明,使用-initialize生成随机密码,使用-initialize-insecure生成空密码. ...

  5. 1073: 动物简介(animal)

    #include<iostream> #include<string> #include<stdio.h> #include<algorithm> #i ...

  6. 如何解析android访问webservice返回的SoapObject数据(可用)

    怎么解析android访问webservice返回的SoapObject数据 本帖最后由 kkDragon123 于 2013-03-26 15:50:07 编辑 我的数据如下:mingdanResp ...

  7. postgresql修改配置生效方法

    对于配置服务器,,太多时候我们在Linux中做的操作是,配置*.conf文件,然后重启服务.而很多服务都具有reload功能,而但是具体到某个配置,有时候直接说出需不需要重启服务而使得配置生效,这并不 ...

  8. 解决ajax异步传输数据,return返回为undefined的问题

    function GetUserInfo(tp) { var username; $.ajax({ type: "POST", cache: false, data: " ...

  9. 了解 node.js

    原文为: 我们为什么要使用NodeJS 写的好,就收藏于此,供学习之用. 科普文一则,说说我对NodeJS(一种服务端JavaScript实现)的一些认识,以及我为什么会向后端工程师推荐NodeJS. ...

  10. Ubuntu18.04 运行 Gradle 4.9

    简介 Gradle是一个基于Apache Ant和Apache Maven的项目自动化构建工具, 使用一种基于Groovy的特定领域语言(domain-specific language DSL)来声 ...