作者shawnwang (休假你好)
看板ASM
标题[问题] 单晶片可以用 fork 跑多个 process 吗
时间Sun Apr 3 12:29:11 2011
※ [本文转录自 Electronics 看板 #1Db_TEME ]
作者: shawnwang (休假你好) 看板: Electronics
标题: [问题] 单晶片可以用 fork 跑多个 process 吗
时间: Sun Apr 3 12:27:56 2011
程式运行在 89S51 上,遇到一个小问题
有 10 个脚位在侦测低电位,一旦侦测到,就会呼叫蜂鸣器副程式 (大约响 0.5 秒结束)
由於呼叫副程式,因此在这 0.5 秒之中,此 10 个脚位便无法再进行侦测动作
这样是个大问题,因为随时可能会有低电位进来
因此我想用 C 的 fork 来执行蜂鸣器的动作,让 parent process 继续回去侦测脚位
但却发现 Keil C 好像没办法使用 fork??
一旦 include #include <unistd.h> 或 #include <sys/types.h>
皆显示找不到此标头档,如此一来就没办法使用 fork 函式了...
===
此篇其实有两个方向想参考大家的意见
一个是如果蜂鸣器响很久的话,大家都怎麽让程式能继续侦测脚位
另一个是 Keil C 是否真的无法使用 fork 函式呢
感谢大家~~
--
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.129.141.188
※ 编辑: shawnwang 来自: 220.129.141.188 (04/03 12:30)
1F:推 ruemann:那就改写蜂呜器的副程式 (用硬体pwm或timer去完成) 04/03 13:03
2F:→ ruemann:或是那十根IO用二极体接到一个外部中断源,用中断侦测LOW 04/03 13:04
3F:推 mimi0213:写个kernel,自己implement fork 04/03 13:34
4F:推 WolfLord:花点时间看看 KEIL C的RTX51吧 04/03 15:10
5F:→ ksmrt0123:用 timer 就够用了 04/03 16:00
6F:推 MasterChang:有一种叫做rtos的好物 04/03 16:47
7F:推 saram:外接555, 触发第2脚使之触发充放电. 响声时间可以RC*1.1决定 04/04 23:00
8F:推 WolfLord:其实只要好好安排单工程序,并不需要太复杂的技巧 =.= 04/05 02:33
9F:推 stool100:观念能多工 程式就可多工 04/05 21:18
10F:→ shawnwang:谢谢大家~~ 长知识了!! 04/17 22:38