Discussion in "Project Doubts" started by    sankalp_s    Nov 29, 2014.
Sat Dec 27 2014, 03:59 PM
#21
Dear Phil sir
my second query is, there are three program in side the code:
for example in program 1st has three design, program 2nd has two design program 3rd has six design,
now i'm using any two pin for call these design. (ie.pin p3.2 & p3.3)
if no any pin is low then only program 1 will be run
if 3.2 then only program 2
& when 3.3 then only program 3
is this possible with JB & JNB instruction?
i've tried but only 1 program works,
could you please help me for the code?
thank u for your cooperation..
Sun Dec 28 2014, 05:34 AM
#22
you need to remove jump statements from main program codes. only the design loop should remain. rest you can do something like this...
;You main loop will be like this..
main:
JB P3.3, program2
;Put program 3 code here
program2:
JB P3.2, program1
;Put program 2 code here
sjmp main
program1:
;Put program 1 code here
sjmp main
 sankalp_s like this.
Fri Jan 30 2015, 05:40 PM
#23


you need to remove jump statements from main program codes. only the design loop should remain. rest you can do something like this...

;You main loop will be like this..
main:
JB P3.3, program2
;Put program 3 code here
program2:
JB P3.2, program1
;Put program 2 code here
sjmp main
program1:
;Put program 1 code here
sjmp main

ajay_bhargav



THANK U SIR FOR UR REPLY,

Dear sir i want to put five design in program 1, five design in program 2 & five design in program 3,
then how will be program structure & loop structure
Each program would be selected by switch.

"you need to remove jump statements from main program codes. only the design loop should remain" Sir could u please explain this line with my code.

thank u..
Wed Feb 04 2015, 05:45 AM
#24
refer to updated code @http://www.8051projects.net/forum-t64188-10.html#post_64249
Its hard to explain everything line by line. You need to understand the logic first.
Mon Feb 16 2015, 08:33 PM
#25
Dear sir facing error.... for jb and sjmp..
"Label is too far for 8-bit relative addressing."
Mon Feb 16 2015, 10:27 PM
#26


Dear sir facing error.... for jb and sjmp..
"Label is too far for 8-bit relative addressing."

sankalp_s


jb and sjmp can only jump to within 127 bytes of code,
so you will get problems if your design is poor.
For sjmp you can just use jmp instead.
For jb, jnb etc, you will need to change the program layout.
Post your latest code so we can see where you are up to.
 sankalp_s like this.
Tue Feb 17 2015, 11:48 PM
#27


Sir i'm doing this, code is given below..
now there i no any error but JB instructions are not working.
only progrm one starts.

sankalp_s


Hi sankalp_s, because of your program text
your last post was hard to handle.
I have removed it, and re-posted the contents here.
For larger program it is better to Zip and attach them.





Wed Feb 18 2015, 12:57 AM
#28
I have changed your code to make it's operation clearer
and to remove all long branches.
I have not compiled it, so there could be minor errors.
MAIN:

testButton1:
                jb P3.3,testButton2
                call program0  ;Run this segment if button pressed
                sjmp testButton1  ;done

testButton2:
                jb P3.4,default
                call program2  ;Run this segment if button pressed
                sjmp testButton1

default:  
                call program1  ;Run this segment if no buttons pressed
                sjmp testButton1


Your "DELAY: " code gives very little delay and tests the buttons
what does it do ?




[ Edited Wed Feb 18 2015, 01:30 AM ]
 sankalp_s like this.
Wed Feb 18 2015, 06:51 AM
#29
Thank you Dear experimenteruk sir.. its working after completion of all design of running program. what can we do for instant change of program..please suggest.

"Your "DELAY: " code gives very little delay and tests the buttons
what does it do ?"...... actually sir i'm using 555 timer for delay..

sir any alternate option for making mirror effect actually the code i'm using for mirroring is taking much space.


[ Edited Wed Feb 18 2015, 03:27 PM ]
Wed Feb 18 2015, 09:23 PM
#30


sir any alternate option for making mirror effect actually the code i'm using for mirroring is taking much space.

sankalp_s


What is mirroring ?


Thank you Dear experimenteruk sir.. its working after completion of all design of running program. what can we do for instant change of program..please suggest.

sankalp_s


This code should do it.
It makes the "DELAY: " routine return to the main loop.
Remember it works here because "DELAY: " is always
3 calls away from the main loop.
This method is not usually a safe method.
popByte  equ 0x40  ;dump stack here ; (add to top of program)

DELAY: 
JNB P3.2,FULL
JB P3.1,$
JNB P3.2,FULL
JNB P3.1,$
JNB P3.2,FULL
RET
;************************************************* ***********************************************
; ROUTINE FOR BREAK
;************************************************* ***********************************************

FULL: MOV P1,#11000000B
JNB P3.2,$
MOV P1,#11111111B
pop popByte ;dump return address
pop popByte ;dump return address
pop popByte ;dump return address
pop popByte ;dump return address
RET



[ Edited Wed Feb 18 2015, 09:26 PM ]

Get Social

Information

Powered by e107 Forum System

Conversation

Mon Jun 12 2017, 07:36 PM
madhusoodanan
how to receive string using 8051
ajay_bhargav
Thu Jun 08 2017, 05:48 PM
@Vinoth post in forum.
Wed Jun 07 2017, 06:40 AM
vinothkannan
how interface eprom in this code
Thu May 25 2017, 05:25 AM
Monir Hossain
Can i change the 7-Segment are common pin ? And how to?
Mon May 08 2017, 12:45 PM
ivan muvunyi
please can you send me wiring diagram for automatic control of 3 phase induction motor for production of maize flour
Wed May 03 2017, 08:39 PM
imran qureshi
hello friend
Sun Apr 30 2017, 05:49 AM
Lijin G Varghese
Can u send me the circuit diagram for Program to interface GSM Module with 8051 microcontroller (AT89C51) using PC and LCD
Fri Apr 28 2017, 03:47 PM
SANDEEP T S
I need pcb wizard 3.5 version kindly send valid link of yours
ExperimenterUK
Mon Apr 17 2017, 11:56 PM
Sorry..We had a problem with registration.Confirmation emails were not sent.Please re-register
Thu Apr 13 2017, 07:29 PM
Piyush Aughad
I want circuit & program for radar detection using Microcontroller 8051

Downloads

Comments

richard1976
Sat Jun 24 2017, 05:48 PM
DruvaN
Wed Jun 21 2017, 11:44 AM
lalala
Tue Jun 20 2017, 11:05 PM
Siddh@
Tue Jun 20 2017, 07:47 AM
firdaus0hsem
Sat Jun 17 2017, 04:53 PM
amir9297
Fri Jun 16 2017, 05:44 AM
madhusoodhanan
Mon Jun 12 2017, 07:31 PM
Aminookano
Sun Jun 11 2017, 05:50 AM

Online

Guests: 68, Members: 0 ...

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

Members: 37847
Newest member: richard1976
Forum Activity
ExperimenterUK Avatar
Posted By ExperimenterUK
Mon Jun 26 2017, 08:42 PM
I have attached a demonstration file.It will echo ...
richard1976 Avatar
Posted By richard1976
Sat Jun 24 2017, 08:47 PM
Hi can you tell me how to send and recieve usart d...
ExperimenterUK Avatar
Posted By ExperimenterUK
Sat Jun 24 2017, 08:24 PM
HiUnfortunately there is too much code here to wor...
richard1976 Avatar
Posted By richard1976
Sat Jun 24 2017, 06:01 PM
hi i have written this programme and can send data...
ExperimenterUK Avatar
Posted By ExperimenterUK
Fri Jun 23 2017, 08:19 PM
>Should I need to check PWR_VLD bits every time on...
ExperimenterUK Avatar
Posted By ExperimenterUK
Fri Jun 23 2017, 07:42 PM
I would say yes, but data transfer will be slower ...
Utsavi Avatar
Posted By Utsavi
Thu Jun 22 2017, 12:14 PM
Hello ExperimenterUK, Thanks for your support. Fro...
DruvaN Avatar
Posted By DruvaN
Wed Jun 21 2017, 11:51 AM
Is it possible to Use 8051 bit-banging method to p...
ExperimenterUK Avatar
Posted By ExperimenterUK
Tue Jun 20 2017, 06:27 PM
You could start by looking at this tutorial on ke...
firdaus0hsem Avatar
Posted By firdaus0hsem
Sat Jun 17 2017, 04:58 PM
I have an issue regarding how to use 4x3 keypad to...