以前从未使用过picaxe,我想知道如何或者是否可以在列表中存储输入值列表,以便在按下“go”按钮时执行。
这是我正在制造的可编程电动汽车,而且时间不多了!
我可以使用和改编的任何代码行都会有很大的帮助!
答案 0 :(得分:0)
阅读'变量' part 2 of the PICAXE manual的部分。
在任何PICAXE芯片上,您都可以使用POKE
和PEEK
命令从指定的内存位置一次存储和检索一个字节。您需要检查您可以在您使用的特定PICAXE芯片上使用哪个地址范围,并且您需要使用变量作为指针来跟踪您正在写入的位置或者阅读,例如:
SYMBOL write_pointer = w0
SYMBOL read_pointer = w1
SYMBOL first_address = $1C ' lowest address available
SYMBOL last_address = $1FF ' highest address available
' (addresses here are for 18M2+, 14M2, 20M2, different for other PICAXE chips)
' Example of storing data:
write_pointer = first_address
DO
' Code goes here that produces the data to be stored - e.g. in variable b4
POKE write_pointer, b4
' your code needs to determine when it's finished storing data,
' shown here by 'something'
IF something OR write_pointer = last_address THEN EXIT
INC write_pointer
LOOP
' Example of retrieving data again in the same order
FOR read_pointer = first_address TO write_pointer
PEEK read_pointer, b4
' do something with the value that was retrieved
NEXT read_pointer
根据您拥有的PICAXE芯片,您可以选择使用带有@ptr
,@ptrinc
和@ptrdec
的暂存存储器,或使用@bptr
,{{1}对变量进行间接寻址}和@bptrinc
- 这些会使您的代码更简单,但并非在所有芯片上都可用。这一切都在手册中解释过。
如果您是PICAXE的新手,请确保您了解字节和字变量之间的关系。在上面的示例中,我使用了字变量@bptrdec
和w0
,这意味着您无法同时使用字节变量w1
到b0
。