极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 18354|回复: 23

[深入浅出Energia开发第一讲]51程序的移植

[复制链接]
发表于 2012-9-11 17:16:37 | 显示全部楼层 |阅读模式
本帖最后由 水乐天 于 2012-9-12 17:50 编辑

最近听弘毅讲LaunchPad搞活动促销,超便宜,于是俺买了10块...慢慢弄总会用到滴{:soso_e154:},这几天反复折磨有一点小小心得,不敢独享,于是打算写出来与大伙分享。
  
下面放出是淘宝网店地址,注意如果数量比较多的话需要有团购代码的,需要的童鞋可以去购买:
http://item.taobao.com/item.htm?id=16603403744
----------------------------------------------------------------------------------------------------------------------------
首先声明下:本文不针对零基础的朋友,如果对一般开发常识、C语言、C++完全没有了解,请绕行。

准备工作一:
俗话说工欲善其事必先利其器,首先我们来谈谈编译环境的选择:
官方的编译环境如果没有使用过请参考《Energia介绍--MSP430的Arduino IDE》直接下载

但是官方的编译器有各种问题。。。比如中文注释不能书写。。。于是我仅用官方的编译器做调试用途,平时书写代码....还是算了吧。
我建议Windows用户选择UtralEdit IOS及Linux用户选择Sublime text 2
另外为了让我们的代码看起来更舒服 附赠代码格式化工具
----------------------------------------------------------------------------------------------------------------------------
准备工作二:
之后我们要对手头的LaunchPad做些小小的处理:

第一步 将RXD与TXD 两个跳线横过来,因为串口输出到PC需要这两个端口,否则无法进行串口输出。
第二步 将P1.6和P1.0两个LED等的跳线拔掉,因为这两个端口跟I2C端口冲突,所以在调试的时候如果你不需要这两个LED最好将其拔掉。
第三步 注意如果你的程序要使用串口的话,那么3号和4号引脚尽量不要使用,否则会影响串口数据的输出。
为了让大家更清楚地了解,如下图所示:
未命名.jpg
----------------------------------------------------------------------------------------------------------------------------
1.1 首先让我们来看一个51的程序。
   本人本行是开发上位系统软件基本是硬件盲,在写这个之前完全没接触过51单片机,也没写过51的程序,各位硬件高手不要见笑哈。但是我觉得从太简单的程序入手没意思哈,于是从公司同事手中借来个台湾燃太的TN901红外温度传感器和51的范例程序。于是我们就拿这个程序开始我们的改造好了。如下图所示:
未命名.jpg
     因为51的完整代码比较长还包括LCD的显示,所以我们摘主要的来看,想看完整代码点 TN9_51.rar (22.13 KB, 下载次数: 91)

评分

参与人数 1 +1 收起 理由
幻生幻灭 + 1 神马都是浮云

查看全部评分

回复

使用道具 举报

发表于 2012-9-11 17:28:31 | 显示全部楼层
买10块干吗用~?
回复 支持 反对

使用道具 举报

发表于 2012-9-11 20:03:59 | 显示全部楼层
性能到底如何?好像是32K的处理器?好像到处都没说详细硬件性能啥的;
还是ARDUINO描述全面
回复 支持 反对

使用道具 举报

发表于 2012-9-11 20:10:25 | 显示全部楼层
外部晶震32K的,好像是16K的混合信号微控制器。。。具体能做什么还是不太懂。。。哎~~~~
看百度介绍控制器的说明好像主要还是低成本的数据采集处理
回复 支持 反对

使用道具 举报

发表于 2012-9-11 20:13:47 | 显示全部楼层
不错啊,我好想买的
回复 支持 反对

使用道具 举报

发表于 2012-9-11 23:20:24 | 显示全部楼层
不知道51的代码移植的效果如何,其实51应该是单片机比较入门的普及型机,很多大学的计算机系MSC51和Z80都是必修的专业课。。。
都能移植应该很强大了,而且这个东东貌似比51更强大?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-9-11 23:31:19 | 显示全部楼层
本帖最后由 水乐天 于 2012-9-11 23:32 编辑

是的哈51的代码应该理论上都可以移植,这个东西普及了基本51市场就很小了:)我觉得用Arduino开发的最大好处是可以让新手和专家在开发时专注业务逻辑。
回复 支持 反对

使用道具 举报

发表于 2012-9-12 08:57:20 | 显示全部楼层
darkorigin 发表于 2012-9-11 20:03
性能到底如何?好像是32K的处理器?好像到处都没说详细硬件性能啥的;
还是ARDUINO描述全面

16M内部振荡器
回复 支持 反对

使用道具 举报

发表于 2012-9-12 08:57:39 | 显示全部楼层
darkorigin 发表于 2012-9-11 20:10
外部晶震32K的,好像是16K的混合信号微控制器。。。具体能做什么还是不太懂。。。哎~~~~
看百度介绍控制器 ...

16M........不是K......
回复 支持 反对

使用道具 举报

发表于 2012-9-12 08:57:58 | 显示全部楼层
darkorigin 发表于 2012-9-11 23:20
不知道51的代码移植的效果如何,其实51应该是单片机比较入门的普及型机,很多大学的计算机系MSC51和Z80都是 ...

MCS51弱爆了
回复 支持 反对

使用道具 举报

发表于 2012-9-12 18:07:35 | 显示全部楼层
这个要顶~  写得太详细了,对于初学launchpad,用Arduino开发的人来说太有用了!图文并茂,工具下载链接,程序代码及注释,注意事项,神马都有了,哈哈~~   向LZ学习!
回复 支持 反对

使用道具 举报

发表于 2012-9-12 20:15:27 | 显示全部楼层
┏ωǒ┛菰独 发表于 2012-9-12 08:57
MCS51弱爆了

确实MSC51很弱。但是51系列单片机貌似是出货量和存世量都很大的控制器。
代码神马的也都很经典啊。包括89c52啥的 也都是大量被应用的。
弱主要在性能上,但是强在便宜,毕竟周边元件也少,做一些简单应用完全够了,比如计算器,比如定时装置,比如其他设备的周边(比如显示模块的控制电路)也够了。

这个主控能移植51代码那么代码量上和例程上基本上真的是很广阔啊。。。哇咔咔

性能到底如何呢?16M的内部震荡,好像外部震荡频率还支持更高的?
回复 支持 反对

使用道具 举报

发表于 2012-9-12 20:16:02 | 显示全部楼层
┏ωǒ┛菰独 发表于 2012-9-12 08:57
16M........不是K......

额。呵呵 手误。哈哈~~~SORRY
回复 支持 反对

使用道具 举报

发表于 2012-9-12 20:16:58 | 显示全部楼层
┏ωǒ┛菰独 发表于 2012-9-12 08:57
MCS51弱爆了

Z80好像还要弱。 现在好像没有看到神马产品了
回复 支持 反对

使用道具 举报

发表于 2012-9-12 20:24:20 | 显示全部楼层
水乐天 发表于 2012-9-11 23:31
是的哈51的代码应该理论上都可以移植,这个东西普及了基本51市场就很小了:)我觉得用Arduino开发的最大好处 ...

是的,其实这也是程序设计的潮流,逐渐的通过强化IDE界面简化编程难度,使得程序员更多精力不会被牵制在那些冗余简单的代码上(比如C++ 和VC++ 到C# )不用自己画界面而采用组件的方式编程(当年TC2.0的时候UCDOS带的几个画图的例程和库文件我学了几个礼拜)
更多的让程序员去强化功能和逻辑(算法)上。
记得当年学MSC51时候 神马 基址变址寄存器 神马的搞死人了 用了C去做单片编程就已经是个里程碑(至少省略了初始化的几个堆栈操作)
回复 支持 反对

使用道具 举报

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

本版积分规则

Archiver|联系我们|极客工坊 ( 浙ICP备09023225号 )

GMT+8, 2019-4-20 19:00 , Processed in 0.055745 second(s), 29 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表