Other Parts Discussed in Thread: CC1310
How does the program keep the serial port working synchronously while keeping the radio working?
(各位大牛!程序是如何实现在 保持无线电工作的状态下 同步保持串口工作的呢?)
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
How does the program keep the serial port working synchronously while keeping the radio working?
(各位大牛!程序是如何实现在 保持无线电工作的状态下 同步保持串口工作的呢?)
Hello, yes.
Thank you very much for your reply.
That's what the document says.
I do the function implementation based on the official library.
However, I can't let m3 and M0 work separately in the program code, and M3 can handle when there is data sending and receiving (M0 needs data interaction)/ (ㄒoㄒ)/~~
Is there an example of this?
(您好,是的。非常感些您的回复。文档也是这么说的 。我是基于官方提供的库的基础上去做功能实现。可是我无法在程序代码里让M3与M0各自单独工作,且在有数据收发时(需要M0进行数据交互)M3可以处理。/(ㄒoㄒ)/~~
请问这个有示例嘛?)
您好~ 根据您的建议,我又理了理自己现有的思路,且进行了测试。
在例程中 M3调用M0,使能射频工作除了easylink示例是超时退出外(本身是不想它退出),其它的设置基本由下面这个函数:
//extern RF_EventMask RF_runCmd(RF_Handle h, RF_Op *pOp, RF_Priority ePri, RF_Callback pCb, RF_EventMask bmEvent); 去实现RF,除了数据发送RF_EventMask可以不设置,即用即发送且退出外。当使用其进入接收模式时RF_EventMask有对应的设置,发现有“RF_EventModulesUnlocked (1 << 29) ///< As part of the boot process, the CM0 has opened access to RF core modules and memories”这一设置 ,且争对接收有多种模式设置。然而都是阻塞/死等(意思就是程序一旦调用这个函数 打开M0工作程序就堵塞在这儿了)。我尝试更该了多种模式的切换,然而没有一种是M3调度RF工作后,RF继续工作,而M3可以干别的,程序可以继续执行的。
┭┮﹏┭┮臣妾做不到,求大牛深度讲解~
且当 串口开启进入读写操作时,串口配置参数里基本是阻塞的,哪怕是说明文档里的非阻塞回调,从而当外部串口未连接,串口工作是处于等待或阻塞的。所以 当串口读写与RF在同一个while(1)内时RF_EventMask为RF_EventRxEntryDone不会造成阻塞,但是串口也是阻塞了 RF新一轮的开启。。。这个我也做了测试,当然也不知道自己做的对不对。但是串口配置能修改的状态也就两个,我也不知道是否有其它的配置操作让串口可以和RF的一样(开启就关闭。。。好奇怪的样子)。。所以我才一直寄托于M0独立工作,M3只是调度了M0,调度完就不再影响写进M3程序的下一步执行。M0有数据接收就触发/上报就好~
嗯嗯 已重新开贴~ ❀期待大佬上线❀