We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
I am working on AT89C51, the problem is that although my assembly code is working perfectly on the pinnacle simulator it gives a verification failed error when I try to write it on the programmer using ezdl4 s/w.
Simple programs with commands to send and recieve data on the serial port work fine and get written on the controller, but when I use commands like ACALL or MOVC in my code it gives me the verification failed error.
Example of a Code working on the programmer.
ORG 0H
MOV TMOD,#20h MOV TH1,#98h MOV SCON,#50H SETB TR1
ECHO:
RECV: JNB RI,RECV MOV A,SBUF CLR RI
MOV SBUF,A SEND: JNB TI,SEND CLR TI
SJMP ECHO
END
Example of a Code not Working
MOV DPTR,#MYDATA
H_1: CLR A MOVC A,@A+DPTR JZ B_1 ACALL SEND INC DPTR SJMP H_1
SEND: MOV SBUF,A JNB TI,$ CLR TI RET
MYDATA: DB "SeriaL Data Transmission 123",0H
B_1: HERE:SJMP HERE END
Note: I have a 12Mhz crystal and so i am using a baudrate of 300bps.
Could anyone please tell me whats the problem asap. Thank you
The programmer I am using is definitly for AT89C51 that only means it it likely to be faulty. The Atmel programming is so finicky that 99% of the kitchen table approaches that 'work' has problems. This is not whether is is somebodys wet dream of how to program Atmel, it is that if ANYTHING is 1% or less off the Atmel expectations it will, most likely fail. As an example replacing a VHC chip in somebodys illusion of an Atmel programmer with an equivalent HC chip makes the 'working' design fail. Not to mention that there are ';designs' on the web that are guaranteed not to work unless your PC is brand x running Windows rev y. That, of course, is NOT stated.
The only thing i am asking is wether its possible dat the programmer has some fault and is not burning some codes? not just 'possible' but likely
Erik