小编Muh*_*mar的帖子

为什么我在 proteus 中收到此错误:“PC=0x002A 处的操作码 0xFFFF 无效”

我用汇编语言为 avr atmega328P 编写了这段代码。它使用按钮打开和关闭 LED,但在 proteus 中我收到此错误:

PC=0x002A 处的无效操作码 0xFFFF

这是我的代码:

.INCLUDE "M328Pdef.inc"


ldi r16,HIGH(RAMEND)
out SPH, R16
ldi r16,LOW(RAMEND)
out SPL, R16

start:
ldi r16,0xFF
out DDRB,r16
ldi r17,0x00
out DDRD,r17
ldi r21,0x00
ldi r23,0x01

Forever:
in r20,PIND
cp r20,r21
BREQ ledon
cp r20,r23
BREQ ledoff
rjmp Forever


ledon:
ldi r22,0x01
out PORTB,r22 
ret

ledoff:
ldi r24,0x00
out PORTB,r24
ret

Run Code Online (Sandbox Code Playgroud)

有人有解决办法吗?

microcontroller assembly avr atmega32

2
推荐指数
1
解决办法
2634
查看次数

标签 统计

assembly ×1

atmega32 ×1

avr ×1

microcontroller ×1