6796|44

1059

帖子

1

TA的资源

版主

楼主
 

话题讨论(1):MSP430编程方式选择 [复制链接]

 
对于MSP430来说,有一些芯片是有库函数的,大家喜欢继续沿用寄存器开发还是使用新的库开发,还是二者都用?

有何想法见解,请跟帖回复讨论。对于优秀的见解,我们将选择3名,赠送以下奖品,奖品随机。


特别感谢社区为咱们本次话题讨论赞助的礼物:






最新回复

刚开始接触MSP430时, 用库函数快速入门,上手。 随着对MSP430越来越熟悉,在时序要求严谨或者flash空间不够用的情况,直接操作寄存器,简化代码,提高运行效率。   详情 回复 发表于 2016-12-4 10:39
 
点赞 关注

回复
举报

565

帖子

0

TA的资源

一粒金砂(高级)

沙发
 
库函数,库函数更容易上手,开发更快。
 
个人签名stm32/LoRa物联网:304350312
 

回复

965

帖子

0

TA的资源

纯净的硅(高级)

板凳
 
如果同时也提供了一些库函数的例程的话当然是用库函数开发,怎么方便怎么快就用什么 先把要做的功能实现了再有时间去仔细了解深层原理,有感性认识后学习也会快一些
 
 
 

回复

521

帖子

0

TA的资源

纯净的硅(初级)

4
 
用库上手快,并且比较方便,不过对于寄存器的配置有时候还是需要用的,但是感觉有的库可能为了兼顾通用性不够精简,必要时可以自己简化一下。
 
 
 

回复

721

帖子

1

TA的资源

一粒金砂(高级)

5
 
1.对于想快速了解并上手开发还是用库比较方便,甚至不需要对芯片手册仔细研读就可以开发。相对复杂的如涉及到usb协议的还是要用库开发更省劲!
2.想了解芯片还是用寄存器方式更好,尤其对于Debug更有利!
3.还可以两种方法混用,对于芯片的初始化工作可以调用库来完成其他内容就操作寄存器,我就是这样用ti的
 
 
 

回复

6040

帖子

203

TA的资源

版主

6
 
本帖最后由 lcofjp 于 2016-11-24 11:43 编辑

用库开发是趋势,代码简洁,开发效率高,缺点可能是生成的二进制体积会略大,运行效率或许也有轻微影响,所以我觉得容量小的单片机可以优先使用寄存器来开发,因为容量小的功能相对简单,寄存器也少,用寄存器操作相对来说难度也会小。但是容量大功能复杂的单片机,用库来开发肯定是首选,或者至少也是需要库和寄存配合使用。
以上仅是个人观点。

点评

"所以我觉得容量小的单片机可以优先使用库来开发,因为容量小的功能相对简单,寄存器也少,用寄存器操作相对来说难度也会小" 队长这句话没毛病吗?  详情 回复 发表于 2016-11-24 11:33
 
 
 

回复

55

帖子

0

TA的资源

一粒金砂(中级)

7
 
430一般我还是使用寄存器操作。因为主要是低功耗的内容,自己操作库更简洁。但是也有麻烦的地方。需要一定的开发经验。
库函数我认为开发简单适合初级者开发使用。一些开发复杂的内容,比如触摸按键还是用库比较合适。
 
 
 

回复

732

帖子

2

TA的资源

纯净的硅(中级)

8
 
非常非常喜欢这个问题,一直想跟别人讨论关于库函数和寄存器的优劣,其实不管是什么处理器都有这个问题,因为之前弄STM32和MSP430的时候都有这样的疑问,用库函数的话程序显得很死板,而且编译出来的bin文件好像还大一点,最重要的是没有一种自己在操控处理器的感觉,而是使用库、库、库。所以一开始的时候开发我都是执着于使用寄存器开直接开发程序,感觉使用寄存器的位操作心里很舒服。不过到了后来发现有的时候只使用寄存器是不太现实的,比如使用到了USB、以太网、SD卡的时候,光是这些个硬件的协议都能整死人,别说是用寄存器来一点点调配这个外设的参数了。所以后来我还是使用了库函数来开发,但是单纯使用库函数会有一些问题,就是速度,毕竟调用函数的速度和直接操作寄存器的速度还是差了么点,有的地方例如高频率的中断处理函数中使用几行寄存器的操作就搞定使用一大堆库函数的任务了,速度和大小都会是最优的, 所以我还是将库函数和寄存器两者结合在一起使用,将一些常用的例如GPIO口的操作都使用宏来定义。最后我想说的是想要小打小闹的玩玩MSP430的话直接使用寄存器没问题,但是想要做工程,做复杂,个人来看还是需要库函数,也可以适当加入一点寄存器的成分。(注:上面的寄存器是指“直接操作寄存器”)
 
个人签名亚里士缺德
 
 

回复

493

帖子

1

TA的资源

一粒金砂(高级)

9
 
做小项目的时候还是习惯直接寄存器操作,在做一些大点的项目时候,优先选择库函数了
 
 
 

回复

324

帖子

0

TA的资源

一粒金砂(高级)

10
 
当对效率要求不高的时候,使用库函数方便。对效率要求比较严格的话,还是要用寄存器开发。
 
个人签名

欢迎关注:JL单片机

 
 

回复

118

帖子

0

TA的资源

一粒金砂(高级)

11
 
功能多的,容量大时,用库函数,功能少,容量小时,用寄存器
 
 
 

回复

2700

帖子

0

TA的资源

五彩晶圆(初级)

12
 
lcofjp 发表于 2016-11-24 10:13
用库开发是趋势,代码简洁,开发效率高,缺点可能是生成的二进制体积会略大,运行效率或许也有轻微影响,所 ...

"所以我觉得容量小的单片机可以优先使用库来开发,因为容量小的功能相对简单,寄存器也少,用寄存器操作相对来说难度也会小" 队长这句话没毛病吗?

点评

卧槽,居然还有认真看帖的,我知错了,本来就是糊弄一下回个帖。。  详情 回复 发表于 2016-11-24 11:38
 
个人签名作为一个水军,就是尽量的多回帖,因为懂的技术少,所以回帖水分大,见谅!
EEWORLD开发板置换群:309018200,——电工们免费装β的天堂,商家勿入!加群暗号:喵
 
 

回复

6040

帖子

203

TA的资源

版主

13
 
elvike 发表于 2016-11-24 11:33
"所以我觉得容量小的单片机可以优先使用库来开发,因为容量小的功能相对简单,寄存器也少,用寄存器操作 ...

卧槽,居然还有认真看帖的,我知错了,本来就是糊弄一下回个帖。。

点评

把你之前三个月获奖的奖品全部交出来  详情 回复 发表于 2016-11-24 12:00
 
 
 

回复

2700

帖子

0

TA的资源

五彩晶圆(初级)

14
 
楼上的都说了,容量大的用库,容量小的用寄存器。我想说的是除了看mcu本身存储器之外还要看系统功能,比如有一些时间比较苛刻的代码,用库的后果是哭成海。除此之外还要看个人,如果是江湖高手那自然不用说了,新手还是从库入门然后看懂库的流程,修改成寄存器这个办法不错的。现在mcu的性能越来越高了,以前用个51的地方都想换个m3,我们队长说过一句话:水平不够,性能来凑。这句话哪个在前哪个在后,貌似都有理
 
个人签名作为一个水军,就是尽量的多回帖,因为懂的技术少,所以回帖水分大,见谅!
EEWORLD开发板置换群:309018200,——电工们免费装β的天堂,商家勿入!加群暗号:喵
 
 

回复

1403

帖子

1

TA的资源

纯净的硅(中级)

15
 
两者都需要吧,库虽然方便快速,但是寄存器有时候更高效啊,操控感更强~
 
个人签名HELLO_WATER
 
 

回复

269

帖子

4

TA的资源

一粒金砂(中级)

16
 
还是库方便点,注意效率和器件性能限制的时候再用寄存器。队长的水平不够,性能来凑。真是如此
 
 
 

回复

2700

帖子

0

TA的资源

五彩晶圆(初级)

17
 
lcofjp 发表于 2016-11-24 11:38
卧槽,居然还有认真看帖的,我知错了,本来就是糊弄一下回个帖。。

把你之前三个月获奖的奖品全部交出来
 
个人签名作为一个水军,就是尽量的多回帖,因为懂的技术少,所以回帖水分大,见谅!
EEWORLD开发板置换群:309018200,——电工们免费装β的天堂,商家勿入!加群暗号:喵
 
 

回复

136

帖子

0

TA的资源

一粒金砂(中级)

18
 
在学习STM32的固件库,对比430我还是觉得430直接配置寄存器比较简单,可能是习惯了直接配置。但库还是必要的。就像楼上说的,二者各有各的优点,要根据实际情况决定是用库还是直接配置,这也得看个人喜好!
 
 
 

回复

1366

帖子

6

TA的资源

版主

19
 
    对于DIY或者个人开发的,新手或者刚接触TI的, 还是先用寄存器操作,毕竟寄存器开发更能理解TI的MCU的寄存器,后续再使用库函数来进行开发。
   对于公司开发的,可以用TI已经成熟的库函数进行开发,这样有助于后期人员因为调动等原因引起的不必要的交接困难。
 
个人签名

1084534438 欢迎交流  [加油,一切皆有可能]

 
 

回复

419

帖子

7

TA的资源

纯净的硅(初级)

20
 
开始学习的话,用库函数,上手快,要是想明白原理,还是要仔仔细细看库内容。
这些库,是经过严格测试的,拿到产品上用,比自己编写可能更稳定
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表