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.
Hi
I am receiving:
*** ERROR L121: IMPROPER FIXUP
MODULE: C:\KEIL\C51\LIB\C51C.LIB (PRINTF)
SEGMENT: ?PR?PRINTF?PRINTF
OFFSET: 0068H
I have tryied to read threads about this, but cannot understand it since it appears in a .LIB file
Any help? Really needing it. Thanks for your time Dario
The point is that '51 code should be efficient.
Why?
If I have a 9600 baud serial port, it doesn't matter if the code is capable of handling 20k characters/second.
If I need to read a voltage every second, it doesn't matter if the ISR is able to process 8k samples/second or not.
If the application fits in available memory, it doesn't matter if there is 1kB or 10kB code space free.
all the above is (partially) correct; however applying such thinking will, very likely, hit you in a large muscle when the next feature is to be added for MKII of your product.
Also, if you habitually code efficient, you will not have to 'fight' when a project comes up that absolutely require efficient coding.
In some cases it is ok to switch to a $100 more expensive processor since the end product may cost $10k will all external hardware, making the processor price insignificant. Absolutely, I have always stated "use the right processor for the job, do not try to make the '51 an 'universal' solution".
Erik