1

我是一名计算机科学专业的学生,​​正在为学校的实验室工作。我一直在努力使这项工作,但无济于事。到目前为止,所发生的只是我的电机不停地向前运行。我将我的传感器连接到 DE2 板上的 LED 上,看看我是否能够正确接收和存储它们的值,似乎是这样。但是,电机没有对应传感器运行。我一直在修补这段代码几个小时,但没有运气。我是一个汇编编程菜鸟,非常感谢您对此的帮助。

我在这里附上了我的代码:

.equ 地址,0x10000070 .equ LEDR,0x10000000 .equ LEDG,0x10000010

.global 主要

主要的:

movia r22, LEDR
movia r23, LEDG
movia r8, ADDR
movia r9, 0x07f557ff
stwio r9, 4(r8)

传感器1:

movia r9, 0xfffffbff
stwio r9, 0(r8)

循环1:

ldwio r5, 0(r8) 
srli r5, r5, 11 
andi r5, r5, 0x1

bne r5, r0, loop1 

ldwio r10, 0(r8)
srli r10, r10, 27
andi r10, r10, 0x0f
stwio r10, 0(r22)

传感器2:

movia r9, 0xffffefff
stwio r9, 0(r8)

循环2:

ldwio r6, 0(r8) 
srli r6, r6, 13 
andi r6, r6, 0x1

bne r6, r0, loop2

ldwio r11, 0(r8)
srli r11, r11, 27
andi r11, r11, 0x0f
stwio r11, 0(r23)

马达:

/*beq r10, r11, motorOFF*/
blt r10, r11, motorR

movia r15, 0xfffffffc
stwio r15, 0(r8) 
br sensor1

电机:

movia r15, 0xfffffffe
stwio r15, 0(r8)
br sensor1

。结尾

这是乐高控制器手册的链接:

http://www-ug.eecg.toronto.edu/msl/nios_devices/dev_newlegocontroller2.html

我现在只是想让这项工作,稍后我将不得不使用脉冲宽度调制来使其更准确......我可能不得不使用 nios2 计时器?

我迷路了,将不胜感激任何帮助。

非常感谢你们,我真的很感激。

马尼克

非常感谢,我想我在这方面花了太多时间,现在只需要一双新的眼睛来帮助我。

4

0 回答 0