网站首页 > 物联资讯 > 技术分享

STM32F0308开发环境的选择--CooCox CoIDE篇

睿丰德科技 专注RFID识别技术和条码识别技术与管理软件的集成项目。质量追溯系统、MES系统、金蝶与条码系统对接、用友与条码系统对接

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,下面是界面:
RFID,RFID仓储管理,RFID资产管理,RFID系统,RFID设备管理RFID资产管理,RFID仓库管理,RFID珠宝,RFID生产线,RFID手持机,RFID读写器,广州睿丰德

2.首先你需要自己下载安装编译交叉工具链gcc-arm-none-eabi-4_7-2013q3-20130916-win32.exe。下载地址:https://launchpad.net/gcc-arm-embedded/+download
RFID,RFID仓储管理,RFID资产管理,RFID系统,RFID设备管理RFID资产管理,RFID仓库管理,RFID珠宝,RFID生产线,RFID手持机,RFID读写器,广州睿丰德
安装完之后的目录:RFID,RFID仓储管理,RFID资产管理,RFID系统,RFID设备管理RFID资产管理,RFID仓库管理,RFID珠宝,RFID生产线,RFID手持机,RFID读写器,广州睿丰德

3.配置CoIDE的编译器,选择Project->Select Toolchain Path
RFID,RFID仓储管理,RFID资产管理,RFID系统,RFID设备管理RFID资产管理,RFID仓库管理,RFID珠宝,RFID生产线,RFID手持机,RFID读写器,广州睿丰德
选择你先前安装工具链的目录:例如我的是D:\\Program Files (x86)\\GNU Tools ARM Embedded\\4.7 2013q3\\bin
RFID,RFID仓储管理,RFID资产管理,RFID系统,RFID设备管理RFID资产管理,RFID仓库管理,RFID珠宝,RFID生产线,RFID手持机,RFID读写器,广州睿丰德

4.接下来开始创建工程了,一步步按照下面操作,简单点击下就行了,省了好多事儿!RFID,RFID仓储管理,RFID资产管理,RFID系统,RFID设备管理RFID资产管理,RFID仓库管理,RFID珠宝,RFID生产线,RFID手持机,RFID读写器,广州睿丰德
RFID,RFID仓储管理,RFID资产管理,RFID系统,RFID设备管理RFID资产管理,RFID仓库管理,RFID珠宝,RFID生产线,RFID手持机,RFID读写器,广州睿丰德

RFID,RFID仓储管理,RFID资产管理,RFID系统,RFID设备管理RFID资产管理,RFID仓库管理,RFID珠宝,RFID生产线,RFID手持机,RFID读写器,广州睿丰德

RFID,RFID仓储管理,RFID资产管理,RFID系统,RFID设备管理RFID资产管理,RFID仓库管理,RFID珠宝,RFID生产线,RFID手持机,RFID读写器,广州睿丰德
按照我下面的图打上勾,我第一个测试的GPIO控制
RFID,RFID仓储管理,RFID资产管理,RFID系统,RFID设备管理RFID资产管理,RFID仓库管理,RFID珠宝,RFID生产线,RFID手持机,RFID读写器,广州睿丰德

接下来点击Build:
RFID,RFID仓储管理,RFID资产管理,RFID系统,RFID设备管理RFID资产管理,RFID仓库管理,RFID珠宝,RFID生产线,RFID手持机,RFID读写器,广州睿丰德
啊哦!怎么会有warning呢?好吧,先解决下。当然找度娘啦!RFID,RFID仓储管理,RFID资产管理,RFID系统,RFID设备管理RFID资产管理,RFID仓库管理,RFID珠宝,RFID生产线,RFID手持机,RFID读写器,广州睿丰德
RFID,RFID仓储管理,RFID资产管理,RFID系统,RFID设备管理RFID资产管理,RFID仓库管理,RFID珠宝,RFID生产线,RFID手持机,RFID读写器,广州睿丰德
找到出现警告的原因后,解决办法如下。(个人方法,仅供参考)RFID,RFID仓储管理,RFID资产管理,RFID系统,RFID设备管理RFID资产管理,RFID仓库管理,RFID珠宝,RFID生产线,RFID手持机,RFID读写器,广州睿丰德
RFID,RFID仓储管理,RFID资产管理,RFID系统,RFID设备管理RFID资产管理,RFID仓库管理,RFID珠宝,RFID生产线,RFID手持机,RFID读写器,广州睿丰德

RFID,RFID仓储管理,RFID资产管理,RFID系统,RFID设备管理RFID资产管理,RFID仓库管理,RFID珠宝,RFID生产线,RFID手持机,RFID读写器,广州睿丰德
再来编译下,没有警告了。
RFID,RFID仓储管理,RFID资产管理,RFID系统,RFID设备管理RFID资产管理,RFID仓库管理,RFID珠宝,RFID生产线,RFID手持机,RFID读写器,广州睿丰德


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.你也可以查看官方提供的例程
RFID,RFID仓储管理,RFID资产管理,RFID系统,RFID设备管理RFID资产管理,RFID仓库管理,RFID珠宝,RFID生产线,RFID手持机,RFID读写器,广州睿丰德


7.总结:有人问这么多的开发环境,该怎么选择呢?其实你大可以每款软件都尝试用一下,根据自己的口味来选择。比如人家分享的心得,在Ubuntu下开发STM32,其实也是基于Eclipse和GCC,这就涉及到了开源了。我喜欢开源。过两天有时间也配置下Ubuntu13.10下的STM32F0的开发环境,图文并茂哦!RFID,RFID仓储管理,RFID资产管理,RFID系统,RFID设备管理RFID资产管理,RFID仓库管理,RFID珠宝,RFID生产线,RFID手持机,RFID读写器,广州睿丰德

RFID管理系统集成商 RFID中间件 条码系统中间层 物联网软件集成