CoIDE在STM32系列单片机中的使用实践
这一段时间找到CoIDE,发现其真的挺好用,编辑界面比Keil功能强大。因此把实际操作过程记录下来。
CoIDE 是CooCox专业打造的一款免费的ARMCortexMCU嵌入式集成开发环境(Integrated Development Environment,IDE)。CoIDE集成了CoBuilder和CoDebugger,适用于编译、烧写及调试嵌入式系统应用。它为ARM Cortex-M系列的开发者提供了一套完整的集成开发环境,包括工程管理、编辑、编译工具、调试器。自2010年8月份正式发布第一版本CoIDE V1.0.0,目前稳定版本是V1.7.8。
其特点如下:
- 免费的集成开发环境
- 集成ARM GCC编译器和CDT编辑器
- 支持doxygen语法规范,可自动生成帮助文档
- 基于互联网以组件库为核心的嵌入式开发平台
- 集成嵌入式操作系统CoOS
- 支持主流的Cortex M0,M3,M4,M0+芯片
- 可定制的图形化用户界面
- 支持程序下载,在FLASH或RAM中调试
- 外设寄存器同步更新和查看
1、由于CoIDE是基于eclipse开发的,其基础是Java开发,因此必须安装Java运行环境,才能安装和运行CoIDE. Java Runtime Environment(JRE),
下载地址:http://www.java.com/en/download/manual.jsp ,根据电脑系统类型选择32位还是64位。这个安装比较简单,一路下一步就好了。
2、到官方网站下载CoIDE,选择V1.7.8版本:
下载地址:http://www.coocox.org/software/coide.php 如果以后需要使用新版本,再更换! 这个安装也比较简单,一路next就好了。
3、下载免费GUN编译工具,
下载地址为: https://launchpad.net/gcc-arm-embedded/+download 下载安装编译交叉工具链gcc-arm-none-eabi-4_7-2013q3-20130916-win32.exe。
这个安装也简单,运行后提示选择语言,选择简体中文后,安装界面变为中文界面,一路下一步,直至安装完成。
4、安装完成后,桌面和开始菜单中都会有COIDE的图标,双击运行CoIDE,第一次需要加载和配置很多东西,打开时间稍慢,打开后初始界面如下。

5、由于该IDE需要手动选择配置编译器,因此选择使用我们前面安装了的GUN编译器,当然也可以选择其它家的(前提是已安装)。
点击菜单Project->Select Toolchain Path,界面如下



6、该编译工具自带使用说明,pdf格式,100多页,介绍详细,使用简单,大部分都是截图说明。在开始界面可以看到User Guide

7、以STM32051开发板为例,点击Project->new Project,创建工程名称为STM32F051。可以选择chip手动选择新品型号,也可以选择Board,,根据开发板类型选择,最后点击finish.





8、工程创建好后,通过Board方式创建的可以在Repository看到该开发版的信息.

推荐使用chip方式创建工程,使用chip方式创建工程后,可以看到库选择

9、添加GPIO和LED blinking例程代码,如下修改工程配置后,编译





10、在线调试,
点击debug按钮,或者快捷键Ctrl+F5,链接下载成功后自动进入main函数。在这个界面可以使用单步跟踪调试功能。全速运行,可以看到开发版上的LED灯循环闪动。




11、工程目录和文件的添加
在创建好的工程中添加目录和文件还是很方便的,在要添加的目录右键,选择Add Group或者Add Files即可,目录可以嵌套,目录可以整体拖动,创建好的目录和添加的文件自动按照字母顺序排序。



12、keil工程移植
在COIDE中,自动使用的是ST官方驱动库,STM32F10x使用的是V3.5版本,STM32F0系列使用的V1.2版本,因此如果之前的工程或者新建工程使用的版本库一致,原有代码基本无需改动,把原来的应用程序文件加载到这个工程目录即可。
CoIDE在STM32系列单片机中的使用实践的更多相关文章
- STM32系列单片机IO口模式设置
STM32单片机的每组IO口都有4个32位配置寄存器用于配置GPIOx_MODER, GPIOx_OTYPER, GPIOx_OSPEEDR和GPIOx_PUPDR,2个32位数据寄存器用于配置输入和 ...
- 8、16、32-BIT系列单片机区别与特点
一.8位单片机 8031/8051/8751是Intel公司早期的产品 1.8031的特点 8031片内不带程序存储器ROM,使用时用户需外接程序存储器和一片逻辑电路373,外接的程序存储器多为EPR ...
- STM32系列ARM单片机介绍
STM32系列基于专为要求高性能.低成本.低功耗的嵌入式应用专门设计的ARM Cortex-M3内核.按性能分成两个不同的系列:STM32F103"增强型"系列和STM32F101 ...
- stm32开发笔记(二):stm32系列使用V3.5固件库的帮助文件以及GPIO基本功能(一)
前言 stm32系列是最常用的单片机之一,不同的版本对应除了引脚.外设.频率.容量等'不同之外,其开发的方法是一样的. 本章讲解使用库函数使用GPIO引脚功能. 补充 本文章为多年前学习 ...
- stm32开发笔记(三):stm32系列的GPIO基本功能之输出驱动LED灯、输入按键KEY以及Demo
前言 stm32系列是最常用的单片机之一,不同的版本对应除了引脚.外设.频率.容量等'不同之外,其开发的方法是一样的. 本章讲解使用GPIO引脚功能驱动LED灯和接收Key按钮输入. STM ...
- STM32L系列单片机内部EEPROM的读写
STM32L系列单片机内部提供了EEPROM存储区域,但实质上,其FLASH也是EEPROM类型,只不过有一块区域被开放出来专门用作EEPROM操作而已.STM32L的EEPROM使用寿命设计为100 ...
- AT89C 系列单片机解密原理
单片机解密简单就是擦除单片机片内的加密锁定位.由于AT89C系列单片机擦除操作时序设计上的不合理.使在擦除片内程序之前首先擦除加密锁定位成为可能.AT89C系列单片机擦除操作的时序为:擦除开始---- ...
- 单片机中printf函数的重映射
单片机中printf函数的重映射 一.源自于:大侠有话说 1.如果你在学习单片机之前学过C语言,那么一定知道printf这个函数.它最最好用的功能 除了打印你想要的字符到屏幕上外,还能把数字进行格式化 ...
- Keil MDK STM32系列(九) 基于HAL和FatFs的FAT格式SD卡TF卡读写
Keil MDK STM32系列 Keil MDK STM32系列(一) 基于标准外设库SPL的STM32F103开发 Keil MDK STM32系列(二) 基于标准外设库SPL的STM32F401 ...
随机推荐
- 如何让老式浏览器支持html5新增的语义元素
html5新增加了一些语义元素,如header, footer, nav, aritcle, aside,等等. 然而,有些老款浏览器无法识别这些元素,会把它们当成 inline 元素对待,这会导致一 ...
- HttpModule & HttpHandler
ASP.NET 处理请求的过程 inetinfo.exe:www 服务进程,IIS 服务 和 ASPNET_ISAPI.dll 都寄存在此进程中. ASPNET_ISAPI.dll:处理 .aspx ...
- 嵌入式系统添加无线wifi模块
开发环境:fl2440开发板,linux3.0内核,交叉编译器路径/opt/buildroot-2011.11/arm920t/usr/bin/arm-linux-,无线网卡RT3070 平时开发板联 ...
- MVC学习网站
http://www.cnblogs.com/artech/archive/2012/04/10/how-mvc-works.html
- centos6.5为tengine安装php 5.6支持
1.到php官网下载最新的php版本 http://php.net/ 我下载的是php-5.6.28.tar.bz2 2.编译安装 2.1安装依赖 2.1.1 解决libxml2和xml2-confi ...
- mybatis 中sql语句传递多个参数
Available parameters are [2, 1, 0, param1, param2, param3] <select id="loginByTeacher" ...
- SQL Server中字符串函数LEN 和 DATALENGTH辨析
LEN:返回指定字符串表达式的字符(而不是字节)数,其中不包含尾随空格. DATALENGTH:返回用于表示任何表达式的字节数. 示例1:(相同,返回结果都为5): select LEN ('ssss ...
- mysql-bin引起mysql不能启动
日志提示无法找到mysql-bin.000005这个文件 原因是我把其删除了,而在mysql-bin.index文件中却还有mysql-bin.000005的记录,因此启动失败了 解决: cd /va ...
- Oracle补习班第八天
The best hearts are always the bravest. 心灵最高尚的人,也总是最勇敢的人. 1,权限.角色.与用户 创建用户 create user aa identified ...
- java安全沙箱(四)之安全管理器及Java API
java是一种类型安全的语言,它有四类称为安全沙箱机制的安全机制来保证语言的安全性,这四类安全沙箱分别是: 类加载体系 .class文件检验器 内置于Java虚拟机(及语言)的安全特性 安全管理器及J ...