Uso de temporizadores 8051 Microcontrolador de ensamblaje

1

Estoy probando un ejemplo de temporizador básico en keil (8051) cuando depuro este código

org 0
MOV TH0,#76
MOV TL0,#01
MOV TMOD,#01
SETB TR0
JNB TF0,$
end

Me sale el error

    error 65 access violation at c: 0x000e no execute read permission

Por favor, necesito ayuda para resolver este problema

    
pregunta whyyoucare

2 respuestas

1

Tienes un error clásico aquí. No ha tomado ninguna disposición sobre lo que su programa debería estar ejecutando después de llegar a la dirección 0x000E.

Aquí echa un vistazo:

C:0x0000    758C4C   MOV      TH0(0x8C),#0x4C
C:0x0003    758A01   MOV      TL0(0x8A),#0x01
C:0x0006    758901   MOV      TMOD(0x89),#0x01
C:0x0009    D28C     SETB     TR0(0x88.4)
C:0x000B    308DFD   JNB      TF0(0x88.5),C:000B
C:0x000E    ????     ???      ??? ???

El hecho de que haya puesto una declaración "final" en el código fuente de su lenguaje ensamblador no significa nada para el núcleo de tiempo de ejecución 8051 que intenta obtener instrucciones.

    
respondido por el Michael Karas
0

Debug- > Memory Map, asegúrese de que el mapa de memoria esté correctamente habilitado para lectura / escritura (por ejemplo, 0x0000 a 0xFFFF)

    
respondido por el Spehro Pefhany

Lea otras preguntas en las etiquetas