Skip to main content
Q. To provide preference to the pedestrians, for the system in question 3, push button as
shown below is also placed at the two sides of the road. If the push button is pressed 50
times the green light for pedestrians is turned on immediately for 4 seconds, and then the
operation continues as before. Assume D0 pin of input port 35H to be connected to the
push button and then to the microprocessor. Modify the program of question 3 to
accommodate the changes. 

Solution:

Main Program

START: MVI B, 00H ; allocation for count
LABEL0: MVI A, 01H ; turn the green light on
OUT 66H
MVI C, 08h ; time required to turn on green light
LABEL1: CALL DELAY1
DCR C
JNZ LABEL1
MVI A, 80H ; turn the red light on
OUT 66H
MVI C, 64H ; time required to turn on red light
LABEL2: CALL DELAY2
DCR C
JNZ LABEL2
JMP START ; repeat the task

Delay Subroutine1

DELAY1: LXI H, F69AH ; count for 0.5 second delay
LABEL3: DCX H
MOV A, L
ORA H
JNZ LABEL3
RET

Delay Subroutine2

DELAY2: LXI H, 3152H ; count for 0.1 second delay
LABEL4: DCX H
MOV A, L
ORA H
JNZ LABEL4
IN 35H ; check if push button pressed
ANI 01H
JZ END ; if no return
INR B ; if yes count the signal
MOV A, B
CPI 32H ; check if count is equal to 50
JZ LABEL0 ; if yes turn on green light
END: RET ; else return

Comments

Popular posts from this blog

2017//2(b)//Engineering Eco//KU

A loan of $10,000 is to be repaid over a period of eight years. During the first four years, exactly half of the loan principal is to be repaid (along with accumulated compound interest) by a uniform series of payments of A1 dollar per year. The other half of the loan principal is to be repaid over four years, with accumulated interest, by a uniform series of payments of A2 dollar per year, If i=9% per year, what are A1 and A2?

Testing servo motor with arduino

  Testing servo motor with arduino  Components Needed: Arduino board (e.g., Arduino Uno) Servo motor Jumper wires Steps for Connection: Servo Motor Pins: Ground (GND): Usually the brown or black wire of the servo motor. Power (VCC): Usually the red wire of the servo motor. Control Signal (PWM): Usually the yellow, orange, or white wire of the servo motor. Connecting to Arduino: Ground (GND): Connect the ground wire of the servo motor to one of the GND pins on the Arduino. Power (VCC): Connect the power wire of the servo motor to the 5V pin on the Arduino. Control Signal (PWM): Connect the control signal wire of the servo motor to digital pin 9 on the Arduino, as specified in the code by myservo.attach(9); Connection Arduino  Servo motor  VCC/ 5V Red wire  GND Black Wire  9  Yellow wire Explanation: Ground (GND): This connection ensures that the servo motor and the Arduino share a common ground, which is necessary for proper operation. Power (VCC): The servo motor needs a power supply t

CanSat

  CanSat is a type of small satellite that is designed to fit inside a soda can. These miniature satellites are used for a variety of purposes, including educational projects, scientific research, and commercial applications. The CanSat concept was first developed in 1998 by Bob Twiggs, a professor at Stanford University, and Jordi Puig-Suari, a professor at California Polytechnic State University. They wanted to create a low-cost, hands-on way for students to learn about satellite technology and space science. Since then, CanSats have become a popular platform for educational projects around the world. They are often used in STEM (Science, Technology, Engineering, and Mathematics) education programs, where students are tasked with designing, building, and launching their own CanSats. A typical CanSat consists of a soda can-sized container that houses a variety of sensors, such as temperature, humidity, pressure, and acceleration sensors. It also includes a small computer, a radio tran