查看: 5788|回复: 9

[视频] chipKIT UNO32 非专业评测~

  [复制链接]

该用户从未签到

发表于 2012-8-8 11:03:44 | 显示全部楼层 |阅读模式
分享到:
本帖最后由 xinxincaijq 于 2013-2-22 17:56 编辑

原帖由
黑马
发自:dev.eefocus.com
------------------------------------------------------------------------------------------------------------------------------------------
终于拿到了uno32的板子,和大家分享一些自己的初步试用的心得,欢迎讨论和指教。
硬件篇
先晒晒图给大家养养眼吧。
chipKIT的端口复用是通过跳线来实现的,习惯了arduino的朋友一定要留意跳线的配置是否正确。
chipKIT UNO32-1.jpg
整个板子设计得很规整,走线和铺地中规中矩,红色的板子个性十分鲜明。
chipKIT UNO32-2.jpg
chipKIT的心脏~,一枚32位的处理器。
chipKIT UNO32-3.jpg
和arduino mega2560合个影吧。
chipKIT UNO32-4.jpg
chipKIT Uno32的外形和Arduino uno良好的兼容,板子上的三个固定孔(arduino uno有4个,mega 2560有六个)位置完全一致,这很大的提高了我们DIY时的通用性。
chipKIT UNO32-5.jpg
有点小可惜的是,chipKIT和arduino的板子有一个共同的小问题,定位孔和周围器件很近,对于塑料柱定位当然没有问题,但是如果用螺丝固定的话,螺帽都会有干涉。

Uno32的做工很精致,毕竟是比较高端的mcu配置,从设计布局各方面都很出色。
chipKIT UNO32-6.jpg
再来看看主要与arduino主流产品主要参数的对比:
chipKIT UNO32-7.jpg
Uno32的控制器性能远超Mega2560,而Mega2560则在端口数量方面表现出了优势。Uno32在软、硬件方面最大限度的和Arduino兼容。对于厂商来说,借助Arduino强大的配套资源可以快速的得到接受和认可;而对于玩家来说,Uno32大大弥补了Arduino高性能产品线缺失的尴尬。

在大部分情况下,chipKIT uno32可以良好的替代arduino uno,其外形、定位孔以及pin脚分布和编号都完美兼容。但是需要特别注意的是chipKIT的I/O电平是3.3V,最大输入输出电流为18mA。

软件篇
chipKIT UNO32-8.png
chipKIT的IDE(右)界面和arduino(左)几乎完全相同,但是程序包体积却增大了一半,多出来的部分基本都在hardware文件夹下。可以看到mpIDE支持的硬件众多,不仅支持了chipKIT系列,同时也提供了对arduino系列产品的支持。
chipKIT UNO32-9.jpg
关于驱动安装、选择com口和board同arduino基本一样,论坛里有非常详细的教程,这里就不再重复。
chipKIT UNO32-10.png
安装运行库的方法有所不同,在File>references里找到Sketchbook location,把运行库解压到其下的libraries文件夹里,重启IDE就可以调用了。

感觉比较可惜的是,chipKIT的运行库依然比较少,稍微偏门一些的器件都难以获得支持。万分期待各位高手一起来做一些运行库的移植和编写。

至于程序语法,mpIDE和arduino完全相同,reference文档甚至索性直接copy了arduino IDE 0023的。值得留意的是现在arduino已经升级为1.0,其语法与0023版有所差异。

实战篇

软硬件介绍完毕,现在来跑两个简单的小程序尝试一下。

Blink是最简单的单片机程序,就像软件编程的“hello world!”一样,虽然简单,却几乎是所有平台编程者的第一个程序,同时也是测试软硬件配置是否正常的非常理想的程序。

Uno32板载两颗红色的用户LED,标注为LD4、LD5,对应数字端口13、43。这次索性都用上,让它们交替闪亮。
chipKIT UNO32-11.jpg
这里要注意的是mpIDE和arduino的IDE有相同的问题,对中文不支持,所以输入程序之前记得把输入法关了,要不就木有反应~

/*******************************
  Blink:轮流点亮两颗用户LED
******************************/
void setup() {
  pinMode(13, OUTPUT);
  pinMode(43, OUTPUT);         // 将两颗LED对应的13、43端口设置为数字输出
}
void loop() {
  digitalWrite(13, HIGH);          // 点亮LD4
  digitalWrite(43, LOW);           // 熄灭LD5
  delay(200);                              // 保持0.2秒
  digitalWrite(13, LOW);          // 熄灭LD4
  digitalWrite(43, HIGH);         // 点亮LD5
  delay(200);                             // 保持0.2秒
}

点upload(左边第二个)按钮,IDE会执行编译和上传,串口灯一阵乱闪(表示程序在上传),随后就可以看到两颗LED交替闪烁。硬件功能正常,程序实现了我们预想的功能。

第二个程序我们来外接一个传感器,这是一个超声波距离传感器,带有两个超声波器件,分别用于发射和接受,根据信号波和反射波之间的时间差计算距离。
chipKIT UNO32-12.jpg
chipKIT和arduino的外形兼容性很好,为arduino专门切割的通用载板可以直接用上。实物连线如下,很简单,从左到右依次为5VTrigEchoGND四根线。

/*******************************
  超声测距程序
******************************/

const int TrigPin = 2;          // 定义pin2为发射端
const int EchoPin = 3;        // 定义pin3位接收端
float dist;                               // 距离变量dist
void setup() {
Serial.begin(9600);                                   // 与PC通信的串口波特率
pinMode(TrigPin, OUTPUT);                    // 配置端口模式
pinMode(EchoPin, INPUT);
}

void loop() {
digitalWrite(TrigPin, LOW);                       // 把信号送往发射端
delayMicroseconds(2);
digitalWrite(TrigPin, HIGH);
delayMicroseconds(10);
digitalWrite(TrigPin, LOW);
dist = pulseIn(EchoPin, HIGH) / 2.0 / 1000000.0  * 340.0 * 100.0;
                                                                       // 根据回波时间计算距离(cm)
Serial.print("Distance=");
Serial.print(dist);                                         // 发送距离值
Serial.print("cm");
Serial.println();
delay(1000);
}

程序上传完毕后,点击右方的Serial Monitor,从弹出的窗口里可以看到chipKIT回传的信息。
chipKIT UNO32-13.png
通过数据口采集数据,并通过串口回传给上位机,这是获取传感器数据最基本的方式。其他诸如光敏、热敏电阻等各种模拟信号传感器都与之类似,略微改动程序就可以实现。

最后,我们来简单测试一下chipKIT的浮点运算性能,每进行百万次正弦运算回传一次当前时间(微秒):

/*******************************
  浮点运算测试程序
******************************/

double para = 1;  
void setup() {
Serial.begin(9600);                                               // 与PC通信的串口波特率
}
void loop() {
int i;
for (i = 0; i < 1000000; i++) para = sin(para);    // 进行百万次正弦运算
Serial.println(micros());                                        // 回传时间
}

根据两次回传时间的差值,可以计算出每个loop所用的时间。
chipKIT UNO32-14.jpg
可以看到,mega2560一次loop耗时比uno32高出整整两个数量级,浮点运算能力的比拼,差距还是非常明显的,uno32完胜。

以上是关于chipKIT的最初体验,更多传感器、显示器件的应用正在尝试和摸索中,随时完善和更新,欢迎大家共同参与讨论和交流。

注:以上所有图片、文字均为黑马原创,欢迎转载,请注明出处,谢谢。

chipKIT深入探索之一:驱动128x64 OLED
http://player.youku.com/player.php/sid/XNDA5MDI4MDc2/v.swf

一直在国内国外的论坛各种找,没有发现支持128x64的库。于是经过近一个礼拜的苦苦摸索,终于成功驱动了128x64的OLED。运行库是在Basic IO Shield OLED基础上修改的,有兴趣的朋友不妨试试。
接口目前是固定的
OLED uno32 max32
SCK——13——13
SDI  ——11——11
RST ——10——10
D/C —— 39——83
连接这四根信号线以及Vcc和Gnd就可以了。

然后下载运行库
Oled_128064_v010.zip (156.73 KB, 下载次数: 15)
回复

使用道具 举报

  • TA的每日心情
    开心
    2020-2-5 16:14
  • 签到天数: 518 天

    连续签到: 1 天

    [LV.9]以坛为家II

    发表于 2012-9-28 10:11:47 | 显示全部楼层
    话说,偶是真心看上这个板了,有个原装的pickit3躺在抽屉里无用武之处
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2012-9-28 13:37:33 | 显示全部楼层
    dzcn 发表于 2012-9-28 10:11
    话说,偶是真心看上这个板了,有个原装的pickit3躺在抽屉里无用武之处

    喜欢就行动吧
    目前论坛有一个关于这个板子的活动哦
    https://www.cirmall.com/bbs/thread-4-1-1.html


    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2020-2-5 16:14
  • 签到天数: 518 天

    连续签到: 1 天

    [LV.9]以坛为家II

    发表于 2012-9-28 14:00:05 | 显示全部楼层
    只剩2天了,挑战5000铜板,难度不小,难不成这两天我要守着论坛不停的灌水,苦命啊
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2016-8-15 09:28
  • 签到天数: 222 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2013-2-18 10:34:46 | 显示全部楼层
    这个板子啥时候有活动啊?~期待下!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2015-1-1 01:21
  • 签到天数: 354 天

    连续签到: 1 天

    [LV.8]以坛为家I

    发表于 2013-2-20 23:26:42 | 显示全部楼层
    真的很好的入门文章!辛苦!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2014-2-12 10:49
  • 签到天数: 150 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2013-5-9 08:44:16 | 显示全部楼层
    不错。资料全{:soso_e179:}
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2014-5-20 10:01
  • 签到天数: 41 天

    连续签到: 1 天

    [LV.5]常住居民I

    发表于 2013-5-17 09:53:57 | 显示全部楼层
    这样还算非专业啊?!够专业的啦!棒~~~
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2019-6-29 11:53
  • 签到天数: 368 天

    连续签到: 1 天

    [LV.9]以坛为家II

    发表于 2013-8-7 08:20:38 | 显示全部楼层
    很好,很详细。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-5-12 10:32
  • 签到天数: 295 天

    连续签到: 1 天

    [LV.8]以坛为家I

    发表于 2013-9-12 13:27:34 | 显示全部楼层
    挺好的文章~~~~~~~~~~~~~~~~
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-11-19 21:16 , Processed in 0.196807 second(s), 33 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.