liamjeal 发表于 2012-9-12 16:48:24

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

本帖最后由 liamjeal 于 2012-9-13 11:34 编辑

近年来,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/downloadfile/cookie/numicro/Cookie%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获取更多信息。







chenzhm 发表于 2012-9-12 17:48:45

超细致,支持一把

liamjeal 发表于 2012-9-12 21:01:35

chenzhm 发表于 2012-9-12 17:48 static/image/common/back.gif
超细致,支持一把

谢谢支持啦

liamjeal 发表于 2012-9-12 23:14:15

欢迎大家加入coocox工具群:167693982, 每周二,五下午2:50强搂送Cookie板子,晚上8:25开群课。

chenzhm 发表于 2012-9-13 14:20:46

liamjeal 发表于 2012-9-12 23:14 static/image/common/back.gif
欢迎大家加入coocox工具群:167693982, 每周二,五下午2:50强搂送Cookie板子,晚上8:25开群课。

还有板子送啊,我来一块对比xia

liamjeal 发表于 2012-9-13 15:28:19

chenzhm 发表于 2012-9-13 14:20 static/image/common/back.gif
还有板子送啊,我来一块对比xia

抢楼,抽奖等活动额

friskit 发表于 2012-9-13 17:35:55

兼容Arudino?有操作系统么?要不然这么高端的设备效率肯定高不了……

liamjeal 发表于 2012-9-14 08:44:20

friskit 发表于 2012-9-13 17:35 static/image/common/back.gif
兼容Arudino?有操作系统么?要不然这么高端的设备效率肯定高不了……

可以加操作系统,CoOS,不过ARM coretx MCU裸跑很正常,它就是高端的单片机。

萧芸凤 发表于 2012-9-15 06:20:52

都32为了I\O怎么还是只有那么几个

liamjeal 发表于 2012-9-15 09:12:43

萧芸凤 发表于 2012-9-15 06:20 static/image/common/back.gif
都32为了I\O怎么还是只有那么几个

IO可以扩展的,这个不是问题。

萧芸凤 发表于 2012-9-15 19:17:14

liamjeal 发表于 2012-9-15 09:12 static/image/common/back.gif
IO可以扩展的,这个不是问题。

做到板子上不是更好

liamjeal 发表于 2012-9-16 00:22:25

萧芸凤 发表于 2012-9-15 19:17 static/image/common/back.gif
做到板子上不是更好

Cookie 板子将会扩展arduino硬件信号接口的。

小黑 发表于 2012-10-23 10:53:28

我也想要一款啊:)
页: [1]
查看完整版本: Cookie板基础应用,将Arduino带入32位的ARM MCU经典