工具/原料:cc2530 datasheet、IAR Embedded Workbench
一、晶振与时钟
cc2530有一个内部系统时钟,或者说是主时钟。系统时钟源是16Mhz的RC晶振或是32MHz晶体震荡器。利用CLKCONCMD特殊功能寄存器可以控制时钟。
此外,芯片还有一个32KHz时钟源可以是RC振荡器或是晶体振荡器,同样也可以用CLKCONCMD寄存器控制。
其中只读寄存器CLKCONSTA可以用来获得当前时钟状态。高精度的晶体振荡器或是低功耗的RC振荡器都可以成为振荡器的选择,需要注意的是:RF接收器要求使用32MHz晶体振荡器。如下图所示即为时钟结构图:
是有osalTimeUpdate()和Hal_ProcessPoll()这两个函数。cc2530中OSALAPI接口函数:
信息管理API
osal_msg_allocate( )函数原型:任务是分配一个信息缓冲区,当任务调用或函数被调用时,该空间被信息填充或调用信息发送函数osal_msg_send() 发送缓冲空间的信息到其他任务,若该缓冲空间不能被分配,则设置msg_ptr=NULL空;
uint8 *osal_msg_allocate( uint16 len ),返回的是指针,若返回为空,则该信息缓存空间分配失败。
注:该函数不能与osal_mem_alloc()混淆,osal_mem_alloc()函数是用于为在任务间发送信息分配缓冲区。该函数可以分配一个存储空间。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)