51单片机是每位电子工程师,最早接触到的单片机(至少我知道的都是,也不扫除有高人),许多大神以为51行将完结它的历史使命,可是个人觉得,它简略的操作,是新童鞋用来入门的不贰之选。它的价格低廉,一碗刀削面的价格,再加上它的材料十分多,最为代表性的是郭天祥教师的教程《教你十天学会单片机》 。童鞋们要意识到51单片机是作为步入电子世界的第一个台阶。
假如你现在还在热衷于用51单片机做小车、驱动LED、做电源,那么你现已OUT了,假如你坚持要把51用到资源耗尽再转型,那潘恐路还有很长一段要走。你要决断抛弃运用51单片机向高富帅迈出第一步,MSP430单片机,个人以为是学单片机的第二个台阶,现在我就来告知你为什么。
1. MSP430F149单片机VS STC89C52
看看下表,MSP430F149和STC89C52的差异,简直是万恶的美帝国主义和墨西哥阶层弟兄的差异。看看ROM和RAM,一个是上汽通用五菱微型面包车,一个是擎天柱大哥,要知道ROM越大所能装载的程序就越大,RAM越大暂时存储的数据越多;看看片上集成的外设,一个是武装到牙齿的美式配备,一个是小米加步枪,是小米+步枪,不是小米加牌步枪;再看看功耗形式和电源要求,真男人,不解说。

有人会吐槽价格,看看片上外设吧,你要是运用STC89C52+ASIC的组合,估量价格远远超越10元了;有人会吐槽封装,没记错的话,MSP430也有DIP封装哟。


msp430在运算速度上,是51单片机无法比拟的。再加上MSP430内部集成了硬件乘法器,大大提高了运算速率。Msp430是低功耗单片机,特别适用于选用电池供电设备。假如你将交游低功耗开展,那么msp430和P%&&&&&%个很好挑选。
51单片机是最容易学的单片机,可是它的各方面的功用也是很低的,在实践运用中很少有人去用51来开发产。那么要向更高端的单片机开展,msp430是比较好的挑选,一方面它让你触及低功耗的运用,另一方面它的功用和功用现已挨近ARM处理器了,学好MSP430是为将来学习ARM做衬托。
怎样很快入门MSP430单片机
学习单片机最快速最有用的办法是用开发板来学习。当你购买了开发板的时分,卖家会给你配送相关的教程,只需稍加操练我想很快就能入门。
自己在学习MSP430的时分也是这样过来的,现在将我的经历与您共享期望对您有协助,从51单片机跨越到msp430单片机要多长的时刻,我说只需求一天,即便学习才干不强的童鞋渐渐揣摩最多一个星期的时刻就能够入门。现在我想教会咱们几招,协助你快速入门MSP430单片机。
第一招:吸星大法
吸星大法,一门能够吸走别人内功,占为己用的武功,此武功曾称雄武林,威震四海。单片机的品种用手指和脚趾是数不过来的,用头发来数还有些牵强。若是要每一种单片机都去学它的内部结构,再来编程和运用开发,那简直是蜡笔小新才干做的事。一切任帮主就研发了吸星大法,以汲取别人经历为手法,再加上本身修炼,很快就能具有一门新的武功。
在学习MSP430单片机中咱们怎样运用吸星大法呢?
翻开你的IE浏览器,进入淘宝主页,查找MSP430单片机开发板,出来的宝物公子满目,而且绝大部分都是带有视频教程和数据手册的。这些视频教程便是能够让你少走许多弯路,首要你要学会怎样装置IAR软件,然后怎样设置软件,创立一个新的工程。这是最基本的技术,一步一步的跟着他学,你会发现用msp430和51单片机是差不多相同,有它的共性,也有它的不同。
学习单片机,就要尽可能的削减花费在寻址材料和阅览很多数据手册上的时刻,应该把时刻花在对程序的剖析,和对寄存器设置的回忆上。在你买你的开发板时,你的卖家现已帮你把材料收拾,把教程和比方都给你,那么就等你把它逐个吸入你的大脑改变成为你的常识。
吸星大法——学会运用开发板及视频教程,尽可能的削减弯路,将更多时刻用于实践的操作和开发中。
第二招:偷梁换柱
偷梁换柱,是一门与吸星大法类似的武功,可是偷梁换柱的不同之处是运用自己曾经用过的武功,转接到新的武功中去,瞬间爆宣布巨大的威力。
就51单片机和MSP430单片机来说,两种单片机的编程上有它的相同的当地,也有它不同的当地,咱们能够运用51单片机的程序只需求修正几个字母,那么它的程序就能作为MSP430的程序,这种办法叫程序移植。C言语有很强的移植性,不管是什么单片机,只需是用C言语编程的,大多都能够彼此移植,可是移植程序需求将程序模块化,不然移植会变得愈加困难。
51 程序模块化移植msp430举例说明
分别用51单片机和MSP430操控两个灯,一个红灯一个绿灯,两个灯替换亮灭,时刻距离0.5秒。 要求:程序要用模块化规划,而且可容易移植
51单片机硬件电路:
红灯阳极接上拉电阻,阴极接单片机P1.0引脚。
绿灯阳极接上拉电阻,阴极接单片机P1.1引脚
Msp430单片机硬件电路:
红灯阳极接上拉电阻,阴极接单片机P2.0引脚。
绿灯阳极接上拉电阻,阴极接单片机P2.1引脚。
赤色字体便是51单片机与MSP430单片机在编程上的不同点。 51单片机需求用IO口时需求位声明,例如 sbit P10 = P1^0; 而MSP430单片机不需求位界说,可是要设置设置IO的方向,例如 P2DIR|= BIT0; 把P20 IO引脚装备成输出形式。
MSP430默许翻开看门狗,一切在程序开始时要关掉。
蓝色字体为推迟函数,每一种单片机的推迟函数都是不相同的,这取决于单片机单个机器周期所用的时刻,一切在移植程序的时分不能移植推迟函数。可是为了其他程序移植便利,需求将两种不同单片机的推迟函数的函数名取相同。
51单片机的推迟函数一般选用程序推迟,这种推迟办法不准确。
在本文中,MSP430的推迟方法选用MSP430函数库中的推迟函数,__delay_cycles((long)(CPU_F*(double)x/1000.0))来做准确推迟,只需求用户设置好晶振频率即可。
黑色加粗字体,便是咱们运用函数,这个运用函数便是一个可移植的模块,这个模块的程序不管移植到哪里都不需求修正直接就能够用。这便是程序模块化移植思维。这个程序不只仅能运用与MSP430,还能运用其他的单片机,比方STM32。
模块化的程序有以下特色:
1. 在运用函数内不能呈现 P10 = 1; 或许 P1OUT =BIT0; 这些IO口装备的代码 ,有必要运用其他名词来替代,比方#define Red_ON P10 = 0,咱们就把P10口翻开状况用Red_ON来替代。
2. 模块化的程序一般用英文来描绘,比方说 Red_ON 意思红灯开,意思表述很清晰,一切模块化程序的长处之一是便利阅览和了解。
3.一般的IO装备,常用#define 来界说。并存放在头文件内或许程序的最初。
