`
爱迪生的小屋
  • 浏览: 36074 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Eclipse Keil C51插件

阅读更多

 

    做了一个光立光,用的是8051架构的芯片,程序开发需要用的Keil C51编译器,感觉Keil的编辑器用得不如Eclipse方便,遂决定做一个Eclipse插件,将Keil的命令行编译器集成进去,顺便也学习一下Eclipse插件开发。



 

    Keil C51的命令行工具比较简单,三步:

    1. C51编译.c文件到.OBJ,一次处理一个.c文件
      C51 main.c LARGE OPTIMIZE (8,SPEED) WARNINGLEVEL (2)
    2. BL51连接所有的.OBJ文件
      BL51 main.OBJ TO main.BIN
    3. OH51转换二进制文件到.HEX流
      OH51 main.BIN

  *生成的main.hex文件可以通过专用工具烧录到芯片中,我用的是STC芯片,工具是STC ISP。

 

 
  

工具使用说明:

  1. 安装msys:http://www.mingw.org/wiki/MSYS/
  2. 安装Keil C51,随便百度一个
  3. 将msys和Keil C51的bin路径加到path中:(KEIL)/C51/BIN,(MinGW)\msys\1.0\bin
  4. 将压缩包中的两个脚本 _C51和_BLOH51放到KEIL的BIN目录中(KEIL)/C51/BIN
  5. 安装Eclipse+CDT,可以直接装Eclipse for C++ Developor版,或者是普通的Eclipse加上CDT插件:
    http://www.eclipse.org/downloads/http://eclipse.org/cdt/downloads.php
  6. 安装eclipsekeil插件,eclipse插件安装方法有好几种,个人喜欢把插件放到独立目录,再在Eclipse/links目录中建一个link文件指向它
  7. 启动Eclipse,新建C Project,下面可以看到一个MSC51 Family (Keil),就是这个了。
  8. 在项目的属性中设置C/C++ Build->Settings可以设置编译的参数,记得把(Keil)/C51/INC目录加到Compiler的Directoies中。

  * 本插件参考了eclipse-sdcc的配置,劣显笨拙,很多C51的参数还没加上去,待续,管用就好。

 

 附件里的插件包含了源码,和class文件共同打在了jar包用,欢迎使用。

 

插件更新

    2013.7.28 命令行脚本更新,支持多OBJ编译和子目录文件编译

  • 大小: 147.6 KB
  • 大小: 75.3 KB
2
0
分享到:
评论
8 楼 devcang 2013-08-13  
爱迪生的小屋 写道
devcang 写道
又碰到一个情况,较大文件,编译加参数,不会加。


应该就是在BL51后面加 RAMSIZE(256)参数



再完善一下,就很不错了  
7 楼 爱迪生的小屋 2013-08-02  
devcang 写道
又碰到一个情况,较大文件,编译加参数,不会加。


应该就是在BL51后面加 RAMSIZE(256)参数
6 楼 devcang 2013-08-02  
又碰到一个情况,较大文件,编译加参数,不会加。

5 楼 爱迪生的小屋 2013-08-01  
devcang 写道
很开心,试验好了。
最关键的是_C51和_BLOH51 两个文件,和Eclipse的插件



第3、8,两个步骤,我作了修改,不依赖系统、新建项目也不用修改配置,都修改成Eclipse里面的配置。

在Eclipse、Windows菜单、Preferences、C/C++、Build、Environment,添加环境变量
C51INC
C51LIB
PATH
这些值,应该不用说都能明白吧。其实,C51INC和C51LIB 这两个环境变量,可以根据不同的MCU,进行修改,就可以适合不同的MCU。
例如,89C52RC,用KEIL的INC就够
C51INC=D:\keil\C51\INC

而15F204EA,侧可能是不同的.h目录,于是添加
C51INC=D:\keil\C51\INC;D:\keil\C51\15F204EA\inc



有一个缺点,就是eclipse不支持sbit的类型,会红色——但编译是没有问题的。

谢谢


    C51INC和C51LIB两个环境变量我希望设计成外部导入和工程自定义两个合并的模式,因为可能有一些工程需要依赖其它的非KEIL原生提供的库文件,所以Windows环境变量可以设置,Eclipse的Build Environment里可以设置,项目的Include选项也可以设置。
    Eclipse语言解析只针对标准C的,除了sbit, sfr不支持外,还有code, interrupter, data, xdata这些统统都不支持,因为不影响编译,所以我也懒得改了,这个要改工程量会很大
    接下来我比较感兴趣的是两件事情:一是编译出错时的错误定位,双击后直接跳到所在文件的行;二是编译命令的参数,还有很多没有集成到界面上,比如RAMSIZE(256)。这两个做好了会更加方便的。
    欢迎使用,你是我博客第一个评论的,感动啊!!!
4 楼 爱迪生的小屋 2013-08-01  
devcang 写道
devcang 写道
        支持

抽空试试



有一个疑问,为何_C51里面写的像是LINUX的命令行的呢,不是在windows下的吗


因为Eclipse Makefile编译是基于Linux下面的make的,会调用msys里面sh来执行脚本,所以脚本就是Linux格式的了,msys是一套在windows环境下的Linux命令行工具,通过它就可以在windows里执行Linux脚本了
3 楼 devcang 2013-08-01  
很开心,试验好了。
最关键的是_C51和_BLOH51 两个文件,和Eclipse的插件



第3、8,两个步骤,我作了修改,不依赖系统、新建项目也不用修改配置,都修改成Eclipse里面的配置。

在Eclipse、Windows菜单、Preferences、C/C++、Build、Environment,添加环境变量
C51INC
C51LIB
PATH
这些值,应该不用说都能明白吧。其实,C51INC和C51LIB 这两个环境变量,可以根据不同的MCU,进行修改,就可以适合不同的MCU。
例如,89C52RC,用KEIL的INC就够
C51INC=D:\keil\C51\INC

而15F204EA,侧可能是不同的.h目录,于是添加
C51INC=D:\keil\C51\INC;D:\keil\C51\15F204EA\inc



有一个缺点,就是eclipse不支持sbit的类型,会红色——但编译是没有问题的。

谢谢
2 楼 devcang 2013-08-01  
devcang 写道
        支持

抽空试试



有一个疑问,为何_C51里面写的像是LINUX的命令行的呢,不是在windows下的吗
1 楼 devcang 2013-08-01  
        支持

抽空试试

相关推荐

    keil C51调试插件

    《Keil C51调试插件与虚拟环境实践详解》 在嵌入式系统开发领域,Keil C51是一款广泛使用的C语言编译器,专门针对8051系列微控制器。它提供了强大的集成开发环境(IDE)以及丰富的调试工具,使得开发者能够在没有...

    keil c51 v9.52完整注册版

    Keil C51 V9.52是一款专为8051系列单片机设计的集成开发环境(IDE),由Keil Software公司开发。这款工具是单片机编程的得力助手,尤其对于使用8051架构的硬件开发者而言,它提供了全面的开发支持,包括编辑、编译、...

    Keil C51汉化包

    Keil C51是一款广泛应用于8051系列单片机开发的集成开发环境(IDE),由美国Keil Software公司开发。它集成了编辑器、编译器、连接器、模拟器等多种工具,使得开发者可以在同一平台上完成代码编写、编译、调试等一...

    keil C51 仿真插件

    《Keil C51仿真插件详解:点亮你的嵌入式世界》 Keil C51是一款广泛应用在8051微控制器开发中的集成开发环境(IDE),它提供了丰富的编译、调试工具,使得开发者能够高效地进行8051系列芯片的程序编写和测试。而...

    Keil C51 V9.61 (8051系列单片机软件开发工具)

    Keil C51是一款用于51系列兼容单片机C语言软件开发的系统。它支持所有的8051微控制器体系结构,提供了行业标准的Keil C编译器、宏汇编器、调试器、实时内核、单板计算机和仿真器等完整的开发方案。它适合各个阶段的...

    Keil C51 V9.60a 原版

    《Keil C51 V9.60a:嵌入式开发的重要工具》 Keil C51 V9.60a 是一款专为8051微控制器设计的集成开发环境(IDE),由Keil Software公司开发。该版本发布于2019年5月28日,提供了一个强大的软件开发平台,对于嵌入式...

    Keil C51讲座 Keil C51讲座 Keil C51讲座 Keil C51讲座

    Keil C51是一款专为8051微控制器系列设计的集成开发环境,由美国Keil Software公司开发。这个“Keil C51讲座”很可能是针对学习8051单片机编程的一系列教程资源,旨在帮助用户掌握如何使用Keil C51进行高效开发。 ...

    keil c51 软件仿真插件

    【keil C51软件仿真插件】是用于单片机开发的重要工具,它是由Keil公司提供的一个集成开发环境(IDE),专为8051系列单片机设计。这款软件不仅支持代码编写,还集成了强大的编译器、调试器以及仿真功能,使得开发者...

    Keil C51 v709_full Keil C51单片机开发软件

    Keil C51是一款专为8051系列单片机设计的集成开发环境,由美国Keil Software公司开发。这个版本是v7.09_full,代表它是最完整、功能最全面的一个版本。在单片机编程领域,Keil C51以其强大的编译器、调试器和丰富的...

    Keil C51集成开发环境

    Keil C51是一款专为8051微控制器家族设计的集成开发环境(IDE),由美国Keil Software公司开发。这款系统软件是嵌入式系统开发者常用的工具,集成了编辑器、编译器、链接器、调试器等多种功能,为C语言编程提供了...

    Keil C51单片机高级语言应用编程与实践

    本书详细介绍了V9.00版本的Keil C51编译器和Vision4的强大功能和具体使用方法,完整地介绍了最新版本C51编译器控制命令,给出了全部C51运行库函数及其应用范例,对Keil C51软件包中各种应用工具都作了详细介绍,阐述...

    Keil C51编译器用户手册 Keil C51编译器用户手册

    Keil C51是一款专为8051微控制器系列设计的C语言编译器,由Keil Software公司开发。这款编译器以其高效、易用和强大的功能在嵌入式系统开发领域广受欢迎。本手册是Keil C51编译器的详细指南,旨在帮助用户更好地理解...

    Keil C51 V8.16a KeyGen

    Keil C51 V8.16a KeyGen keil 4 的破解软件,值得收藏

    Keil_c51_v802.rar_Keil_c51_v8_Keil_c51_v802_keil软件

    Keil C51是一款强大的51系列单片机开发工具,尤其对于初学者和专业工程师来说,它是不可或缺的。此软件包"Keil_c51_v802.rar"包含了Keil C51的第8版,即版本8.02,这是一款经过多次迭代优化的稳定版本,为51单片机的...

    KEIL C51 v8.16a 安装程序

    KEIL C51 v8.16a 安装程序 可以使用

    Keil C51使用帮助[中文资料];Keil C51语言使用技巧及实战

    Keil C51是一款专为8051系列微控制器设计的集成开发环境,由美国Keil Software公司开发。这款工具集成了代码编辑、编译、链接、调试等多种功能,是8051开发者的重要助手。本文将详细介绍Keil C51的使用方法,包括...

    keil c51v9.06注册机

    Keil C51V9.06是一款专为8051微控制器设计的集成开发环境,由美国Keil Software公司开发。它提供了强大的编辑器、编译器、链接器和调试器等功能,使得8051系列MCU的程序开发变得更加便捷。本资源包含了Keil C51V9.06...

    Keil C51 插件 快速复制一行

    Keil C51 插件 快速复制一行

    直流电机闭环控制Keil c51源代码直流电机闭环控制Keil c51源代码直流电机闭环控制Keil c51源代码直流电机闭环控制Keil c51源代码

    直流电机闭环控制Keil c51源代码直流电机闭环控制Keil c51源代码直流电机闭环控制Keil c51源代码直流电机闭环控制Keil c51源代码直流电机闭环控制Keil c51源代码直流电机闭环控制Keil c51源代码

Global site tag (gtag.js) - Google Analytics