微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 如何提高MSP430 C语言编程效率

如何提高MSP430 C语言编程效率

时间:11-13 来源:互联网 点击:

*printf和sprintf函数使用名为_formatted_write的通用格式化函数。ANSI标准版本_formatted_write

体积非常大,而它所提供的功能在不少应用中并不需要。为了减少存储器的开销,在标准C库中提供了两种可以替代的较小版本:

1)_medium_write

除了不支持浮点数之外,它与_formatted_write一样。因此,如果使用%f,%g,%G,%e和%E说明符将产生错误。_medium_write比_formatted_write小得多。

2)_small_write

与_medium_write接近,但是对int类型只支持%%,%d,%o,%c,%s和%x说明符,并且不支持位域和精度参数。_small_write大小约为_formatted_write的10%—15%。

C430编译器的默认版本就是_small_write:-e_small_write=_formatted_write

要选择完整的ANSI版本,可以删除这一行。

*简化printf

有时为了支持特殊输出格式的需求,或支持非标准输出设备的需求,必须订制特殊的输出子程序。文件imwri.c中提供了高度简化的printf函数的源文件,其中不包含sprintf。这一源程序版本可以按照用户要求加以修改,然后把编译好的模块加入库中,代替原有的模块。

*scanf和sscanf

与printf和sprintf相似,scanf和sscanf使用名为_formatted_read的通用格式化函数。ANSI标准版本_formatted_read体积非常大,而它所提供的功能在不少应用中并不需要。为了减少存储器的开销,在标准C库中同样也提供了体积较小的版本:_medium_read。除了不支持浮点数之外,它与_formatted_read功能一样,但是_medium_read比_formatted_read要小得多。

C430的默认版本是_medium_read。

4.硬件与存储器初始化

创建cstartup.r43的目标模块文件,然后用户应当在连接命令文件中使用下列命令,使XLINK引用用户定义的CSTARTUP模块来代替库中的模块:

-A cstartup

-C library

在Workbench中,可以将修改后的cstartup文件加到用户的项目中,并在连接命令文件中的library之前加上-C命令。

其它关键词

—————

目标(target) 组(group) 源文件(source file)

硬件乘法器(hardware multiplier) 硬件仿真器(flash emulation tool)

软件模拟调试(simulator) 硬件断点(全速)/虚拟断点(virtual breakpoint)(单步)/系统断点

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top