Hi,
I will try, in the mean time, are you using a limited version of the Assembler and your code is exeeding the limit ? In that case some code packing might help.I think you can get 64k version of ASM51 from Atmel site. You may need to make only minor changes in your code to make it compatible, just try.
Regards,
Laktronics.
Added after 2 hours 10 minutes:
Hi,
Yes two symbol mistakes are there.
1. On line No.98 DATAAA is used instead of DATAA, it is in the start routine of humidity.
2. On line 533, Ro is used instead of R0. It is towards the end, before the lookup table.
Regards,
Laktronics
Added after 1 hours 7 minutes:
Hi,
Did you find out the problem ? You can also do the following:
1. Shift all codes EXCEPT 'END' statement, after the lookup table, to above the table so that your code size does not unnecessarily blow up.
2. You can even shift the look up table to 1000h or even less so that the overall code size will be reduced, and always keep the table as the last set of code, terminated by END statement. IF you do this, REMEMBER to make suitable changes to the table access statement ' mov dpr,#tablestartaddress'.
Regards,
Laktronics
Added after 4 hours 22 minutes:
Hi,
1. I found one mistake in your Humidity_convert routine. Its RET is placed after the lookup table, it should be shifted to above the table.
2. Coming to think of it, it is not necessary to absolutely fix the start address of the table. You can remove the ORG from there and assign a label to the DB directive. When you load DPTR with the table base address, simply mov the label immediately as in MOV DPTR,#label_table. This will also allow you to place the table anywhere in between program modules, though it is always preferable to keep it at the end.
Could you find a way out of your Assembler problem, if you look at the list file you mean it does not show the details of the errors?
Regards,
Laktronics.