1

私はコンピューター サイエンスの学生で、学校の研究室で働いています。私はこれを機能させようとしましたが、役に立ちませんでした。これまでのところ、私のモーターは止まることなく前進するだけです。センサーを DE2 ボードの LED に接続して、それらの値を正しく受信して保存できるかどうかを確認しましたが、そのようです。しかし、センサーに対応してモーターが回っていません。私はこのコードを何時間もいじっていましたが、運が悪かったです。私はアセンブリ プログラミングの初心者です。

ここにコードを添付しました:

.equ ADDR、0x10000070 .equ LEDR、0x10000000 .equ LEDG、0x10000010

.グローバルメイン

主要:

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

モーターR:

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