Discussion in "8051 Discussion Forum" started by    Nisar Ahmed    Jul 27, 2009.
Mon Jul 27 2009, 02:25 PM
#1
Hello everyone
I have a file" table.asm",I want to include with another file" main.asm".Plz help me how i call file "table.asm"in the file "main.asm".I have using Keil assembler.

Thanks in advance
Nisar Ahmed
Mon Jul 27 2009, 05:03 PM
#2
have u added the file to your source group of "main.asm"?
Mon Jul 27 2009, 07:22 PM
#3
there are rules to follow when writing distributed assembly code..
you can download the PDF document from download section regarding Assembly programming in keil.

look for the use of keyword
"extrn" and "segment code" etc.
Tue Jul 28 2009, 06:37 PM
#4
hi guys.. can any 1 post a ScreenShot of them working with multi-file (asm)..
i wana see the declarations made in main pgm and sub-pgms..
Wed Jul 29 2009, 08:39 AM
#5
Now it's ok
In" main.asm" file .I use directive #include<table.asm>

Regards
Nisar Ahmed
Wed Jul 29 2009, 09:16 PM
#6
make sure you are not getting any warnings coz that can ruin your program.

to call a routine from external asm file.. you need to declare that segment as public. i will give you an example soon..
Thu Jul 30 2009, 03:40 AM
#7
There is no any warning.
Fri Jul 31 2009, 06:54 PM
#8
here is the exact Keil example..

File: ADD.asm


;Add routine which will be called from other file
PUBLIC ADDNUM ;declare function as public

ADDNUM_ SEGMENT CODE  ;define code segment for linker
RSEG ADDNUM_ ;select segment ADDNUM

ADDNUM:  ;Our add routine
MOV R2,R1
ADD R2,R0
RET


File: Test.asm


EXTRN CODE (ADDNUM) ;define the external symbol

CSEG at 0 ;code starts at 0
MOV R0,#50  ;Some dummy instructions
MOV R1,#51
ACALL ADDNUM ;lets call this routine which is in second file


Link it and check..


[ Edited Fri Jul 31 2009, 06:56 PM ]
Tags keil assembly programmingkeil C calling label external file
Sat Aug 01 2009, 03:30 AM
#9
Thanks for help
Mon Aug 03 2009, 05:10 PM
#10
Ok i guess Ajay's example is enough to learn the multi file concept..

I have written a code of about 31KB in a notepad which includes main pgm, LCD initilizations, 3 timer configurations and settings, ADC and its lookup table, Serial intializations and its Tx and Rx, keypad routine and some more things..

Unfortunately i dont know the concept of multi file in asm formats and i have written all these in a single file with countless jumps.... Thank god its working and thanks to JTAG debugger as well...

Now i wana seperate them into individual files and add them into my project...

So i request any 1 to plz share me a project where such concept of multi files is used... so i can get a clear idea of it...

And i dont understand why multi file is required when the solo single file is working fine....

Anyways both formats jumps to specified sequence right ? Can any 1 plz explain why they insist on multifile ?


[ Edited Mon Aug 03 2009, 05:13 PM ]

Get Social

Information

Powered by e107 Forum System

Conversation

Wed Jul 01 2015, 05:14 PM
ShubhamBansal1996
i am making a project of connecting 4 8051's using a can bus for which i am using mcp2515 and mcp2551.but before making it i want to ensure it works by simulating it on proteus though the two ic's mentioned above dont seem to have models in proteus so is there anyone who can help me with that
ExperimenterUK
Tue Jun 30 2015, 05:24 PM
@sachinmm The 8051 timer can't do 1 second. It can do 50ms so count 20 times
sachinmm
Sat Jun 27 2015, 05:01 AM
how calculate 1 second delay in 8051 by using timer and what value should be store in TH0 & TLO register??
sachinmm
Fri Jun 26 2015, 08:25 AM
hello sir plz tell me how to know the 74HC165 parallel in serial out ic is fauty or not?
Wed Jun 24 2015, 08:24 AM
ben mutuku
How can one use XOR gate to ensure the first output is '1' and the next is '0'?
ExperimenterUK
Wed Jun 17 2015, 01:37 AM
@baz..try adding a hash and a semi colon
Sun Jun 14 2015, 06:31 AM
baz
@ExperimenterUK no..i dont do that i just type message example.. Hello my name is baz and then i click send message,
ExperimenterUK
Sun Jun 14 2015, 01:55 AM
@baz..did you end your message with a hash and a semi colon
Sat Jun 13 2015, 06:48 PM
asif Jamadar
I want the program for v/f control technique of 3 phase induction motor
Sat Jun 13 2015, 07:06 AM
baz
@ExperimenterUK okay thank you...but now I already complete and my dot matrix already light up but when i send message from pc to my hardware project it doesnt show any message on my dot matrix..its only blinking when i click send message....I really dont know whats the problem...I had follow all the steps...schematic and use the coding that have been provided..is it because firstly i had wrong burn the coding in AT24C16?? Is that effect ????

Downloads

Comments

Nals99
Fri Jul 03 2015, 08:33 AM
Mc_Comet32
Thu Jun 25 2015, 11:42 AM
yashaswi
Thu Jun 25 2015, 05:56 AM
Riki-cc
Tue Jun 23 2015, 10:48 AM
PadRlp
Thu Jun 18 2015, 02:11 PM
start
Thu Jun 18 2015, 01:30 PM
sheilabajos
Tue Jun 09 2015, 03:35 PM
martintan
Tue Jun 09 2015, 12:08 AM

Online

Guests: 40, Members: 0 ...

most ever online: 182184
(Members: , Guests: 182184) on 06 Aug 2010: 05:37 AM

Members: 37672
Newest member: Nals99
Forum Activity
Nals99 Avatar
Posted By Nals99
Fri Jul 03 2015, 09:34 AM
Here you have an example using timer 0: void delay...
Nals99 Avatar
Posted By Nals99
Fri Jul 03 2015, 08:52 AM
Hi guys...I'm having some problems to transmit dat...
Karan123 Avatar
Posted By Karan123
Thu Jul 02 2015, 09:12 AM
@ajay_bhargav i will not prefer costly ic because ...
prajwalsnh Avatar
Posted By prajwalsnh
Wed Jul 01 2015, 05:21 AM
@ExperimenterUKThanks a lot for correcting my misc...
prajwalsnh Avatar
Posted By prajwalsnh
Wed Jul 01 2015, 05:17 AM
@ExperimenterUK Thank you for your simple and usef...
ExperimenterUK Avatar
Posted By ExperimenterUK
Tue Jun 30 2015, 05:45 PM
The 8051 timer can't do 1 second. It can do 50ms, ...
ExperimenterUK Avatar
Posted By ExperimenterUK
Tue Jun 30 2015, 05:38 PM
Debugging is the process of finding out why your ...
ExperimenterUK Avatar
Posted By ExperimenterUK
Tue Jun 30 2015, 05:21 PM
You may have misunderstood some of the terms used....
Amit Kumar Das Avatar
Posted By Amit Kumar Das
Mon Jun 29 2015, 06:03 PM
Suppose the ILI9320 TFT LSB & MSB pins are con...
prajwalsnh Avatar
Posted By prajwalsnh
Mon Jun 29 2015, 03:39 PM
Hello everyone,I wanted to know the basics of debu...