Discussion in "Project Help" started by    ppoonamk    Apr 28, 2011.
Thu Apr 28 2011, 02:56 AM
#1
http://img715.imageshack.us/i/cktn.jpg/
This is the circuit diagram of the project im working on. I have a few queries.
1) My Leds connected to P0.0 and P0.1 are not glowing. Is the resistance value too high?
2) The lcd backlight glows but no characters are displayed.
3) Are the 2 reset pins required if you are not using interrupts in your program?
This is my code.. Are there any errors?


busy equ p1.7
rs equ p3.5
rw equ p3.4
en equ p3.3
bzr equ p0.2
ledf equ p0.0
ledb equ p0.1

org 400h

show0: db 'Welcome To All','0'
show1: db 'Current Station','0'
show2: db 'Next Station','0'
show3: db 'Zurich','0'
show4: db 'Milan','0'
Show5: db 'Paris','0'

org 0000h
ajmp main

org 0003h
test: mov c,p3.2
jnc halt
setb bzr
reti
halt:
clr bzr ;till zero blow on the bzr
ajmp test

main:
mov ie,#00h
setb ea
setb ex0
here:
mov p2,#00h
acall ini
mov dptr,#show0
acall read
clr ledf ;p1.0
acall delay

mov a,#01h
acall command; Now make memory clear cursor home
mov dptr,#show1
acall read
setb ex0
mov a,#0c0h
acall command
mov dptr,#show3
acall read
acall delay ;Stopage1 time 3 sec rookee
acall delay
clr bzr
acall delay

mov a,#01h
acall command
mov dptr,#show2
acall read
mov a,#0c0h
acall command
mov dptr,#show4
acall read
setb bzr
acall delay10

mov a,#01h
acall command
mov dptr,#show1
acall read
mov a,#0c0h
acall command
mov dptr,#show4
acall read
acall delay ;Stopage2 time 3 sec shsar
acall delay
clr bzr
acall delay

mov a,#01h
acall command
mov dptr,#show2 ;display ne
acall read
mov a,#0c0h
acall command
mov dptr,#show5
acall read
setb bzr


mov a,#01h
acall command
mov dptr,#show1
acall read
mov a,#0c0h
acall command
mov dptr,#show5
acall read

acall delay ;Stopage2 time 3 sec Meerut
acall delay
clr bzr
acall delay

setb ledf ; p1.0 ;off led at p1.0 for forward journey
clr ledb ; p1.1 ; 0n Led for back ward journey

mov a,#01h
acall command
mov dptr,#show2 ;display ne shar
acall read
mov a,#0c0h
acall command
mov dptr,#show4
acall read
setb bzr

mov a,#01h
acall command
mov dptr,#show1
acall read
mov a,#0c0h
acall command
mov dptr,#show4
acall read
acall delay ;Stopage2 time 3 sec shsar
acall delay
clr bzr
acall delay

mov a,#01h
acall command
mov dptr,#show2 ;display ne roor
acall read
mov a,#0c0h
acall command
mov dptr,#show3
acall read
setb bzr

mov a,#01h
acall command
mov dptr,#show1
acall read
mov a,#0c0h
acall command
mov dptr,#show3
acall read
setb ledb ;p1.1
ljmp here
;routine for stepper motor
; Delay Routine ;one sec delay
delay:
push acc
push 00h
push 01h
push p0
push p1
mov r0,#0eh
loopr:
mov a,#0ffh
loopb:
mov b,#0ffh
loopa: djnz b,loopa
djnz 0e0h,loopb
djnz r0,loopr
pop p1
pop p0
pop 01h
pop 00h
pop acc
ret


;=============== Routine to read data from prog mem

read:
nex: clr a
movc a,@a+dptr
cjne a,#'0',aga
sjmp down
aga: acall display
inc dptr
sjmp next
down:
ret ;LCD strobe subroutines

ini: mov a,#38h
acall command
mov a,#38h
acall command
mov a,#38h
acall command
mov a,#38h
acall command
mov a,#0eh
acall command
mov a,#06h
acall command
mov a,#01h
acall command
mov a,#80h
acall command
ret

command:
acall ready
mov p1,a
clr rs
clr rw
setb en
clr en
ret

display:
acall ready
mov p1,a
setb rs
clr rw
setb en
clr en
ret

ready:
clr en
mov p1,#0ffh
clr rs
setb rw
wait: clr en
setb en
jb busy,wait
clr en
Ret

End
Thu Apr 28 2011, 08:09 AM
#2
Asm Code is diffcult to understand, Go through step by step divide your code to do individual task first then try to combine all.
In LCD, do you see boxes in them, r just blank, adjust the contrast pot so that you can see the boxes and the text.
If there is boxes means LCD hasn't been initialized properly.
Thu Apr 28 2011, 03:15 PM
#3

1) My Leds connected to P0.0 and P0.1 are not glowing. Is the resistance value too high?

ppoonamk


yes resistance should be around 680 ohms.

2) The lcd backlight glows but no characters are displayed.

ppoonamk


As kiran suggested. you can follow LCD tutorial if facing problem.

3) Are the 2 reset pins required if you are not using interrupts in your program?

ppoonamk


what has interrupt to do with the reset pin? and there is only 1 reset on controller not 2. Moreover your reset circuit is wrong. Please correct it.
You need a capacitor (10uF) between VCC and RST; and a resistor (10K) between RST and GND.

This is my code.. Are there any errors?

ppoonamk


You have to assemble your code to find out errors. logical errors can only be corrected once you run the code on hardware to see how its behaving.

Do the changes in hardware as suggested and try again.
Thu Apr 28 2011, 11:12 PM
#4
Thanks for your response.. will get back to after these changes

Get Social

Information

Powered by e107 Forum System

Conversation

Sat May 28 2016, 04:34 PM
kibrom berhe
c code for locker security system based on rfid and gsm
ExperimenterUK
Wed May 25 2016, 05:05 AM
@ Ramanjaneyulu, post in forum,explain your problem
Mon May 23 2016, 11:34 PM
Ramanjaneyulu
Hi, I Am using at89c4051 for my application, I want 5u sec dely.. Up to 1milli sec iam able to producing delay. Beyond the 1milli second, I am unable to produce the acceurate dely. Plz any one help me
Sat May 21 2016, 09:51 PM
A K
i want to mak an auto dialer using gsm and atmega 16. please helpe me how to write a code to auto dial a number saved in sim
Sat May 21 2016, 10:42 AM
Alec
Hi im trying to program my 89s51 with a usbasp so any ideas on the circuit?
Wed May 18 2016, 10:08 AM
Tashu joshi
anyone know how to develop
Wed May 18 2016, 10:07 AM
Tashu joshi
i'm working for resporatry system using 8051,
Wed May 18 2016, 10:06 AM
Tashu joshi
i'm developing a respiratory system using Arduino
Fri May 13 2016, 11:03 AM
MEGHANA
i need c code for counting frequency of two sensors and compare these frequencies and it has to give high/ low signal after comparision
ExperimenterUK
Tue May 10 2016, 05:02 PM
@Suren ..create a thread in the 8051 Discussion Forum to discuss your problem

Downloads

Comments

zaft93
Sun May 15 2016, 01:52 AM
CELEBI
Thu May 12 2016, 08:28 AM
Suro1996
Wed May 11 2016, 06:07 PM
yigithan
Sat May 07 2016, 09:09 PM
jaque
Fri May 06 2016, 07:51 PM
afzal42
Wed May 04 2016, 11:16 AM
pd
Sun May 01 2016, 01:35 AM
uk2308
Fri Apr 29 2016, 12:27 PM

Online

Guests: 26, Members: 0 ...

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

Members: 37765
Newest member: zaft93
Forum Activity
ExperimenterUK Avatar
Posted By ExperimenterUK
Sun May 15 2016, 10:58 PM
zaft93 Avatar
Posted By zaft93
Sun May 15 2016, 01:55 AM
ExperimenterUK Avatar
Posted By ExperimenterUK
Fri May 13 2016, 07:59 PM
If you want only one relay to be on at a time the ...
CELEBI Avatar
Posted By CELEBI
Fri May 13 2016, 06:16 AM
Yes. It must be as you said. It must be 1.5 second...
ExperimenterUK Avatar
Posted By ExperimenterUK
Thu May 12 2016, 08:35 PM
Here is one way.If you have the Keil compiler you ...
ExperimenterUK Avatar
Posted By ExperimenterUK
Thu May 12 2016, 05:20 PM
Sorry I don't understand what you want.Is that 1.5...
CELEBI Avatar
Posted By CELEBI
Thu May 12 2016, 08:53 AM
Hello Guys, I want to make a Project with 89s51 bu...
ExperimenterUK Avatar
Posted By ExperimenterUK
Wed May 11 2016, 09:28 PM
No this is all I've got, the algorithm I think is ...
Suro1996 Avatar
Posted By Suro1996
Wed May 11 2016, 09:27 PM
Is this all the code you have ?As it is, it will n...
Suro1996 Avatar
Posted By Suro1996
Wed May 11 2016, 07:31 PM
Hello, I am new to assembly programming and I am h...