He escrito un programa en lenguaje C para AT89C2051 & carga el archivo Hex en el Chip 89C2051 pero no funciona. Pero cuando el mismo programa escribo para AT89C51, funciona correctamente.
Una cosa más que estaba hecho. El mismo código de salida se escribe en ensamblador & carga de archivos hex en el AT89C2051 entonces su trabajo correctamente. Mi código C como abajo:
#include<reg2051.h> // special function register declarations
sbit LED = P3^5; // Defining LED pin
sbit Relay = P3^7;
sbit Music = P1^0;
sbit Det = P3^2;
void Delay(void); // Function prototype declaration
void main (void)
{
// infinite loop
while (1)
{
if (Det!=1)
{
Relay =0;
LED = 0; // LED ON
Music = 0;
Delay();
LED = 1; // LED OFF
Music = 1;
Delay();
}
else
{
Relay =1;
}
}
}
void Delay(void)
{
int j;
int i;
for(i=0;i<10;i++)
{
for(j=0;j<10000;j++)
{
}
}
}
Por favor, sugiéreme cómo resolver este problema.