STM32W108无线射频模块802.15.4MAC协议栈接口
1.函数ST_AesEncrypt:
函数原型:
void ST_AesEncrypt(u8 * block) |
功能描述:
此函数将128bit的明文数据块使用AES协处理器进行加密,协处理器在使用之前使用函数ST_AesSetKey()进行设置,由此产生的128bit的密文将覆盖之前的128bit明文。 |
参数:
block:指向存储明文的存储空间,当函数执行完成之后明文将被密文替换。 |
2.函数ST_AesGetKey:
函数原型:
void ST_AesGetKey(u8 *key) |
功能描述:
此函数用于获取AES加密过程中使用的密钥。 |
参数:
key:128位密钥数据被写入到内存位置的指针。 |
3.函数ST_AesSetKey:
函数原型:
void ST_AesSetKey(u8 *key) |
功能描述:
此函数用于设置AES加密过程中使用的密钥。 |
参数:
key:128位密钥数据的指针。 |
4.函数ST_RadioAddressFilteringEnabled:
函数原型:
boolean ST_RadioAddressFilteringEnabled(void) |
功能描述:
此函数获取设备的地址过滤状态。 |
返回值:
如果开启了地址过滤功能返回TRUE,否则返回FALSE。 |
5.函数ST_RadioAutoAckEnabled:
函数原型:
boolean ST_RadioAutoAckEnabled(void) |
功能描述:
此函数获取设备的自动应答状态。 |
返回值:
如果启用了自动应答功能返回TRUE,否则返回FALSE。 |
6.函数ST_RadioCalibrateCurrentChannel:
函数原型:
void ST_RadioCalibrateCurrentChannel(void) |
功能描述:
此函数用于进行必要的重新校准,以抵消自上次校准后温度变化所造成的影响。当ST_RadioCheckRadio()表示需要进行校准时,该函数被应用程序所调用。 |
7.函数ST_RadioChannelIsClear:
函数原型:
boolean ST_RadioChannelIsClear(void) |
功能描述:
此函数获取信道状态,可能是空闲的也可能是忙碌的。 |
返回值:
如果通道是空闲的返回TRUE,如果信道是忙的返回FALSE。 |
8.函数ST_RadioCheckRadio:
函数原型:
boolean ST_RadioCheckRadio(void) |
功能描述:
此函数检查当环境条件发生变化时是否需要进行无线信道校准,以保证预期的性能。如果需要校准,应用程序必须调用ST_RadioCalibrateCurrentChannel()进行信道的校准。 注意:当一个发送正在进行时,此函数不能被调用。 |
返回值:
如果需要进行校准,以补偿温度变化的影响则返回TRUE,否则返回FALSE。 |
9.函数ST_RadioDataPendingLongIdIsrCallback:
函数原型:
boolean ST_RadioDataPendingLongIdIsrCallback(u8 * longId) |
功能描述:
当一个长地址字段数据包被收到时,该函数被库调用。当返回值为TRUE时,该库将在等待发送的ACK中设置帧挂起位。应用程序必须在其自己的数据结构中查找EUI 64位长地址,当有数据等待处理时返回TRUE,否则将返回FALSE。至关重要的一点是,该函数需要尽可能快的完成其功能,因为它需要确保可以在ACK发送之前为其设置帧挂起位。 |
参数:
longID:指向保存64位ID的内存地址指针。 |
返回值:
返回TRUE表示在发出的ACK中设置了帧挂起位,否则返回FALSE。 |
10.函数ST_RadioDataPendingShortIdIsrCallback:
函数原型:
boolean ST_RadioDataPendingShortIdIsrCallback(u16 shortId) |
功能描述:
当一个短地址字段数据包被收到时,该函数被库所调用。当返回值为TRUE时,该库将在等待发送的ACK中设置帧挂起位。应用程序必须在其自己的数据结构中查找shortid 16位短地址,并在有数据等待处理时返回TRUE,否则将返回FALSE。至关重要的一点是,该函数需要尽可能快的完成其功能,因为它需要确保可以在ACK发送之前为其设置帧挂起位。 |
参数:
shortId:16位短地址。 |
返回值:
返回TRUE表示在发出的ACK中设置了帧挂起位,否则返回FALSE。 |
11.函数ST_RadioDeviceIsCoordinator:
函数原型:
boolean ST_RadioDeviceIsCoordinator(void) |
功能描述:
此函数获取节点的协调器状态。 |
返回值:
返回TRUE表示该节点被配置为一个协调器,否则返回FALSE。 |
12.函数ST_RadioEnableAddressFiltering:
函数原型:
void ST_RadioEnableAddressFiltering(boolean enable) |
功能描述:
此函数可以启用或禁用对PAN ID、节点ID、EUI 64地址的过滤功能。 注意:地址过滤功能是默认启用的。 |
参数:
参数enable如果是TRUE,则启用地址过滤,否则不启动地址过滤。 |
13.函数ST_RadioEnableAutoAck:
函数原型:
void ST_RadioEnableAutoAck(boolean enable) |
功能描述:
此函数启用或禁用ACK自动应答。 注意:使用ACK自动应答必须启用地址过滤功能,默认情况下自动应答功能是启用的。 |
参数:
enable为TRUE,启用自动应答,否则禁止自动应答。 |
14.函数ST_RadioEnableMacTimerCompare:
函数原型:
void ST_RadioEnableMacTimerCompare(boolean enable) |
功能描述:
此函数启用或禁用MAC定时器与应用程序提供的时间值的比较,设置结果通过回调函数ST_RadioMacTimerCompareIsrCallback()报告。 |
参数:
enable如果为TRUE,则启用MAC定时器对比功能,否则禁止。 |
15.函数ST_RadioEnableOverflowNotification:
函数原型:
void ST_RadioEnableOverflowNotification(boolean enable) |
功能描述:
此函数启用或禁用通过ST_RadioOverflowIsrCallback()函数进行的对DMA接收缓冲区溢出事件报告功能。 |
参数:
enable如果是TRUE,则启用溢出报告,否则禁止。 |
本文出自《STM32W108嵌入式无线传感器网络》邱铁,夏锋,周玉编著.清华大学出版社,2014年5月