STM32F0308开发环境的选择--CooCox CoIDE篇
STM32的开发环境有很多总,官方手册也提供了IAR Embedded Workbench、MDK-ARM和TrueSTUDIO这3种。今天我试用了CooCox CoIDE,是免费的集成开发环境,同TI公司提供的Code Composer Studio CCS一样,基于Eclipse和GCC的全功能集成开发环境(IDE),两者的界面都差不多,用惯了CCSv5的话,就很容易上手了。下面开始我的试用。
1.下载并安装CooCox CoIDE:CooCox CoIDE V1.7.5 9/29/2013更新
下载地址:http://www.coocox.org/CoIDE/CoIDE_Updates.htm,下面是界面:
2.首先你需要自己下载安装编译交叉工具链gcc-arm-none-eabi-4_7-2013q3-20130916-win32.exe。下载地址:https://launchpad.net/gcc-arm-embedded/+download
安装完之后的目录:
3.配置CoIDE的编译器,选择Project->Select Toolchain Path
选择你先前安装工具链的目录:例如我的是D:\\Program Files (x86)\\GNU Tools ARM Embedded\\4.7 2013q3\\bin
4.接下来开始创建工程了,一步步按照下面操作,简单点击下就行了,省了好多事儿!



按照我下面的图打上勾,我第一个测试的GPIO控制
接下来点击Build:
啊哦!怎么会有warning呢?好吧,先解决下。当然找度娘啦!

找到出现警告的原因后,解决办法如下。(个人方法,仅供参考)


再来编译下,没有警告了。
5.接下来就是编写程序了[code]#include \"stm32f0xx.h\"
#include \"stm32f0xx_rcc.h\"
#include \"stm32f0xx_gpio.h\"
GPIO_InitTypeDef GPIO_InitStructure;
int main(void)
{
uint32_t times;
/* GPIOC Periph clock enable */
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOC, ENABLE);
/* Configure PC8 and PC9 in output pushpull mode */
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8 | GPIO_Pin_9;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
GPIO_Init(GPIOC, &GPIO_InitStructure);
while (1)
{
/* Set PC8 and PC9 */
GPIO_SetBits(GPIOC, GPIO_Pin_8);
/* Delay some time */
for(times = 0; times < 500000; times++);
GPIO_SetBits(GPIOC, GPIO_Pin_9);
for(times = 0; times < 500000; times++);
GPIO_ResetBits(GPIOC, GPIO_Pin_8);
for(times = 0; times < 500000; times++);
GPIO_ResetBits(GPIOC, GPIO_Pin_9);
for(times = 0; times < 500000; times++);
}
}
[/code][code]
[/code]
6.你也可以查看官方提供的例程
7.总结:有人问这么多的开发环境,该怎么选择呢?其实你大可以每款软件都尝试用一下,根据自己的口味来选择。比如人家分享的心得,在Ubuntu下开发STM32,其实也是基于Eclipse和GCC,这就涉及到了开源了。我喜欢开源。过两天有时间也配置下Ubuntu13.10下的STM32F0的开发环境,图文并茂哦!
STM32F0308开发环境的选择--CooCox CoIDE篇的更多相关文章
- Java开发环境的搭建01——Eclipse篇(Windows)
搭建环境是换项目组和新入职的开发入项都必须面临的一件事情,搭搭环境,一天就过去了...本着不浪费生命不做重复的无用功,在这里写写环境搭建的基本功,这篇是介绍Java环境搭建,常见的开发IDE无非就两种 ...
- 个人PHP开发环境的选择与搭建
入职一个多月,重新调整了一下自己电脑的开发环境,现在写出来,算是作为自己的笔记. 如果你是该文章的读者,请忍受文章内的所有小章节都没有具体的步骤. 因为平时还要打游戏(划掉),所以电脑系统一直是Win ...
- 深度学习开发环境搭建教程(Mac篇)
本文将指导你如何在自己的Mac上部署Theano + Keras的深度学习开发环境. 如果你的Mac不自带NVIDIA的独立显卡(例如15寸以下或者17年新款的Macbook.具体可以在"关 ...
- 机器学习 - 开发环境安装pycharm + tensorflow集成篇
继续上篇的pyspark集成后,我们再来看看当今热的不得了的tensorflow是如何继承进pycharm环境的 参考: http://blog.csdn.net/include1224/articl ...
- 一、React Native 搭建开发环境(1)(Mac OS - IOS项目篇)
React Native是Facebook推出的一个开发IOS和安卓APP的技术.至于更多的详情,这里不再描述,大家可以自行百度它的定义. 原因:由于我想在一台电脑上同时开发IOS和Android两个 ...
- Java开发环境的搭建02——IntelliJ IDEA篇(Windows)
1.IntelliJ IDEA的下载与安装 IntelliJ IDEA简称IDEA,由JetBrains公司开发,是java语言开发的集成环境,也是目前业界被公认的最好的java开发工具之一.尤其在智 ...
- Android开发环境搭建篇详尽的教程实例汇
原文链接:http://android.eoe.cn/topic/android_sdk 一.android开发环境搭建图文教程整理篇: 1.Android开发环境搭建全程演示(jdk+eclip+a ...
- Direct3D11学习:(一)开发环境配置
转载请注明出处:http://www.cnblogs.com/Ray1024 从今天开始,开启一个新的系列:Direct3D11的学习教程. 因为一直对3D方面比较感兴趣,最近决定开始学习D3D知 ...
- 「C语言」Windows+EclipseCDT下的C语言开发环境准备
之前写过一篇 「C语言」在Windows平台搭建C语言开发环境的多种方式 ,讨论了如何在Windows下用DEV C++.EclipseCDT.VisualStudio.Sublime Test.Cl ...
随机推荐
- 修改sqlplus提示符
如图所示 : 修改 提示符为 username(sid_serial#)@instance_name ,这样其实很方便的 以下是步骤 在11g中glogin.sql 文件是不存在的,取而代之的是 lo ...
- Spring学习之代理
Spring的核心就是IOC和AOP IOC就是控制反转: 就是用配置文件的方式给javabean 赋值. 正常的在程序里;用new 的方式创建一个对象的时候,他就固定了值, 如果是注入的方式的话 ...
- 暑假集训(2)第一弹 -----Is It A Tree?(Poj308)
A - Is It A Tree? Crawling in process... Crawling failed Time Limit:1000MS Memory Limit:10000KB ...
- QListWidget 删除选中项目
void MainWindow::on_action_Del_triggered() { QList<QListWidgetItem*> selectedItems = ui->li ...
- 访问Access数据库(有多个数据库时 体现多态)
如果想编写单机版MIS.小型网站等对数据库性能要求不高的系统,又不想安装SQLServer,可以使用Access(MDAC),只要一个mdb文件就可以了.使用Access创建mdb文件,建表.OleD ...
- 为什么aspx这么“慢”
首先你要明白什么viewstate:由系统生成的一个隐藏域,用来进行页面状态保持的 里面存放着关于判断页面是否提交的Ispostback,和一些关于服务器控件的状态和数据: (说明下 ,ViewSta ...
- 疯狂学习java web
因工作需要,疯狂学习java web,只是这么多年一直从事C++开发,突然之间要接手同事的那么一大堆代码,真有无从下手的感觉,首先是要学习html,然后是js, 然后是jsp,当然还有各种框架,想想就 ...
- linux ptheard 生产者消费者
; { { printf( pthread_mutex_lock(&mutex); != g_iBufSiz ...
- 【笔记-前端】div+css排版基础,以及错误记录
现在的网站对于前端的排版已经逐渐不使用<table>,而是使用div+css. 使用这种方法的最大好处就在于在维护页面时,可以只维护css而不去改动html. 可是这种方式对于初学者来说可 ...
- php 魔术方法
PHP5.0后,php面向对象提成更多方法,使得php更加的强大!! 一些在PHP叫魔术方法的函数,在这里介绍一下:其实在一般的应用中,我们都需要用到他们!! 1.__construct() 当实例化 ...