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

Mon Mar 30 2015, 04:51 PM
Peter james
can any one provide me an assembly language program to interface with 16x2 LCD, 4X4 Keypad and a GSM Module to recieve message and display it.
ajay_bhargav
Mon Mar 23 2015, 04:22 AM
You can only simulate simple 8051. RD2 support is not there in proteus. However there are similar atmel varient which can be used instead.
Sun Mar 22 2015, 07:24 PM
Aryan Nath
How can i Simulate microcontroller project in Proteus that uses P89V51RD2
Thu Mar 19 2015, 02:45 PM
Peter Mann
I have tried to register on the site, but it keeps saying I've entered two different email adresses - but I haven't!
ajay_bhargav
Sun Mar 15 2015, 08:25 PM
I did not get new message indication.. strange..
ExperimenterUK
Sun Mar 15 2015, 08:18 PM
slight delay, my connection failed
ajay_bhargav
Sun Mar 15 2015, 08:08 PM
Atleast you chat on our website if not anywhere else
ajay_bhargav
Sun Mar 15 2015, 08:08 PM
Hi Phil..
ExperimenterUK
Sun Mar 15 2015, 08:05 PM
Hi Ajay
gsdvprasad
Fri Mar 13 2015, 04:20 PM
Can you help me how to change the text on led display in proteus simulation?

Downloads

Comments

harix
Sun Mar 29 2015, 07:11 PM
marti
Fri Mar 27 2015, 03:07 PM
iamalien
Thu Mar 26 2015, 07:27 AM
Ankit30
Wed Mar 25 2015, 02:35 PM
wai1023
Wed Mar 25 2015, 06:27 AM
StrangerDanger
Tue Mar 24 2015, 12:40 PM
vinayas9
Tue Mar 24 2015, 09:26 AM
ganesh1991
Tue Mar 24 2015, 08:22 AM

Online

Guests: 30, Members: 0 ...

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

Members: 37611
Newest member: harix
Forum Activity
diana1234 Avatar
Posted By diana1234
Mon Mar 30 2015, 08:12 AM
Dear sir,How a resistor can be used as a current l...
ExperimenterUK Avatar
Posted By ExperimenterUK
Mon Mar 30 2015, 05:13 AM
The processor on the MCB2300 has a built in DAC.Cr...
iamalien Avatar
Posted By iamalien
Sun Mar 29 2015, 07:46 PM
yes either that or use the flash reprogrammable va...
ajay_bhargav Avatar
Posted By ajay_bhargav
Sun Mar 29 2015, 07:37 PM
Correct, you cannot change ROM, but you can still ...
iamalien Avatar
Posted By iamalien
Sun Mar 29 2015, 07:25 PM
i am using at89s52 i guess it is only isp not iap,...
ajay_bhargav Avatar
Posted By ajay_bhargav
Sun Mar 29 2015, 07:22 PM
Ianalien is right. But you can do this without usi...
ajay_bhargav Avatar
Posted By ajay_bhargav
Sun Mar 29 2015, 07:19 PM
EEPROM can be changed at runtime. Program memory c...
ajay_bhargav Avatar
Posted By ajay_bhargav
Sun Mar 29 2015, 07:11 PM
We have digital clock project with 4 line lcd. It ...
ajay_bhargav Avatar
Posted By ajay_bhargav
Sun Mar 29 2015, 07:07 PM
It may be possible that interrupt pin may be used ...
ajay_bhargav Avatar
Posted By ajay_bhargav
Sun Mar 29 2015, 06:58 PM
As per majoka, if you have installed the crack pro...