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.

LAUNCHXL-CC3235S: 关于互斥锁功能的使用

Part Number: LAUNCHXL-CC3235S
Other Parts Discussed in Thread: CC3235S

TI工程师您好

我的CC3235S在IIC通信上挂着多个从设备,如何能保证这几个从设备同时工作,同时读取出来它们的寄存器的数据,互相不影响各自的线程,用互斥锁这个功能能实现吗?

用互斥锁功能的话,具体调用什么哪个函数呢?引用文件在SDK里吗?

  • 您好,

    收到您的问题了,我们升级到英文论坛给工程师看下,有答复尽快给到您。

  • 您好,

    互斥锁可以用于“关键部分”的保护,你想要实现的功能可能是能被实现的。

    SDK 包含了许多互斥锁的示例(可以通过 POSIX API,查找“pthread_mutex”)。

    希望能够帮助到您。

  • ti工程师您好

    我用的是windows版本SDK,SDK版本是CC32xx_sdk_5_20_00_06,这个版本中的例程并不多,就如下:

    at_commands

    cloud_ota

    connection_manager

    httpget

    json_app

    local_ota

    local_time

    mqtt_client

    matt_client_server

    network_terminal

    out_of_box

    portable

    portableNative

    provisioning

    请问这些例程中有关于互斥锁的例程吗?既然用到posix api,是linux版本的SDK中有互斥锁的例程吗?具体是哪个例程呢?最好是iic通信的互斥锁例程,非常感谢给予解答。

  • 您好,已帮您同步工程师。

    感谢您的支持。

  • 您好,

    pthread_mutex有被用在:out_of_box, mqtt_client, portable。

    API 使用非常简单:pthread_mutex_init(初始化互斥体)、pthread_mutex_lock(进入临界区时调用)、pthread_mutex_unlock(退出临界区时调用)。如果您有多个线程,您应该使用相同的互斥锁(即通过对 pthread_mutex_init 的一次调用初始化,例如在创建线程之前)来保护对单个资源的访问。

    希望能够帮助到您。

  • 非常感谢Nick的耐心解答,再一次谢谢您

  • 您好,

    能解决您的问题是我们的荣幸,如果问题解决,可以在答案处点击已解决。

    感谢您的支持。