您的位置 首页 资料

评论移植51程序到430上时需求留意那些问题(2)

鉴于目前较多数新用户之前是有学习过8051或者是用过8051单片机的经验。在应用到一些外部电路驱动程序要移植到MSP430单片机上使用时,我们需…

鉴于现在较大都新用户之前是有学习过8051或者是用过8051单片机的经历。在应用到一些外部电路驱动程序要移植MSP430单片机上运用时,咱们需求留意那些的问题。我期望经过这个首贴来引出一个咱们有共同性的论题,期望有这方面体会的网友进来共享一下你们对这个论题的见地。
以下我草草也宣布几句,十分不全面也未经收拾…不足之处请各位补上。

【关于IO模仿操控程序的移植】
比方一些芯片驱动程序包,要移植到430上来。此刻咱们要留意一些事项,在8051单片机的结构中是没有方向寄存器的。而MSP430单片机中就有PxDIR方向寄存器和输入/输出寄存器 PxOUT/PxIN。因为51通用型单片机一般没有硬件SPI、IIC外设,此刻许多驱动程序是直接由IO模仿时序进行与部分芯片进行操控的。在这些程序的低层软件中,关于某位进行输入或输出设置IO的凹凸电平常测需求留意这三个寄存器的转化和设置。这基本上是一般51单片机程序移植中最常碰见的问题。

【关于硬件模块程序的移植】
关于程序中有用到的硬件资源,较常见的有51的Timer、UART、时基模块等等时,因为这两者硬件绝然不同。咱们别无选择当然要彻底修改为MSP430的硬件部分了,这儿当然包含了中止服务程序。对对这种问题,一般呈现在在程序全体架构上较多。对上一个的问题则呈现在低层驱动较多。

【关于关键字和宏界说的问题】
这部分待其他网友来补上吧,我运用51并不多 所以在这儿不作多说了。不过较多的网友总以51的结构思路来想430应该也有这样的用法,比方直接位操作、存储器区分块、指令周期等等问题。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
我来弥补下.51与MSP430都有自已一套指令集,假设是汇编的话,两者的差异是十分大的;C言语的话,它们的相通之处仍是许多的.如在51中,要把数据放在FLASH中,能够用 unsigned char code 而MSP430呢,能够用const unsigned char 它们是等效的.在MSP430中,monitor关键字的意思是在履行这个子程序的时分不允许中止. 而51就没有这个关键字.宏界说呢,不同不大,因为MSP430不支持位操作,当然也能够自已界说.比方咱们要给P1口的D0置位,可用:

P1OUT |=BIT0;

清零可用:

P1OUT &=~BIT0;
【关于中止问题】
51中,中止是能够嵌套的。而MSP430呢,也能够。不过要留意MSP430进行中止之后,会马上封闭总中止的,中止服务程序履行完之后又主动翻开,假设你要在430中止之后又要进入另一个中止的话,那你就要翻开总断了。不过这样的话,处理不妥会引起程序跑飞的。
【关于MSP430与外围器材的规划问题】
我们都知道430是3.3V电平的。有不少的器材是5V是电平的。这样就涉及到逻辑电平匹配的问题,该不该用3.3V到5V或者是5V到3.3V的电平转化呢。我个人认为,得根据具体情况具体分析,一般来说,用3.3V来驱动5V是没有问题的,而输入呢,5V的电平MSP430能够接受,不过最好是用5V到3.3V的电平转化了。

说得不对的,请网友纠正。望网友持续弥补下去。关于MSP430编程的问题,这部分待其他网友来补上吧。MSP430的速度是比较快的,还有它有许多的外围模块,规划与编程时该怎么组织等.

~~~~~~~~~~~~~~~~~

51也好长期没用了。依稀记得些。

51有布尔处理才能,而430是没有的。所以假设呈现要p2.4口输出高电平 51只需求P2^4=1就OK了,而430不重要设置方向寄存器 并且只能进行位与操作。

51的异步通讯的那个公式我记不住了,可是他的传输比特率只能是整数,对呈现的时钟除以比特率不是整数的没有430的小数调整功用。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ziliao/273057.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部