??? 06/02/08 11:02 Modified: 06/02/08 11:05 Read: times |
#155382 - Fundamentals Responding to: ???'s previous message |
Firstly, the concept of a DLL does not need an operating system! It is a 'dynamically linked library' which means the linkage to the functions is done at run time. You can do this with a 8051, but whether it is wise to do so is questionable.
how can this getadcval(ch) be referenced between the dead listings ? From what I gather, you want a fixed library of routines and a loadable section for your application. May I say that an 8051 is probably not the best architecture for this kind of application. Maybe an ARM would be a wiser choice. Nevertheless, there's no reason why you can't have a library of routines and have a fixed jump table to access them (much like a DLL). You would then declare these routines as external and inform the linker of their locations in the jump table. Then your application can just #include the header file where the routines are declared and all being equal, it should work as expected with only a slight overhead of an intermediate jump. Interrupts? Why would interrupts assist in this??? You could do what you originally asked between different compilers - it's called SOAP. Methinks the overhead is a little too high for a little micro. Basically each function call gets converted into a XML database, a dispatcher called, then the other side upravels the XML database, figures out if the function is available, calls the function and packs the response up into a XML database and back again. |