1
LA $t1, TRISE
LI $t2, 0x0000
SW $t2, 0($t1)
LA $t1, TRISD
LI $t2, 0xFFFF
SW $t2, 0($t1)
LI $t8, 0b0000000001
LA $t1, PORTE
LA $t2, PORTD
LI $t7, 0x2000
Loop:
SW $t8, 0($t1)
SLL $t8,$t8,1
JAL determinedelay
NOP
SW $t8, 0($t1)
SLL $t8,$t8,1
JAL determinedelay
NOP
SW $t8, 0($t1)
SLL $t8,$t8,1
JAL determinedelay
NOP
SW $t8, 0($t1)
SLL $t8,$t8,1
SW $t8, 0($t1)
SLL $t8,$t8,1
SW $t8, 0($t1)
SLL $t8,$t8,1
SW $t8, 0($t1)
SLL $t8,$t8,1
SW $t8, 0($t1)
SRL $t8,$t8,1
SW $t8, 0($t1)
SRL $t8,$t8,1
SW $t8, 0($t1)
SRL $t8,$t8,1
SW $t8, 0($t1)
SRL $t8,$t8,1
SW $t8, 0($t1)
SRL $t8,$t8,1
SW $t8, 0($t1)
SRL $t8,$t8,1
SW $t8, 0($t1)
SRL $t8,$t8,1
SW $t8, 0($t1)
SRL $t8,$t8,1
SW $t8, 0($t1)
JAL Loop
NOP
determinedelay:
LI $t7, 0x2000
LW $t4,0($t2)
SRL $t4,$t4,8
mydelay:
ADDI $t7,$t7,-1
BGEZ $t7, mydelay
NOP
JR $ra
NOP
이 코드는 LED를 켜고, 왼쪽으로 이동하고, 다른 장치를 켜고, 왼쪽으로 이동하고, 스트립의 맨 왼쪽 끝으로 이동하고, 동일한 프로세스를 반복합니다 오른쪽으로가는 등 끊임없이 반복됩니다.MIPS 및 PIC32 LED 깜박임 지연
코드의 일부분이 올바르게 작동한다고 생각하지만 지연 문제가 있습니다. 궁극적으로 전체 지연은 스위치 입력에 의존해야하지만, 현재는 일관된 지연이 발생하도록 노력하고 있습니다.
프로그램을 실행할 때 하드웨어에서 아무런 변화가 없습니다.