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

STM32 如何快速创建 FREERTOS和RTX 工程  

[复制链接]
lovewyufeng 发布时间:2015-1-8 12:08
阅读主题, 点击返回1楼
收藏 14 评论96 发布时间:2015-1-8 12:08
96个回答
stary666 回答时间:2015-1-23 13:32:40
wu1169668869 回答时间:2015-1-23 13:41:29
mark一下
lovewyufeng 回答时间:2015-1-23 13:41:57

兄弟这是 灌水么~~~
stary666 回答时间:2015-1-23 16:44:25
lkl0305 回答时间:2015-1-23 17:22:36
好东西,学习了
默默前行 回答时间:2015-1-23 17:32:02
很好,赞一个!
我是东哥 回答时间:2015-1-24 07:31:09
本帖最后由 我是东哥 于 2015-1-24 09:21 编辑
lovewyufeng 发表于 2015-1-23 12:56
事实上  只要这个计数不为0 都能被 wait 到

不好意思,确实被代码的名称误导了,以前用的基本上只用二值的semphore或者直接用queue了。
仔细看了一下内部的实现,确实我说错了。
在init_counter和max_counter一样的情况下,确实整个逻辑是要按照资源池来解释的,也就是确实生产者take(这个take代表获取空闲资源才能生产),消费者release(这个代表空闲资源返回)。我觉得这种情况semphore更像一个可重入的锁,处理线程拿走资源池后,直接处理完后再归还,像是个recursive mutex。
前面说的那个问题,直接用queue可能会更好。另外,今天试了一下最新的stm32cubemx和固件版本,代码已经改了,#if (configUSE_COUNTING_SEMAPHORES == 1 )        
  return xSemaphoreCreateCounting(count, 0);
#else
  return NULL;
#endif
}




拼命三郎 回答时间:2015-1-24 10:42:34
QQ截图20150124103212.jpg
wangweili1978 回答时间:2015-1-24 15:17:03
2.png
lovewyufeng 回答时间:2015-1-25 11:10:06
我是东哥 发表于 2015-1-24 07:31
不好意思,确实被代码的名称误导了,以前用的基本上只用二值的semphore或者直接用queue了。
仔细看了一下 ...

看来 ST 也意识到这个BUG了

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

相似技术帖

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