AN672
5.基本组件
成分:
si32BaseComponent
要求:
无
规定:
无
该组件提供了用于日志记录,错误处理,存储器分配和控制流的设施。
5.1 。编译选项
si32Base.h
提供所有可用的编译选项良性的默认值。要更改构建选项为应用程序,
启用或禁用该选项为适当的应用程序的
myBuildOptions.h 。
si32BuildOption_enable_assertions :
启用si32Assert ( ) 。默认情况下是关闭的。
si32BuildOption_enable_logging :
启用日志记录。记录必须能够使用任何si32LogXXX ( )
例程。默认情况下是关闭的。
si32BuildOption_log_flow :
使si32LogPrologue () , si32LogSelf () , si32LogArg () , si32LogAttr ()
si32LogVar , si32LogEpilogue ( ) 。默认情况下是关闭的。
si32BuildOption_log_ref_counts :
启用的引用计数记录,如果_log_flow同时启用。
默认情况下是关闭的。
si32BuildOption_tally_allocations :
动态分配大小的编码信息泄漏检查。
默认情况下是关闭的。
si32BuildOption_retention_zone_size :
保留分配区域储备(针对MCU与保留
内存) 。默认值是1 。
si32BuildOption_incremental_zone_size :
增量分配区域的储备。默认值是1 。
si32BuildOption_addressable_labels :
能够使用计算的标签,而不是滥用切换为当地的
延续。默认情况下是关闭的;开关/箱使用。
si32BuildOption_logPath :
工作站平台可以登录到一个文件中。默认值是"的/ dev / stdout" 。
5.2 。日志
si32BaseLogger.h
定义了程序执行过程中的一些宏记录航点。这些依赖
在si32HAL ,并要求使用
si32HAL/CPU/retarget_<chain>.c
重定向的printf / scanf的原语ITM ,一
UART或一些其它设备。
空间
si32StartLogging (无效) :
配置日志记录子系统,并启动日志记录。模拟
建立在工作站这个打开的日志文件。
si32StopLogging无效(无效) :
终止记录。模拟建立在工作站这一关的日志
文件中。
无效si32LogBeSilent (布尔YN ) :
用于临时更改记录器的状态,而不禁用它,或者
重新编译,将其关闭。当沉默的日志不发送数据到ITM等。
布尔si32LogIsSilent (无效) :
查询是否该日志是沉默的,或详细。
无效si32LogBeIndented (布尔YN ) :
控制日志是否缩进。当是时, si32LogPrologue ()
缩进日志和si32LogEpilogue ( ) outdents日志中,除了记录功能的入口/出口,
分别。默认值是YES ,缩进日志。
布尔si32LogIsIndented (无效) :
查询日志是否缩进,或持平。
INT si32LogPrint (字符* FMT , ... ) :
打印到日志中,类似的printf参数。不缩进,甚至
当由si32LogBeIndented前面的(YES) 。不追加一个换行符。对于IO重定向,它本质
只是包装的printf 。
INT si32LogTrace (字符* FMT , ... ) :
打印到日志中,类似的printf参数。它缩进元
si32LogBeIndented ( YN ),并追加一个换行符。
INT si32LogWarning (字符* FMT , ... ) :
打印到日志中,类似的printf参数。它缩进元
si32LogBeIndented ( YN ) 。预先考虑"WARNING : " ,并追加一个换行符。
INT si32LogError (字符* FMT , ... ) :
打印到日志中,类似的printf参数。它缩进元
修订版0.1
5