尊敬的ti工程师您们好
我的需求是CC3235S开发板IIC上同时挂两个从机,并同时串口打印各自从IIC从设备上读到的数据,(说是同时也做不到同时,只能是一前一后打印)。所以我设置了两个线程,一个线程负责一个IIC从设备数据的读取和串口打印,
为了保证各自线程的IIC通信正常且互不受干扰,这两个线程我设置了共用一个互斥锁,但我又有看到在主线程中还可以设置每个线程的优先级, 试问这个优先级和互斥锁冲突吗?是什么关系呢?
非常感谢能给予解答。
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.
您好,
收到您的问题了,我们升级到英文论坛给工程师看下,有答复尽快给到您。
您好,
线程优先级告诉 RTOS 在执行时要提供哪个线程。例如,如果要同时执行 2 个线程,则 RTOS 将选择首先执行具有较高优先级的线程,一旦较高优先级的线程处于挂起状态,就会执行第二个线程。
这两个线程的任务都是每隔多少ms(频率相同)串口打印各自数据,从程序运行结果看,就是优先级线程高的先打印,优先级低的后打印,再依次循环下去,对吗?
这个是这样的。
更多的问题帮你您同步工程师。
您好,
当线程共享数据时,互斥锁用于锁定线程,这样就不会出现竞争条件,数据也不会被破坏。
线程的优先级和前面解释的一样,决定了首先执行哪个线程。
我们工程师建议您可以参考学习simplelink academy:https://dev.ti.com/tirex/explore/node?node=A__AI7dBlcQvYF5qlV5D3aJrQ__com.ti.SIMPLELINK_ACADEMY_CC32XXSDK__wg2mfY3__LATEST