• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

ucos中可以使用全局变量吗

夹心英雄 2020-03-13 浏览量:910
使用全局变量会不会导致系统异常
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 当然可以用全局变量,正确的使用全局变量是不会导致系统异常的,如果错误的使用全局变量是会导致系统异常的。因为全局变量就意味着使用此变量的函数不可重入,多任务中会常常发生函数重入。因而在操作系统要用互斥信号等方法,让只有唯一个函数使用某个全局变量。这样程序可读性和可维护性降低。所以尽量少用全局变量。
    • 发布于 2020-03-19
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:7
  • UCOS中是可以使用全局变量的,不会导致系统异常,但是要注意尽可能少用全局变量
    • 发布于2020-03-13
    • 举报
    • 评论 0
    • 0
    • 0

  • UCOS 是可以使用全局变量的。 也不会导致系统异常。 但是数据很有可能被篡改。 所以这个得小心一点了。 尽量少用全局变量吧。 不安全。
    • 发布于2020-03-13
    • 举报
    • 评论 0
    • 0
    • 0

  • 当然是可以的啊,只要你的全局变量不去配置任务相关的调度的程序,就不会有问题 的
    • 发布于2020-03-13
    • 举报
    • 评论 0
    • 0
    • 0

  • 肯定可以用,但要审慎的用,尽量不用,因为全局变量更不容易管理,更容易造成bug。
    • 发布于2020-03-14
    • 举报
    • 评论 0
    • 0
    • 0

  • 可以,一个系统是离不开全局变量的。 实际上单片机的所有外设寄存器的本质都是全局变量,只是它的地址是固定的。 

    用全局变量只需要注意一点: 如果有多个任务需要访问该变量,要做好保护。

    保护的方法可以是 临界端,或者互斥信号量,或者二值信号量。

    • 发布于2020-03-14
    • 举报
    • 评论 0
    • 0
    • 0

  • 是可以的,按平时使用的全局变量的方式使用就可以了,没有特别的要求的。也系统也没有关系的
    • 发布于2020-03-14
    • 举报
    • 评论 0
    • 0
    • 0

  • 可以,ucos的全局变量使用静态内存区,跟裸机的一样
    • 发布于2020-03-17
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

ucos中可以使用全局变量吗