打印
[MCU新闻]

Cookie板基础应用,将Arduino带入32位的ARM MCU经典

[复制链接]
921|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
gaoyang9992006|  楼主 | 2015-3-12 10:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
近年来,ARM越来越流行,cortex M3、M0系列更有取代8位、16位处理器的势头;与此同时,学习Arduino的人越来越多,许多人都用arduino来做自己的创意产品;为了将两者很好的结合起来,coocox推出了基于ARM系列的arduino兼容板——cookie系列。
  
Cookie特性
  cookie系列的第一版是Cookie Numicro,也就是基于新塘M051的cookie板,下面简略说下这个板子的特性:
1.        提供硬件设计的原理图和PCB
2.        完全兼容arduino,arduino中的几百个Shields都可以兼容使用
3.        使用32位的单片机,速度快
4.        板载colinkex调试器
5.        coocox提供一系列的免费开发工具
6.        coocox的组件平台便于分享代码

cookie的价值
coocox发布arduino兼容开发板具有得天独厚的优势,首先,有cox外设库为其提供坚强的后盾,基于cox的一切cookie是兼容的,基于cox的一切Shields都是轻松可移植的;其次,coocox提供全套的开发工具,编码、编译、调试、下载一应俱全;再次,coocox提供组件分享平台,任何代码可以轻易的分享给所有人,组件平台有客户端版本(COIDE)和网页版本。

相比arduino。Cookie具有很多优势,首先是处理器的优势,cookie是用的32位ARM Cortex MCU最高时钟能达到50+Mhz。相对丰富的外设,使得cookie在接口上可以提出更多扩展功能,比如CAN、USB、Ethernet、RPI等,同时还提供调试接口可以用来调试代码。

但是,常用ARM的arduino兼容板子,也有个缺点,那就是,入门门槛比arduino要高一点点,所幸,cookie不存在这个问题,因为有coide和组件平台的支持,可以方便的入门!

Cookie Numicro
Cookie NuMicro是基于Nuvoton Cortex M0处理器M0516LBN的板子,图片如下:

IO管脚分布图

                          图 arduino兼容示意图

IO管脚说明:



关于更多关于cookie的基本信息,请参考:
http://www.coocox.org/downloadfi ... 20User%20Manual.pdf

在了解上述基本信息之后,我们可以开始cookie的应用了。
打开coide,选择厂商Novoton,选择芯片M0516LBN,进入组件页面,可以看到一下页面:

                           图 组件页面
Cookie可用的组件就是CoX组件和CoX驱动,其中,CoX.Cookie.M051.config就是coide对于Cookie板的配置支持,勾选这个组件。
然后勾选xGPIO组件,可以在左上角看到如下图片:

点击xGPIO,在新出来的窗口,可以看到所有适用于xGPIO的例子:

选择Cookie_blink点击add即可将这个例子添加到工程。然后编译,配置调试下载器为colinkex即可下载调试。
完成下载之后,你就能见到Cookie板上的LED闪烁了,是不是很简单,也许你会说,这只是控制一个LED灯,本来就简单,我们下面再演示其他模块,UART、PWM、LCD等。
为了方便,注释掉main.c中main函数中的Cookie_blink(),

回到组件页面,勾选UART组件,按照上述方法在xUART中,添加例子Cookie_printf:

编译,下载。
将通过com9串口线,将Cookie和电脑连接。打开电脑的超级终端,如果你看到“hello Cookie!”,恭喜你,串口打印成功,如果没有反映,先不要着急:
1.        试着按下Cookie的复位按键,看看是不是有反映
2.        检查线路连接是否牢固
3.        检查串口配置是否正确,包括端口号、波特率等
一般情况,做了这三个步骤,你可以看到打印出来“hello Cookie!”如果依然没有打印输出,你再看看Cookie板子上的led等是否在闪烁,如果闪烁表示程序已经下载成功了,问题在于线路连接和PC端。否则的话,你就需要调试来跟踪问题了。

也许有人会说,Arduino好用,主要是arduino提供了几百个可复用的Shield,那么Cookie也可以轻松支持Shield。
以LCDShield为例,在组件页面的右下方点击driver,进入driver页面,勾选LCDshield,再回到peripherals页面勾选xPWM组件,同样的方法,在例子窗口中添加LCD&Motor的例子。

这个例子是两个Shield的结合,一个是LCDShield,这个Shield可以用来显示和按键输入,一个是电机模块,可以控制直流电机、步进电机等。
这个例子中用到的Shield都是 http://shieldlist.org/ 中标准的Shield。具体链接如下:
LCDshield:http://shieldlist.org/dfrobot/lcd
Motor:http://shieldlist.org/adafruit/motor
例子的功能就是实时显示当前的按键,并通过按键控制电机转动的方向和速度。下面是所用到的Shield图:

以下是演示效果图:
图片1,是没有按键按下的情况,LCD显示无任何按键!电机以默认的方式转动。
图片2,是按住UP按键时候的显示,LCD显示“UP”,电机转动速度加快!


从上面的例子可以看出,coide的组件平台大大简化了Cookie的入门和开发,后续,还会提供更多的Shield、驱动模块,甚至方案等,这里将是海量代码的汇集之处,这里将是一个嵌入式开发的在线社区,这里将聚集全世界优秀的嵌入式开发工程师。所以,抓住机遇,加入coocox一起开始嵌入式开发之旅吧,现在加入还可以享受预定优惠!
http://www.coocox.org/Cookie.html获取更多信息。

沙发
598330983| | 2015-3-12 10:29 | 只看该作者
沙发,这么好的帖子,原来新唐也可以在arduino平台运行啊。

使用特权

评论回复
板凳
mintspring| | 2015-3-12 11:04 | 只看该作者
好详细啊,谢谢分享这么好的帖子。

使用特权

评论回复
地板
slotg| | 2015-3-13 09:34 | 只看该作者
关注中,感谢分享

使用特权

评论回复
5
gaoyang9992006|  楼主 | 2015-3-13 14:17 | 只看该作者
这个内容还是很新鲜的,希望大家都来看看啊。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:西安公路研究院南京院
简介:主要工作从事监控网络与通信网络设计,以及从事基于嵌入式的通信与控制设备研发。擅长单片机嵌入式系统物联网设备开发,音频功放电路开发。

1895

主题

15628

帖子

198

粉丝