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 Forum Mmebers, I am using Keil for developing a product based on P89C51RD2. I have written many low level routines to interact with the hardware peripheral devices and they are working fine. Now I want to hand over this project for further development to junior engineers. I do not want them to modify core routines, (Safety and privacy of the code). 1.Can I convert my *.c and *.asm files to OBJ/LIB; and just give these OBJ/LIB files to junior engineers so that they can use these OBJ/LIB files in their project and develop programs? If yes, then how can this be achieved? Any links to Application Notes,etc. 2.Will making OBJ work for my requirement or making the LIB will work for my requirement? 3.What changes do I have to make so that my current instructions can be used to convert the file to OBJ/LIB? Thanking you in advance. Mr. Kiran V. Sutar.
1. Yes. Just put the files in some shared place on your network. Or hand them to them on a CD-R. Or whatever your preferred method is. Depending on your project, you might want to put the object files under version control, so the clients can check out a standardized set of them in various versions. (I would expect most 8051 projects to be small enough that informal methods would suffice, but that's up to you.) 2. Either will do. A .LIB is just a series of .OBJs collected into one file, with a header so that you can find them again. They save on disk clutter, and give you a way to bind a matching set of OBJs all together so that you can't get mismatched between them. (For example, the "debug library" with extra debug code in all OBJs, or the "production library" with no debug code.) 3. The translator (compiler/assembler) makes the OBJs. (You must have these already, or how would you test the code to know that the routines are "working fine"?) The librarian bundles those into .LIBs. See the manuals. If you're using uVision, the Output tab has a "Create Library" radio button as an alternate to "Create Executable".
You can simply add the .obj files to the uVision Project. uVision knows what to do with Object Files - it just gives them straight to the Linker. Similarly for Library files. You might want to create 'Objects' and/or 'Libraries' File Groups?
Hi Drew Davis, Many thanks for your reply. I did it and it worked well. And Thanks to Mr. Andy Neil for replying. Thanks for your valuable suggestions. Kiran V. Sutar