你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

为什么全局变量不能直接传递给函数使用?  关闭

[复制链接]
guanjianguo 提问时间:2008-12-23 10:38 /
 
 
 u8  step, yh, xl[6];
 u16 change[6];
 
 extern void xs_1p_hz(u8 yn,u8 place, u16 *nm); 
 extern void xs_ss_u16(u8 place, u8 ss, u16 n);
 
////////////////////  目录光标下移键  //////////////////////////
void key1_2()   //  目录光标下移键
{ u16 nm[8];  // 放汉字内码
  switch(yh)
    { case 2:
        { yh=6;  // 选中第6行,高亮显示
          nm[0]='确'; nm[1]='认';   nm[2]=0;  nm[3]=0;  nm[4]=0;    nm[5]=0;   nm[6]=0;    nm[7]=0;
          xs_1p_hz(yh, 6, nm); // 第6排 显示8个汉字
          break;
        } 
      case 6:
        { yh=7;  //  选中第7行,高亮显示
          nm[0]='退'; nm[1]='出';   nm[2]=0;  nm[3]=0;  nm[4]=0;    nm[5]=0;   nm[6]=0;    nm[7]=0;
          xs_1p_hz(yh, 7, nm); // 第6排 显示8个汉字  
          break;
        }
      default:
        { yh=2; //  显示第2行数字,高亮显示 选中的位
          xs_ss_u16(2, xl[2], change[2]); // 第2排 显示4个数字
          break;
        }
    }
}
 
执行上面的函数后,全局变量yh, xl[6] 的值 都变了.
 
 为什么全局变量不能直接传递给函数使用?
  
以前我IAR for MSP430都很好用的!!!!!  用IAR442A就不行了!!!!!!!!!!
 
 
 
 
收藏 评论5 发布时间:2008-12-23 10:38

举报

5个回答
萧星-96138 回答时间:2008-12-23 12:24:41

RE:为什么全局变量不能直接传递给函数使用?

楼主的意思是?具体是哪里有问题呢?
guanjianguo 回答时间:2008-12-23 14:05:38

RE:为什么全局变量不能直接传递给函数使用?

2楼楼主,
执行上面的函数后,全局变量yh, xl[6] 的值 都变了.
且好像进入了hard fault异常处理

为什么全局变量不能直接传递给函数使用?
   
以前我IAR for MSP430都很好用的!!!!!  用IAR442A就不行了!!!!!!!!!!
zangdianjun 回答时间:2008-12-24 11:12:56

回复:为什么全局变量不能直接传递给函数使用?

我的情况和楼主很类似啊,这个程序好像是液晶显示?
我是在用开发板练习程序呢,不知道楼主用的是哪款啊?
萧星-96138 回答时间:2008-12-24 11:22:08

RE:为什么全局变量不能直接传递给函数使用?

yh, xl[6] 的值都变了? 我们给他赋值他也应该不变吗? 还是变化不是你想要的变化?
ssrwork 回答时间:2008-12-24 12:04:21

RE:为什么全局变量不能直接传递给函数使用?

我觉得问题在函数声明.你传的yh和x是数组,最好在函数里用指针吧.

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版