haigd 发表于 2014-11-30 10:22:01

关于arduino的多线程任务和I/O扩展

请教各位大神,帮朋友做一个微环境控制系统,根据功能需要,需要实时检测流量传感器的方波信号,用来控制PWM脉宽调速水泵的功率;用DS18B20实时检测温度,控制加热与散热,在一定范围内恒温;用DS3231时钟模块,分别控制四个房间灯光照明时间;同时,系统设置全部采用红外遥控接收头1838和简易遥控器控制,省略实体键盘;最后,加一块12864液晶屏显示工作状况。以上系统如果使用一块arduino UNO R3能否实现?如果I/O接口不够,是该扩展I/O口,还是直接换arduino MEGA 2560比较合理?多谢多谢!!

方向导数 发表于 2014-11-30 11:32:00

我是新手,也关注。

maxims 发表于 2014-11-30 12:59:34

合理安排,还是够的~

Super169 发表于 2014-11-30 14:12:46

本帖最后由 Super169 于 2014-11-30 14:15 编辑

看實際情況吧, 如果只是差一個半個輸入 I/O, 可以選用 Nano 板代替, 比 UNO 多出兩個 analog input.

如果真的不夠用, 我想你要調用的庫也不少了, 也要考慮程式的空間是否足夠. UNO 只有 32KB flash, Mega2560 可是 256KB.而 SDRAM mega2560 亦是 UNO 的 4 倍.對比較大的程式, mega 是必然的.這些記憶體的限制, 單靠扩展I/O是不行的.

如果空間及預算許可的話, mgea2560 硬體上也可以給你更大的彈性, 將來再增加設備也比較容易, 而且有多個 serial I/O 及 interrupt, 可實現的東西更多.但 mgea2560 長一半, 對細小系統來說會比較大了.

所以, 如果可以的話, 個人覺得 mega2560 比 UNO+扩展I/O 更好.

haigd 发表于 2014-11-30 16:06:08

Super169 发表于 2014-11-30 14:12 static/image/common/back.gif
看實際情況吧, 如果只是差一個半個輸入 I/O, 可以選用 Nano 板代替, 比 UNO 多出兩個 analog input.

如果 ...

谢谢,现在已定下使用MEGA 2560,就是担心PWM控制的延迟情况会有多少?

林定祥 发表于 2014-11-30 23:10:43

关键是响应速度问题,温感是低速的,流量传感不知什么速率,否则难以协调。

haigd 发表于 2014-12-1 09:52:29

林定祥 发表于 2014-11-30 23:10 static/image/common/back.gif
关键是响应速度问题,温感是低速的,流量传感不知什么速率,否则难以协调。

谢谢,现在调整了一下方案,把流量传感器和水泵PWM调速控制单独用一块UNO R3
页: [1]
查看完整版本: 关于arduino的多线程任务和I/O扩展