Arduino的IF函数能否改变SETUP中的端口定义
本帖最后由 小叉 于 2014-10-17 09:27 编辑小弟在研究Arduino的时候发现个问题,想通过IF语句改变图中的端口定义,
比如按一下微动开关,识别到了高电平,然后把 i1Pin,i2Pin,i3Pin,i4Pin的定义全改变成 INPUT。可以吗?因为我发现IF语句一般写在LOOP段的,请问这样能改变的到SETUP中的端口定义吗?或者还有其他方法吗?
。 SETUP只在程序启动的时候执行一次,等你按下微动开关,它都执行过了 本帖最后由 Super169 于 2014-10-17 13:53 编辑
為什麼不可以? 當然, 也要看看你想在什麼時間決定 if 的 condition.
如果 在 compile 程式時已經可以決定, 用 #define + #ifdef 的方式比較好.
如果 在程式啟動時決定, 執行後就不再改變, 放在 setup 中用 if 比較好.
如果 在執行中, 因應不同情況改變, 就放在 loop 之中.
你的情況在 compile 時還不知, #define 不行.
如果一開始按了就不改變, 放在 setup 中就可以了.
如果想中途按鍵改變, 就要放到 loop 之內了.
页:
[1]