完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
最近在学习发烧友的UCOS III视频,但是视频里讲信号量和消息队列时,所建的信号量和消息队列在是在同一个.C文件里的,因为在实际使用中,我们的工程会有很多.C文件。
比如说我的串口中断处理函数放在别的.C文件里面,跟处理中断处理函数的任务不在同一个.C文件里面。那我要实行同步时,我中断处理函数接收完数据要发送信号量给别的.C文件里的任务,那我的这个信号量怎么定义呢(难道要像定义外部全局变量一样,声明成一个外部信号量嘛?)? 在任务同步的过程中,中断处理函数的数据怎么通过消息队列传递给别的.C文件里面的任务呢(也是把消息队列声明成外部消息队列嘛)? 问题: 1、怎么定义一个信号量可以让多个.C文件用?2、在某个.C文件里面有个全局数组的值怎么通过消息队列发送给别的.C文件的任务(是不是要定义个外部消息队列,像裸跑程序一样用extern定义义成外部消息队列)? |
|
相关推荐
3个回答
|
|
可以用指针传递
|
|
|
|
有点疑问,打个比方,我在串口中断处理理函数的.C文件里声明了一个全局结构体,同时在同一个。C文件声明一个消息队列,串口中断处理函数把接收的数据存在全局结构体中,然后把全局结构体的指针赋给声明的消息队列,然后发送消息队列出去,但是别的.C文件里面的任务应该是识别不了我的消息队列的吧?因为在两个不同的.C文件里面。
|
|
|
|
自己验证
|
|
|
|
只有小组成员才能发言,加入小组>>
695 浏览 0 评论
1106 浏览 1 评论
2473 浏览 5 评论
2808 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2646 浏览 6 评论
使用eim外接fpga可是端口一点反应都没有有没有大哥指点一下啊
654浏览 9评论
650浏览 7评论
请教大神怎样去解决iMX6Q在linux3.0.35内核上做AP失败的问题呢
782浏览 6评论
629浏览 5评论
669浏览 5评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 16:14 , Processed in 0.944973 second(s), Total 53, Slave 43 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号