我想在C中编写一个程序,它接受pickit中电位器的输入。程序应根据电位计旋转的方向左右旋转拾音器板中的4个LED。如果电位计的箭头指向右侧,则LED应开始向右旋转。此外,LED的旋转速度应取决于电位计上箭头指向中心的距离。此外,我想使用板上的按钮作为暂停开关。因此,当按下按钮时,即使电位计旋转,LED也应停在当前位置。任何帮助将不胜感激。
答案 0 :(得分:0)
我一直在考虑你们的建议。我想出了以下伪代码。
main: ; start program
readadc wiper, val ; read 8-bit ADC value into variable val
if val = max then top ; jump to label top if true
if val > near_max then middle_1 ;
if val > middle AND val < near_max then middle_2 ;
if val < middle then bottom ;
goto main ;jump back to the start
top: ; label
HIGH LED1
LOW LED2
LOW LED3
LOW LED4
goto main ; done jump back to start
middle_1: ; label
LOW LED1
HIGH LED2
LOW LED3
LOW LED4
goto main ; done jump back to start
middle_2:
LOW LED1
LOW LED2
HIGH LED3
LOW LED4
goto main ; done jump back to start
bottom: ; label
LOW LED1
LOW LED2
LOW LED3
HIGH LED4
goto main ; done jump back to start
我仍然对如何编程按钮的事情感到困惑,但是现在我只是想让LED变速首先工作。任何帮助将非常感激。此代码仅适用于电位器的一侧,另一侧将非常相同,但顺序相反。我正在考虑在汇编中编程,因为我知道一些汇编代码。