arduino如何實(shí)現(xiàn)多線程?
Arduino只有一個(gè)CPU,要在一個(gè)CPU上實(shí)現(xiàn)多線程的話,最終都是通過(guò)軟件實(shí)現(xiàn)的。Arduino是一款便捷靈活、方便上手的開(kāi)源電子原型平臺(tái),包含硬件(各種型號(hào)的Arduino板)和軟件(ArduinoIDE)。
它構(gòu)建于開(kāi)放原始碼simpleI/O介面版,并且具有使用類似Java、C語(yǔ)言的Processing/Wiring開(kāi)發(fā)環(huán)境。
看實(shí)際情況吧,如果只是差一個(gè)半個(gè)輸入I/O,可以選用Nano板代替,比UNO多出兩個(gè)analoginput。
如果真的不夠用,想要調(diào)用的庫(kù)也不少了,也要考慮程式的空間是否足夠。
UNO只有32KBflash,Mega2560可是256KB。而SDRAMmega2560亦是UNO的4倍。對(duì)比較大的程式,mega是必然的。這些記憶體的限制,單靠擴(kuò)展I/O是不行的。
如果空間及預(yù)算許可的話,mgea2560硬體上也可以給更大的彈性,將來(lái)再增加設(shè)備也比較容易,而且有多個(gè)serialI/O及interrupt,可實(shí)現(xiàn)的東西更多。但mgea2560長(zhǎng)一半,對(duì)細(xì)小系統(tǒng)來(lái)說(shuō)會(huì)比較大了。所以,如果可以的話,個(gè)人覺(jué)得mega2560比UNO+擴(kuò)展I/O更好。