| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 628 人关注过本帖
标题:一个传递值的方法问题
只看楼主 加入收藏
zamely
Rank: 2
等 级:论坛游民
帖 子:42
专家分:10
注 册:2013-6-15
结帖率:77.78%
收藏
已结贴  问题点数:20 回复次数:9 
一个传递值的方法问题
我有一个困惑。现在做项目,要求不能用全局变量,但是呢,却又不得不中断中改变一个值并传出来,大家有什么好方法呢?
我自己是这样想的,在中断中把需要传入的数据从文件中读取(事前其他保存在文件),传出的保存到另一个文件。到用到时通过读取文件来实现这种传递。不知道是否可取!

[ 本帖最后由 zamely 于 2013-8-22 11:25 编辑 ]
搜索更多相关主题的帖子: 项目 
2013-08-22 11:14
jg658237
Rank: 7Rank: 7Rank: 7
来 自:青藏高原
等 级:黑侠
帖 子:224
专家分:529
注 册:2013-8-8
收藏
得分:0 
没有具体的程序 我不懂你具体再说什么,把程序也写上去麻

武功再高也怕菜刀.
2013-08-22 11:32
zamely
Rank: 2
等 级:论坛游民
帖 子:42
专家分:10
注 册:2013-6-15
收藏
得分:0 
回复 2楼 jg658237
谢谢回复~不过不好意思,程序太长,写上也很难看。但这问题和具体程序关系不大。就是我需要传入参数到声卡中断函数(它被我设置一段时间触发一次,周期性的),同时,也需要从中断传出参数。但有个麻烦的要求,就是不让用全局变量。所以,我想知道有什么好的方法,可以不用全局变量而传递参数到中断。
2013-08-22 11:37
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9008
专家分:53957
注 册:2011-1-18
收藏
得分:20 
把局部变量的地址传进去
2013-08-22 12:45
zamely
Rank: 2
等 级:论坛游民
帖 子:42
专家分:10
注 册:2013-6-15
收藏
得分:0 
回复 4楼 rjsp
我是C语言写的中断,这个中断服务程序可以传递函数值么?书上都说不行呢~
2013-08-22 14:35
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9008
专家分:53957
注 册:2011-1-18
收藏
得分:0 
回复 5楼 zamely
哪个中断?什么触发?
如果是你自己用代码触发的话,你可以用寄存器传进去,反正中断处理程序也是你自己写的;
如果是硬件触发的话,没什么好办法
2013-08-22 15:11
zamely
Rank: 2
等 级:论坛游民
帖 子:42
专家分:10
注 册:2013-6-15
收藏
得分:0 
回复 6楼 rjsp
谢谢版主了,可惜是自己写的声卡中断处理函数,硬件触发的。。。确实也没有什么办法啊
2013-08-22 15:36
liufashuai
Rank: 9Rank: 9Rank: 9
来 自:冥界-魔域-魂殿
等 级:蜘蛛侠
威 望:1
帖 子:370
专家分:1374
注 册:2012-6-22
收藏
得分:0 
楼主,你确定你是做嵌入式的,
我就不说了,你竟在中断中使用I/O,你丫的真人才
中断尽量短小,不要使用休眠函数,尽量不要使用I/O
如果你使用I/O的话,我还是建议你使用全局变量

嵌入式的一般处理方法是:只在中断处理程序中设置一个标志eg:flag = 1
中断外面有一个循环判断flag的语句,当判断flag=1时候,你可以做你的修改
当然记着修改后把flag赋值为0

有一种落差是,你配不上自己的野心,也辜负了所受的苦难。






2013-08-22 23:57
liufashuai
Rank: 9Rank: 9Rank: 9
来 自:冥界-魔域-魂殿
等 级:蜘蛛侠
威 望:1
帖 子:370
专家分:1374
注 册:2012-6-22
收藏
得分:0 
回复 楼主 zamely
我擦,怎么结帖了?好吧,我扯淡了。。。

有一种落差是,你配不上自己的野心,也辜负了所受的苦难。






2013-08-23 00:04
zamely
Rank: 2
等 级:论坛游民
帖 子:42
专家分:10
注 册:2013-6-15
收藏
得分:0 
回复 9楼 liufashuai
谢谢你的恢复~我这个是纯PC编程,和嵌入式没关。不过我也记住了嵌入式应该怎么做。
2013-08-23 08:46
快速回复:一个传递值的方法问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.029686 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved