You are on page 1of 22

DEPARTMENT OF ELECTRONICS & COMM. ENGG.

B.I.T. MESRA, RANCHI

EC5101 MICROPROCESSOR AND INTERFACING

Module – 1:

Revision of logic circuits with emphasis on control lines, SAP concepts with stress on timing
diagrams, Microinstructions, Microprogramming, Variable machine cycle, Architecture of 8085
Processor , Functions of all signals, Bus concepts, Multiplexed and De-multiplexed Bus,
Minimum system.

Text Books:

1. “Digital Computer Electronics”, 2/e. by A. P. Malvino.
2. “Microprocessor Architecture, Programming and Applications with 8085” by R. S.
Gaonkar.

Module – 2:

Instruction set, Addressing modes, Stack operation, Timing diagrams, Programming examples
like Time delay, Looping, Sorting, Code conversions like BCD to Binary, Binary to BCD, HEX to
ASCII, ASCII to HEX, BCD Arithmetic etc.

Text Books:

1. “Digital Computer Electronics”, 2/e. by A. P. Malvino.
2. “Microprocessor Architecture, Programming and Applications with 8085” by R. S.
Gaonkar.

Module – 3:

8085 based Microcomputer system, Memory Organization, Memory Interfacing, Memory
Mapped I/O, I/O Mapped I/O, Interrupts, Hardware and Software Interrupts, Interrupt
instructions, Programmed I/O, Interrupt driven I/O, DMA.

Text Books:

1. “Digital Computer Electronics”, 2/e. by A. P. Malvino.
2. “Microprocessor Architecture, Programming and Applications with 8085” by R. S.
Gaonkar.

Module – 4:

Architecture of 8255 I/O peripheral chip, Modes of operation, Hand shake mode operation, BSR
mode, ADC 0801 and ADC 0808 Interfacing with microprocessor, Analogue multiplexed ADC,
DAC 0808 specifications, DAC Interfacing, Programming examples for Generation of square
wave, positive and negatives ramps, triangular and sine waves, Sample and Hold circuit, LF
398 and its applications in Data Acquisition.

Text Books:

1. “Digital Computer Electronics”, 2/e. by A. P. Malvino.
2. “Microprocessor Architecture, Programming and Applications with 8085”. by R. S.
Gaonkar.
3. “Microprocessor and Interfacing, Programming of Hardware” by Douglas Hall.
4. “Microprocessor and Peripherals” by S. P. Chowdhury and Sunetra Chowdhury.

Module – 5:

8253 timer, Modes of operation, Applications, 8279 Keyboard/Display Interface, Different modes
of operation, Interfacing, Programming examples, 8237 DMA Controller.

Text Books:

1. “Microprocessor and Interfacing, Programming of Hardware” by Douglas Hall.
2. “Microprocessor and Peripherals” by S. P. Chowdhury and Sunetra Chowdhury.
3. “The INTEL 8086/8088 Microprocessor, Architecture, Programming, Design and
Interfacing”, 3/e. by Bhupendra Singh Chhabra.

Module – 6:

Evolution of Microprocessors, Introduction (Architecture and Instruction set only) of 8086 and
8088, Evolutionary steps and Additional features of 80186, 80286, 80386, 80486 and Pentium
Processors, Concept of CISC and RISC processors.

Text Books:

1. “Microprocessor, Microcomputer and their Applications”, 2/e. by A, K. Mukhopadhyay.
2. “Advanced Microprocessor” by Y. Rajasree.
3. “The INTEL 8086/8088 Microprocessor, Architecture, Programming, Design and
Interfacing”, 3/e. by Bhupendra Singh Chhabra.

Module - 7 :

Introduction to Microcontrollers, 8051 Microcontroller, Memory Organization, Programming
techniques, Addressing modes, Instruction set, Interrupt structure, Port structure, Different
modes of operation, Programming examples.

Text Books:

1. “Advanced Microprocessors and Microcontrollers” by S. K. Venkata Ram.
2. “Microprocessor, Microcomputer and their Applications”, 2/e. by A, K. Mukhopadhyay.
3. “Advanced Microprocessors” by Y. Rajasree.
4. “Microprocessor and Peripherals” by S. P. Chowdhury and Sunetra Chowdhury.

Explain with a neat diagram. W and Z registers in 8085? 21. 14. 17. With a neat sketch. Explain clearly the difference between Dynamic RAM. What is meant by a minimum system? 9. Which are the control signals available in 8085? What are their functions? 13. PROM and EPROM. TUTORIAL EC5101 MICROPROCESSOR AND INTERFACING Module – 1: 1. What is meant by microprogramming? 5. ROM. What is meant by variable machines cycle? How is it achieved? 7. Static RAM. 15. What is meant by hardware control matrix? Mention a suitable alternative for that. 11. the architecture of 8085. and sketch the connection details of these components. 6. Name three components that must be connected to the isolated address and data buses of 8085. 3. 22. What is the function of READY pin? Explain what is meant by WAIT cycles. What is the function of Program Counter in 8085? Why should it be a 16-bit binary counter? 20. What is the function of TMP register. What is meant by folded memory? How it could be avoided in a reliable microprocessor system? 10. 8. explain the function of an adder-subtracter unit. With the help of a diagram. Explain the RESET procedure of an 8085. explain how the address and data buses are demultiplexed out in an 8085 based microprocessor system. Explain the function of various flags available in 8085. 19. Which are the status signals available in 8085? What are their functions? Which status do they reflect? 12. What is the difference between macroinstructions and microinstructions? 4. What are the advancements made in SAP2 over SAP1? 2. What is the function of ALE pin in 8085? 18. What is meant by HOLD state in 8085? . Why ROM is always mapped to lower region of a memory map in 8085? 16.

Explain the following instructions. 5. Explain the DMA process in 8085. 11. 24. What are the different addressing modes available in 8085? 2. it is necessary to use an ORA instruction after DCX reg. What are meant by conditional call instructions? Give examples. 18. and arrange them in descending order in location 0C41H. Why 8257 chips can perform I/O operations faster than 8085? 25. What is the difference between Synchronous and Asynchronous communication? Module – 2: 1. LHLD. Explain the various steps involved in execution of PUSH and POP instructions. What is the difference between a JMP instruction and a CALL instruction? 8. 14. What is meant by STACK? Where it is used in 8085? 13. LDAX 10. In a time delay program.23. LXI. 12. Explain the functions of all the pins in 8085. XCHG. What is the method of performing BCD subtraction in 8085? 15. How is a CMP instruction is used to compare two bytes in 8085? 4. Which instruction takes maximum number of ‘T’ states in 8085? How many ‘T’ states it takes? How many machine cycles it takes? 7. Write a program to choose only BCD numbers from a group of 12 bytes residing in locations starting from 0C20H. SHLD. Explain the various steps involved in executing a CALL instruction. STAX. What will be the status of A 8 – A 15 pins during the execution of IN and OUT instructions? 6. Why? 16. 17. Explain the functions of all instructions in 8085. . pair instruction. What does XTHL instruction do? 9. What is the difference between CMP and SUB instruction? 3. Keep the count (BCD) in 0C40H. using a register pair for count. Explain what a DAA instruction does in 8085. with suitable examples.

31. residing in locations starting from DATA and store the table in 14 locations starting from SQUARE. residing in locations starting from DATA. from a group of 12 nos. 21. 30. Write a program to count the number of consecutive odd numbers (count shall be in BCD) in a block of 24 nos. (The nth byte of 4th group shall be the largest of nth byte of 1st. residing in locations starting from DATA and keep the count in location COUNT. Write a program to count the number of times. Write a program to form the smallest 8-digit binary no. 3 groups of 12 bytes each are given in 3 locations starting from DATA1. are given at 0C20H and 0C21H. that identical nos. shall be stored in locations 0C22H and 0C23H. 05H. 29. 25. residing in locations starting from DATA and keep the count in location COUNT. even numbers appear as memory pairs (count shall be in BCD) in a block of 24 nos. and store it in 0C40H. 22. are grouped together in the same locations. into a binary numbers and multiply them. appear (count shall be in BCD) in a block of 24 nos. The product shall be stored in locations 0C24H and 0C25H. 01H. 28. are given in locations starting from OC20H. Write a program to convert two BCD nos. with largest of all groups and store it in locations starting from DATA4. Six unpacked BCD numbers are given at random in 0C20H. of times odd parity numbers appear as memory pairs. A block of memory residing in locations starting from DATA has 16 bytes consisting of 01H. 8 hexadecimal nos. 0FH. consecutive BCD nos. Write a program to count the no.(count shall be in BCD) in a block of 24 nos. 27. 12 nos. 32. Write a program to form the largest 6-digit number which can be formed by them and keep it in 0C40H. are given at random (6 are even and 6 are odd) in locations starting from 0C20H. BCD nos. residing in locations starting from DATA and keep the count in location COUNT. Write a program to select only even bytes from a group of 12 bytes residing in locations starting from 0C30H and arrange them in ascending order from 0C41H.19. residing in locations starting from DATA and keep the count in location COUNT. 23. Write a program to count the number of times. Write a program to count the no. residing in locations starting from DATA and keep the count in location COUNT. and 06H. Write a program to select only BCD nos. 26. Write a program to form a 4th group. Write a program to arrange them in such a way. 2nd and 3rd groups) 24. of times consecutive even parity numbers appear(count shall be in BCD) in a block of 24 nos. DATA2 and DATA3. . 20. and add them together and store the sum in 2 locations starting from SUM. Converted binary no. Write a program to form a square table for 7 BCD nos. Keep the count (BCD) in 0C40H. Write a program to arrange them alternatively first odd and next even in the same locations.

Write a program to flash the LEDs as shown below at an interval of 2 sec. A block of 16 bytes resides in locations starting from 0C60H. shall be in 0C23H. 0C24H and 0C25H. The block starts in 0C30H and ends with a carriage return 0DH. into BCD nos. X – Lighted LED. 41. 34. are given at 0C20H. The address of LEDs is 3000H 38. 35. Add all the odd nos. 40. 37. Converted nos. Write a program to sort the odd nos. Write a program to find ASCII for corresponding small letter and insert them alternatively in the same locations. A group of 16 bytes are residing in locations starting from DATA. The sum shall be in 0C26H and 0C27H. Write a program to arrange the first eight of them in ascending order and next eight of them in descending order in the same locations. residing in locations starting from NUM2 and keep the sum in 6 locations starting from SUM. Some ASCII letters are given in locations starting from 0C20H (total no. and add them. The difference shall be on 0C28H and 0C29H.33. The address of LEDs is 3000H 39. as shown below: 1st 4 locations with 0FH 2nd 4 locations with 0EH 3rd 4 locations with 0DH last 4 locations with 00H and repeat the same till all locations are fully filled. is 8). even nos. Write a program to add a 10-digit BCD no. 0 000 000 X 0 0000 X 00 000 X 0000 0 X 000000 000 X 0000 00000 X 00 0000000 X and so on. Write a program to estimate the size of the block and store the count in BCD in COUNT.). . 0C21H. Write a program of running lights as explained below (delay 1 sec. together and keep the respective sums starting from 0C80H. Nos. residing in locations starting from NUM1 with another 10-digit BCD no. 0 – Off LED 0000 XXXX 00000000 XXXX 000 00000000 0000 XXXX 0000 0000 and so on. and nos. divisible by 4 and store them in the same locations in that order. Write a program to convert three binary nos. A block starts at 0C20H and ends where 4 consecutive 00H are followed by FFH. 0C22H. 36. Write a program to store the address of the last but one non-blank character in a block in 0C20H. X – lighted LED 0 = Off LED. Also subtract 98 10 from the sum. and even nos. 42. Write a program to fill 64 10 locations with nos. together.

The string ends with a carriage return 0DH. Write a program to strip off the parity bit. A block starts at 0C20H and ends at 0C3FH. 48. A block starts at 0C20H ends at 0C3FH.. Write a program to find the respective Hex. Write a program to edit a string of ASCII characters by replacing all trailing zeros with blanks. light all the LEDs (3000H). light only alternate LEDs. 52. check whether they are odd or even parity and fill locations starting from 0C80H with either 01H or 02H as per the parity of the byte (if corresponding to each byte if it is even. If 1st character is 31H. 47. 53. CCH in consecutive locations) and store the count in BCD in 0C40H. and second an even parity no. thus odd and even parity alternatively (Assume 8 are even parity numbers and 8 are odd parity numbers). 45. and if it is odd. otherwise. Also insert a carriage return 0DH at the end.43. . An ASCII string exists in locations starting from 0C60H. It ends with carriage return. Write a program to find the respective ASCII code.g. The string begins in locations starting from 0C20H. Modify the count of characters in 0C20H accordingly. 46. Write a program to compare two strings of ASCII characters to see if they are exactly identical. if 1st character is 01H. 49. 44. Write a program to estimate the size of the block and store the count in BCD in COUNT. and fill them alternatively in the same locations (e. (Either ASCII ‘0’ or ASCII ‘1’) which are to be filled in locations starting from 0830H (LS Bit first). of memory pairs. 6 bytes are residing in locations starting from 0C60H. of characters is given in 0C20H. (Given 0 is 30H and blank is 20H). then 02H. Write a program to determine the no. 54. Before striping the bit. Both the strings ends with carriage return 0DH. the next location shall contain 01H). The string resides in locations starting from 0C20H.g. A block of 16 bytes resides in locations starting from 0C60H. the next location shall now contain 31H) and so on. (could be any byte from 00H to 0FH). of times CCH occurs as triplets (3 nos. where the consecutive bytes gets incremented by 1 and store the count in BCD in 0C40H. Write a program to add even parity to a string of 7-bit ASCII characters. Write a program to sort them in the same locations as per the following way: first an odd parity no. character and fill alternate locations with them. 50. to 16 ASCII characters. Write a program to convert a 16–bit binary number residing in 2 locations starting from 0C50H. A block starts at 0C20H and ends with 3 pairs of consecutive values of 00H and FFH. If strings are identical. 6 ASCII bytes are residing in locations starting from 0C80H. 51. Write a program to delete all the invalid characters. A supposed to be an ASCII string consists a few invalid characters in it. then 01H). The string ends with a carriage 0DH. The strings start in locations STR1 and STR2 respectively. (e. The string starts from 0C21H and the no. and update the string. Write a program to determine the no.

of ‘1’ bits in the 1st location and the bytes with maximum no. Write a program to check the bits of a 3-byte no. zero next and negative nos. Ten signed binary nos. and so on. 58. of ‘1’ bits in the last location. Disable the interrupt after the new block formation. of ‘1’ bits in them. If it is ‘1’ fill the location with FFH. Keep the count of each category in location starting from 0C40H. 56. and store in locations starting from 0C40H. When the interrupt 6.55. starting from MS bit. 59. last. 62. If the bit is 0. The ASCII string ends with a carriage return 0DH. first. There are 8 bytes residing in locations starting from 0C20H. Write a program to sort them in same location in such a way. A block of 10 bytes resides in locations starting from 0C20H. Write a program to sort them in the same location with the byte with minimum no. If the valid number of characters is less then 16 fill all trailing bits with ‘0’. 5 key is pressed. Strip off the sign bit. Two blocks of bytes exist in 0C20H and 0C40H. before adding. Write a program to multiply each byte by 4 and then convert it to BCD. 63. 00H Positive no. fill the locations starting from 0830H with 00H. Construct a binary word with 1st ASCII character MS bit and following characters as the proceeding bits. that the bytes with the same number of ‘1’ bits are brought in adjacent locations. Write a program to construct the word and store it in 2 locations 0C60H and 0C61H. stored in locations starting from 0C40H.) is residing in locations starting from 0C20H. Write a program to sort 16 signed binary bytes residing in locations starting from 0C40H in the same locations. There are 16 bytes residing in locations starting from 0C20H. Write a program to add all the positive nos. and other bytes in between depending on the no. Write a program to sort them in same locations in the following manner. . 57. 00H Positive no. Each block consists of 10 bytes and hence after 10 interrupts a new block shall exist in OC60H with larger bytes of the two blocks. together and all the negative numbers together separately. The largest byte could be only 30H. for each pressing the larger of 1st bytes of each block is to be written in location 0C60H.. A block of 12 bytes (6 positive nos. An ASCII string starts in location 0C20H and consists mostly of ASCII codes for either ‘0’ or ‘1’. Thus check all bits and fill all the 24 locations with appropriate 00H or FFH depending on the bit of the data. 60. Store the respective sums in locations 0C80H and 0C82H (each sum may take 2 byte spaces. reside in locations starting from 0C60H. and 6 negative nos. 00H Negative no. and result space for each processed byte shall be 2 bytes. If you find any character other than ASCII code for ‘0’ or ‘1’ just neglect it. positive nos. and then multiply it by 10. Keep the respective count of each (in BCD) in 3 locations starting from 0C50H. 61.

The nos. NUM2 and NUM3. Given three BCD nos. Y = m2 – n2. The dimension ‘a’ given in SQUARE. .’ in 3 locations NUM1. A square with side ‘a’ bits in length is to be mapped in a memory base area of 8 bytes wide and 16 bits high. and. 75. write program to convert both the nos. A BCD number ‘a’ is given in location BCD. The address of the last non-blank character shall be stored in two locations starting from LASTBLANK.) respectively. The algorithm is x x x -------. ‘a. Write a program to estimate the size of the block and keep the count in BCD in location COUNT. ’a’> ‘b’. Write a program to replace them with ASCII for corresponding capital letters. a + b . and the difference shall be stored in 3 locations BCD1. Write a program to count the number of times identical date comes in consecutive locations until a FFH is seen. 70. 67. 71. A string of ASCII codes for small alphabets reside in locations starting from 0C21H. The values of ‘m’ and ‘n’ are available at locations 0C20 and 0C21H (BCD nos. a +b +c +b. ‘c. A string of bytes exists between 0C20H and 0C60H.’ ‘b’. 69. a+ b +c. Write a program to divide a binary bytes ’x’ by 22/ 3 . 66. in the following pattern. a. The string ends with a carriage return. Write a program to achieve this. The count of bytes is given in location 0C20H.64. Calculate the count of each individual identical data and store them in locations starting from 0C20H.’b’ is given in location BCD1. Write a program to find out the address of the last non-blank character in a string. by making all the bits inside the square as ‘1’ bit. Write a program to subtract a 4-digit BCD number residing in 2 locations starting from 0C20H from another 6-digit BCD number residing in 3 locations starting from 0C30H and store the difference in 3 locations starting from 0C40H.The converted BCD nos. a. a+3b. The BCD no.a+5b … until the value exceeds 99 10 . 65. Given two single byte binary nos. a+ b. Write a program to calculate ‘y’ and store in 0C22H and 0C23H. Matrix A is of size 2x2 stored row wise from location 0820H and matrix B of size 2x2 is stored column wise from location 0830H. Write a program to subtract (B) from (A) and store the result in locations starting from 0840H. The matrix elements are BCD nos. in such way. ‘a’ and ‘b’ are given in 2 locations NUM1 and NUM2.= ------.. 74. and so on until the sum exceeds 99 10 . Write a program to fill memory locations starting from 0C20H. write a program to fill up locations starting from ARRAY. BCD2 and DIFF. 72. 68. to BCD and take the difference. a + b + c + b + c . which is residing in locations starting from STRING. The string starts where two consecutive 00H are found and ends where 2 consecutive FFH are found.----- 22/ 3 2 8 The ‘x ‘is given in location DATA and the answer shall be stored in QUOTIENT. 73.

n2 2 in 0823H. ‘m’ is in BCD and is available in location 0C20H. The value of ‘m’ is given at 0C20H The value of ‘n’ is given at 0C21H. Now add all these nos. m4 ……. For the roots to be equal. (n 1 – n 2 ) in 0826H. Write a program to convert only the valid Hex codes into binary.Stop generation of multiples of the number ‘m’. m2. The value of ‘m’ is at 0C20H The value of ‘n’ is at 0C21H The element is given at 0C22H.). The value of ‘a’. 78. and store the result in locations 0C21H and 0C22H. by a single byte binary number in location 0C22H and keep the quotient in 0C23H and the remainder in 0C24H. Write a program to delete the element at ‘nth’ position. Modify ‘m’ accordingly after insertion. fill location 0C23H with FFH. Write a program to store the multiples of a no. m3. (0 to F). The value of ‘m’ is available at location 0C20H. 83. (n 1 +n 2 ) in 0825H. n2 1 – n2 2 in 0824H. If roots are equal. and n 2 both BCD nos. Each value will have 2 bytes. Stop generation of the series. by another 6-byte binary number given in locations starting from 0C30H. and (n 1+ n 2 ) (n 1 – n 2 ) in 0827H 80. Modify ‘m’ accordingly after deletion. A set of 24 ASCII Hex codes of nos. when the value exceeds 9999 10 .76. (0 to F) and characters and a few invalid characters are stored from locations starting from 0C20H. Write a program to multiply a 4-digit BCD number given in 2 locations starting from 0C20H. otherwise an error code of 00H.mn from locations starting from 0C20H. (0-9) stored in locations 0820H and 0821H. 77. Keep the product in 4 locations starting from 0C40H. if this equation has got equal roots. 79. the condition b2 = 2ac has to be satisfied. Given two numbers n 1 . Write a program to store the values of m. An array of ‘m’ elements resides in locations starting from 0C23H. y = ax2 + bx + c. Write a program to divide a double byte number given in locations starting from 0C20H. 85. Add then the numbers in binary and store the result in locations 0840H and 0841H. write a program to check the equation n2 1 – n2 2 = (n 1 +n 2 ) (n 1 – n 2 ) Store n2 1 in 0822H. when the value of multiple exceeds 99. 84. 82. ‘m’ from locations starting from 0C30H. Write a program to multiply a 6-byte binary number given in locations starting from 0C20H. . 81. Write a program to check. The value of ‘m’ is in the range (00 – 99). An array of ‘m’ elements resides in locations starting from 0C22H. The valid Hex codes are ASCII Hex codes of nos. Keep the product in 12 locations starting from 0C50H. Write a program to insert an element in the ‘nth’ position. by another 4-digit BCD number given in 2 locations starting from 0C30H. ‘b’ and ‘c’ are available in 3 locations starting from 0C20H (BCD nos.

9. Differentiate between hardware and software interrupts. What is meant masking and unmasking of interrupts? How is it done in 8085? 7. Keep the count of bytes divisible by 16 in 3000H. 5. Differentiate between vectored calls and vectored interrupts. then the same location is to be filled with an error code FFH. What is the difference between I/O mapped I/O and memory mapped I/O? 2. Write a program for the same. What is the advantage of Interrupt driven I/O operation over the Status check I/O? 8. Differentiate between Programmed I/O and Interrupt driven I/O operation. which are divisible by 16. An 8-bit data is serially input to SID pin of 8085. at an interval of time delay ‘DELAY’ between each bit.86. which is normally a 7-bit data with MS bit invalid. Write a program to separate the bytes. 10. Write a program for implementing the same. 88. What is meant by priority in interrupts? Write the order of interrupt priority in 8085. Write a program to exchange two blocks of data starting from memory locations 2401H and 2501H respectively. This ASCII code is to be converted to the respective character and to be stored in location CHARACTER. Write a program to multiply a signed binary byte residing in location NUM1 by another signed binary byte residing in location NUM2 and store the product in 2 locations staring from PRODUCT. 89. Length of each block is stored in memory locations 2400H and 2500H respectively. A block of memory starts with 0C00H. Why a JMP instruction is invariably written in the vectored location of an interrupt request? 12. 6. How do you interface 2K RAM with 8085? 3. 00H to 0FH. This byte is an ASCII code. How do you interface 4K RAM with 8085. 87. with starting address 2000 H? 4. Assume MS bit is input first and LS bit is input last. The block ends where three consecutive memories have FFH. Why an interrupt subroutine normally contain an EI instruction before RET instruction? 11. with MS bit first and LS bit last. Assume delay subroutine ‘DELAY’. Module – 3: 1. Write a subroutine to find the larger of the two integer numbers stored in BC and DE register pairs and store this value in HL register pair. If the byte received is anything other than any valid ASCII code for the nos. It is desired to serially output all these bytes through SOD pin. from them and store them in locations starting from 3001H. What are the two functions for which a ‘SIM’ instruction is used? What are the two functions for which a ‘RIM’ instruction is used? . 91. 90. A block of 32 bytes resides in memory locations starting from 2000H.

Once 1 hour is over. Write a program to utilize these pulses.5 interrupt. disable the interrupts.5 pin. 22. Third press again. 21H. Explain how data is serially input and output in 8085. Fourth pressing is ignored.5 key is pressed alternatively. 19. Explain how an ISR is executed. one starting from 0C10H and the other starting from 0C30H. For 1st pressing. of times RST 6. 23.13.5 (for second block) interrupts and to be stored in two memory locations. Write a program to input two blocks of data of 16 bytes each through port nos. Ensure the interrupts are disabled after receiving 16 bytes. 20H and 21H respectively using RST5. What is the function of 8259 PIC chip? 15. What is the function of MSE bit in 8085? What is the function of R 7. 21.The count shall be in BCD and be kept in location COUNT. Write a program to distinguish the pulse with larger pulse width.5 (for second block) interrupts and store them in two memory locations. minutes and hour in 3 memory locations SECOND. Assume interrupting pulses are sufficiently long enough to be recognized. one starting from 0C10H and the other starting from 0C30H. 14. 20H and 21H respectively using RST5. Write an ISR to input each byte. again multiply it by 10 and store them in locations starting from MULTIDATA. Write a program to count the no. of times the interrupt key is pressed alternatively (even pressings are to be counted and odd pressings to be ignored) . 20. count is to be incremented by 2. Assume the time taken for loading is 10 seconds. multiply by 8. count is to be made 2.5 (for first block) and RST6. Assume the time taken for loading is 10 seconds.5 (for first block) and RST6. convert it to BCD. The two blocks which are of size 16 bytes each. . MINUTE and HOUR respectively. at a rate of 200 requests/second. which will count up to 1 hour. 16. (The first byte of the new block should be the smaller of the first byte of the first block and the first byte of the second block and so on). Keep the count of seconds. and shall be stored in location COUNT (maximum count could only 98 10 ). to design a real time clock. Pulses of two different pulse widths are coming to SID pin of 8085 alternatively. Write a program to form a new block in 0C50H such that each byte of the new block is the smaller of the corresponding bytes in the two blocks. Write a program to count twice the no. Count shall be in BCD. Disable the interrupts after all the bytes in the blocks are inputted. The program shall include the interrupt subroutines also.5 bit? 17. 16 bytes (maximum value of each data can be only 15H) are to be inputted through port no. 18. Second pressing is ignored. Disable the interrupts after all the bytes in the blocks are inputted. if an interrupt is received at INTR pin. Using RST 7. Interrupt requests are arriving at RST 6. are to be inputted through port nos.

6. 2. Ten 3-byte data are stored in locations starting from 0C20H. it shall again start with 1st value. and if the PREV key is again pressed after 1st value. Explain various modes in which 8255 ports can be programmed. Explain the processes of input handshaking and output handshaking in 8255. Explain the architecture of 8255 peripheral chip. 15. 12. Explain the address generation method of 8255. Explain the principle of operation of Dual slope A/D Converter. 3. A push button called ‘NEXT’ is connected to RST 7. How do you interface an ADC chip with 8085 using any peripheral I/O chip? 16. Explain the principle of Successive approximation A/D Converter. Module – 4: 1. Explain the principle of Analogue multiplexed ADC. the address of LEDs is D register. Explain the principle of operation of Counter method of A/D Converter. If PREV key is pressed at any instant. Explain the functions of various pins of ADC 0801. What is the special feature of port A of 8255? Which are the handshake signals involved? 9. and just call the subroutine DISPLAY which will display the corresponding byte in that location in that particular LED pair.5 pin and another pushbutton called ‘PREV’ is connected to RST 6. Explain the principle of a R-2R network method D/A Converter. What is the status of ports when you reset an I/O chip? Why is it necessary? 10.5 interrupt pin.24. For display. starting with the 1st value. Distinguish between decoder logic and gate logic methods of address generation. the previous value. Write a program to achieve the above. it shall display. if the control register address is 83H. the address of LED are as follows: 03H 02H 01H You have to put the address of the byte to be displayed in HL register pair. 11. and when the 10th value is displayed. Whenever ‘NEXT’ key is pressed it shall display the 3 bytes in 6 LEDS. What are the functions of different pins of 8255? 4. 5. 14. 18. it shall display 10th value. Where exactly the Start of conversion signal and the End of conversion signal are connected to a counter method A/D Converter hardware? What is meant by conversion time? 17. 8. 13. What is meant by BSR mode in 8255? 7. What is the principle of Weighted Resistor network method of D/A Converter? .

e and f as shown below in pins PA 0 . PA 4 and PA 5 of 8255 respectively.19. PA 3 . PA 2 . Explain the functions of all the pins of DAC 0808 chip. Define the following terms with respect to a S/H chip: (a) Acquisition time. sec. sec. sec a 5v 0 1 m. sec 5v b 0 2 m. sec c 5v 0 2 m. 1 m. Write a program to generate waveforms a. (b) Aperture time (c) Droop rate 24. c. Why is the choice of capacitor in a sample and hold circuit is a trade off between Acquisition time and Droop Rate? 25. What is a Sample and Hold circuit? Why is it required in analogue interfacing? 22. (a) Absolute accuracy (b) Relative accuracy (c) Settling time (d) Resolution (e) Monotonicity 20. Define the following terms with respect to a DAC. Explain the functions of various pins of LF 398 S/H chip. 5v f 0 . sec 5v d 0 4 m. b. 5v e 0 4 m. PA 1 . 21. 23. d.

30. 15m. 28. 27. convert it to BCD and again multiply it by 10 and store in locations starting from “DATA” (32 locations are reserved for processed data of 16 bytes). The ports used are Port A and Port B of an 8255. The panel is required to have indication lights for forward and reverse direction and On/Off indication. switch it off for T seconds. Write a program to generate a wave of the form shown below. switch it off for T seconds.90 psi 011 open valve C also 3. Use 8255 as peripheral chip. 16 bytes (maximum value of each data can be only 30H) are to be inputted through port A of 8255. D and alarm signal respectively. +3v 10m. run it in the reverse direction for T seconds.26. 1 . Two blocks of data of 16 bytes each are to loaded into 32 memory locations starting from DATA1 and DATA2.30 psi 001 open valve A 2. inside a chamber as follows: Four valves are connected and action to be taken is as follows: 2. and give an alarm signal. .sec +2v 5m.5 interrupt.60 psi 010 open valve B also 2.sec -2. Write a program for control of a process. 1 . Assume the time taken for loading is 5 seconds. A time delay subroutine called DEL5 gives a time delay of 5 milliseconds. Write an ISR to input each byte then multiply it by 4. Use interrupt driven configuration for both inputting and outputting. Show relay configuration also. 3 . A digital pressure transducer gives the digital output of pressure readings. and then repeat the cycle. by RST 5.20 psi 100 open all valves. Use 8255 (Port B) as the peripheral chip. 2 bits to input status and port B 0 . such that each byte in the new block is the larger of the corresponding bytes in those two blocks.5v 31. Use 8255 port A 0 .sec. Using RST 7.5 and RST 6. The program shall include the interrupt subroutines also. Write a program to input 256 bytes of data from a keyboard connected to port A and output them parallely to a parallel printer connected to port B. (The first byte of new block shall be larger of the first byte in the first block and the first byte in the second block and so on). Set up port A of an 8255 as input mode and port B as output mode. 2 .sec 10m . Ensure the interrupts are disabled after receiving 16 bytes. and 4 bits for valves A. 29. Write a program to form a new block in DATA3. B.00 psi 000 all valves to be closed 2. Write a program for implementing the same. Sec 5m. C. both in mode 1.5 interrupts. which requires switching on a motor for T seconds.

5V.5). Assume a delay of 20 milliseconds between steps. An 8255 I/0 chip is used to input 256 bytes of data from a key beard connected to port A and to output them parallely that to a parallel printer connected to port B. while outputting is done by status check. Assume steps of 1o. The A/D converter is of 12-bit resolution. For driving in full step mode the pattern to be followed is as follows Step SW 4 SW 3 SW 2 SW 1 1 0 0 1 1 2 1 0 0 1 3 1 1 0 0 4 0 1 1 0 Anticlockwise 1 0 0 1 1 Clockwise Use PA 0 . PC 3 for ALE. a relay is to be energized. Use optimum memory. Write a program to convert an analogue data to a digital data and store it is location ‘DATA’. Write a program to drive a stepper motor in full step mode.5 interrupt. An external voltage varies from -5 to +5V. PC 1 and PC 2 . The cycle repeats itself. An 8-bit D/A connector is connected to port A of 8255 chip. Show the connection diagram also. If this voltage exceeds 3. PA 2 . clockwise for T1 steps and then T2 steps in anticlockwise direction and repeat the cycle. PC 4 is used for SOC and PB 7 is connected to EOC. 38. Write a program to implement the successive approximation of A/D conversion. The end of conversion of A/D converter is connected to RST 7. The lower 8-bits of data are connected to port A and upper 4 bits are connected to PB 0 to PB 3 pins. Assume a delay subroutine DEL20 for the delay. PA1. An 8255 I/O ports are connected to an A/D converter to acquire data for 8 analogue inputs. Write an 8085 program to acquire data for all the eight channels and store them in locations starting form DATA. 33. 36.32. The address of the A/D converter is FFH. 35. Write an 8085 program to generate a voltage waveform in which the voltage rises linearly from –3V to +3 volts and decreases to –3V at the same rate. Write a program to generate a waveform given by the equation 2π x 106 t Vi = 3 Sin ----------------------------- 26640. Write an 8085 by program to implement the same. Use any hardware you require for the purpose. Use A/D converter and 8255 as peripheral chip and write a program for implementing the same. Assume clock frequency of 1MHz for 8085. 39. The select lines are connected to PC 0 .15 The DAC used has a setting time of 150 nanoseconds. Both the ports are used in handshake mode and inputting in done by interrupt driven configuration (using RST 5. Show the connection diagram also. A/D converter is connected directly to an 8085 system. . to operate switches SW 1 to SW 4 34. Use 8255 (port B) as the peripheral chip. and PA 3 of 8255 chip for relay drives. 37.

Write a program to generate signal B from signal A using ADC and DAC. Show the connection diagram also. Use PC o for SOC and PC 7 for EOC.40. and detailed calculations for all values are not necessary. Explain the address generation method of 8253 chip. if timer 0 address is 80H. Explain the architecture of an 8279 key board/display interface chip. Show only 1 sample calculation.5v +B -1. . What are the functions of various pins of 8253 chip? 3. Assume steps of θ = 1o. Explain how an 8279 chip is used for interfacing keyboard and display. 2. +3. Explain the architecture of an 8253-timer chip. What is the effect of GATE on output waveforms in different modes of 8253 chip? 6. you can generate using 8253 timer.5 Mega Hz? 7. Use 8255 port A as the peripheral chip.5v +2 -1v +A -3v +2. For logic 1. the switch is closed and for logic 0. What are the differences between software triggered strobe and hardware triggered strobe modes in 8253 timer? 8. What is the maximum frequency and minimum frequency. The PA 0 of 8255 is connected to Logic of Sample and Hold chip LF308. Write a program to generate a waveform with equation V = 3 Sin θ. Module – 5: 1. Assume optimum memory usage. What is meant by Read on fly method in 8253 timer? 9. 4. if the clock frequency is 1. Use PC o for SOC and PC 7 for EOC. Use 8255 as peripheral chip. switch is opened. 10. What are the different modes available in 8253 chip? 5. 41. Write a program to take 150 samples of a signal at intervals of 10 m sec and store them in locations starting from DATA. Acquisition time is 4/µ sec.5v 42.

13. and the time interval is to be stored in location 3000H (seconds). using 8253 timer 1. 16. 24. Clock frequency is 2 MHz. Write a program to generate a burst of 200 pulses of 1 KHz frequency. Describe the various registers available in 8237 DMA controller. 19. 12. Use 8253 timer to interrupt the CPU at a rate of 500 times per second. The CLK IN frequency in 2 MHz. An 8253 timer is used. Explain the overview of initializing 8237 DMA controller. The pulse is received at PA 0 of 8255 and the gate 1 is connected to PB 0 of 8255. The timer is to be started then and real time shall be maintained until the process controller sends another pulse to RST 6. using 8253 timer. How do you program the clock in 8279? 17. 27. The timer can be stopped at this instant. Write a program to implement the same. which will count up to one hour. The process controller associated with the process will send out a pulse to RST 5. Explain the timing diagram of 8237 DMA transfer.5 input. indicating the process is over. Explain the four modes of operation of an 8237 DMA controller channel. The time taken for a chemical process (which is expected to take a few minutes) has to be assessed exactly. Gate of the timer is connected to PC o of an 8255. Explain the three transfer types possible in a DMA controller. Once an hour is reached the count as to be stopped. Explain the functions of various pins available in 8279 chip. 20. Draw the block diagram of 8237 DMA controller and explain function of each block. Gate of the timer is connected to PC o of an 8255. . 22. 23. 15. Gate of the timer is connected to PC o of an 8255. which is to be programmed to generate pulses at the rate of 300 pulses per second (clock frequency is 3 MHz) which can be connected to RST 7. 25.5 input as soon as the process starts. Distinguish among Scanned Key-Board. Write a program to design a clock. and 3001 H (minutes). 28. Explain with the help of a block diagram how a DMA controller operates in a microcomputer system. 26. Explain the address generation method of 8279 chip in SDK-85 kit.11. 21. What is the advantage of providing auto incrementing facility in 8279? 18. Explain the various modes available in 8279 for display and keyboard. 14.5 interrupt input. Scanned sensor and Strobed input modes of 8279. Distinguish between 2 -Key Lockout and N-Key Rollover modes in 8279. Write a program to measure the width of a pulse.

37. Write a program to measure the time taken for running a program. Write a program to generate continuous pulses at rate of 300 pulses/second. Show the connection diagram also. The switching is done by a relay drive.5 interrupts at an interval of 300 interrupts/sec. For display use subroutine 036EH.5 pin of 8085 at a rate of 300 pulses/second. Write a program for implementing. EOC is connected to STBA. CPU checks the BFA status to sense the end of conversion. and the pulse width is 500 microseconds. PC 6 is connected to gate of 8253. The pulse amplitude is 0 to 5V. 36. (Assume a delay subroutine DEL500 for that). PC 7 of 8255 is connected gate 2 of 8253. The INTRA (PC 3 ) is connected to RST 7.0174 MHz. Use timer 0 of 8253 and gate 0 is connected to PC 0 of 8255. Store the average conversion time in location ‘TIME’. Use 8255 as the peripheral chip and 8253 timer is to be used to generate interrupt requests at RST 7. An A/D converter output in to be inputted using 8255 port A and displayed in LEDS connected to port B. An event counter is needed for biscuits packing machine. Use PC 7 for SOC. 32. 8085 checks the status of IBFA (PC 5 ) to know the end of conversion. PC o of 8255 is connected to gate of the timer. which is to be interfaced using 8255 chip. the processor should be interrupted. . An 8253 timer is used to measure the average conversion time. and steps of 10 milliseconds.5 subroutine for 1. Use 8255 as the peripheral chip. Show the connection diagram also. Use 8253 timer for measurement of time. Use 8253 timer to generate interrupts at RST 7. The timer frequency to 8253 is 3. The pulse amplitude is –2 to +3V and the pulse width is 1 millisecond. After every 20 biscuits. PC o of 8255 is connected to gate 1 of timer. Port C bit PC 6 is connected to SOC of A/D converter and EOC of A/D converter is connected to STBA (PC 4 ) of 8255. Use PC 6 for start of conversion and EOC is connected STBA (PC 4 ). An A/D converter output is to be inputted using 8255 port A and displayed in LEDS connected to port B. display seconds in data LEDs. Lower 8 bits of data are connected to port A and upper 6 bits to PB 0 to PB 5 pins of an 8255 peripheral chip. 31. Write a program to acquire the digital data from all eight channels and store them in locations starting from ‘DATA’. to switch the biscuits to a new box. 35.5 pin of 8085. The timer in clock frequency of 8253 is 3. The pulse amplitude is – 2 Volts and the pulse width 1.5 milliseconds. The gate of timer is connected to PC0 of 8255. using 8253 timer 1.5 of 8085. Write a program to generate continuous pulses at a rate of 300 pulses/second. The select lines are connected to PC 0 . Write a program to implement the same and show the connection diagram also. Use port A in handshake mode. An AD converter is used to acquire data for 8 analogue inputs. 34. 33. Use timer 2 of 8253 in mode 0. Using latching on the fly method. PC 1 and PC 2 . the same. The AD converter is of 14-bit resolution. Write a program to implement the same.29.0174 MHz.5 m sec delay is available. Write a program to generate pulses at a rate 250 pulses/second. The time of conversion is to be measured using 8253 timer 2. Assume DEL 1. The clock frequency is 1 MHz. Assume that delay subroutine of DEL 1Ms is available which gives a delay of 1 millisecond. Show connection details. The pulse is to be generated at ‘SOD’ pin of 8085. PC 7 of 8255 is connected to GATE 1 of 8253. The gate of the timer is connected to PC 0 of an 8255. Write a program to measure the time of conversion. Use 8253 timer 2 to generate RST 7. Use port B in handshake mode. 30.

SECS 40 etc. 2. in the respective subroutines. The information is to be read form 2nd to 7th Sensor RAM. In a video game scheme. PC 0 and PC 1 of 8255 are connected to gate 0 and gate 1 of 8253 timer respectively. Write a program to display SECS 10. The 8253 is gated with PC 0 of 8255. Use RST 7. 45. 40. you are supposed to shoot at moving stars. SECS 30. If it is required to sustain the interrupt requests for 18 T states. Use 8279 chip. After a delay. 1st key 2nd key 3rd key 4th key Product. and write a program for displaying ‘GAME’ in address LEDs. it should end the game by displaying the final count in data LEDs and displaying ‘GAME’ in address LEDs. 42. The timer in clock frequency is 1 MHz. The number of successful collisions is to be displayed immediately in data LEDs for which subroutine 036EH could be used. If the second no received is larger than 1st no. it is sensed out by a sensor. 44. Clock frequency is 1 MHz. which gives a rising pulse and is connected to gate 2 of 8253. treat it as invalid key and wait for the next key. and when 1 minute is over. 15 seconds (assume delay routine for this) the whole game is restarted. Use 8279 chip. which is smaller. Write a program to display seconds in data LEDS. Draw and discuss the internal block diagram of 8086. Write a program to display the following “ALL OF US ARE HERE” and rotate it in address and data LEDS. by pressing a vector interrupt key TRAP. SECS 20. 41. Use 8279 chip. If necessary. Write a program to count the number of pulses received at SID pin of 8085 and display in data LEDS. Stars are released by outing a high at PA 0 of 8255. which is to be displayed in Address LEDs. They are released at a rate of one per 600 milliseconds. Repeat after SECS 90. Write a program to accept two BCD keys from SDK-85 keyboard and display their difference (1st no – 2nd no) in data LEDS. in the address and data LEDS. as shown in the following pattern and display the product of the two bytes in the Address LEDS. Write a program to accept 4 keys using 8279 chip. use logic gates but show them in the drawing. Use 8279 chip. In this case use PB bits of 8255. What do you mean by pipelined architecture? How is it implemented in 8086? . Shooting is effected by outing a high at PA 1 of 8255. showing relevant connections. In the event of a successful collision.5 interrupts at 40 m sec intervals. For display use subroutine 036E H. 39. to reset these flip flops. Implement the whole scheme. use RS flip-flops for the same. During the whole process. which can be manually operated. 43. Use 036EH subroutine for display (the maximum count could be 99). Module – 6: 1. a real time clock also runs. Use timer 0 of 8253 to generate interrupts. at an interval of 5 seconds between each display.38. Write a program to read six key information from Sensor RAM of 8279 chip.

80286. 4. 7. 9. 3. Module . 11. Compare and contrast between RISC and CISC architecture. Discuss the advantages and features of RISC Architecture. Draw the register organization of 8086 and explain typical applications of each register. Discuss the salient features of 8051 family of microcontrollers. Bring out the architectural and signal differences between 8086/8088. Discuss the salient features of Pentium Processors. What is the use of a bus controller in maximum mode? 12. Explain the concept of virtual memory. 6. What are the salient features of 80186. What are the different instruction types of 8086? 16. State and explain the different instruction formats of 8086/8088. Explain the concept of segmented memory? What are its advantages? 4.3. How does 8086 differentiate between an opcode and instruction data? 8. 17. What is the maximum memory addressing and I/O addressing capability of 8086? 10. Draw and discuss the internal architecture of 8051. Draw and discuss a typical maximum mode 8086 system. Explain the typical memory organization in an 8086 system. 20. 14. 5. How does 8051 differentiate between the external and internal program memory? . 80386 and 80486? 18. Explain the physical address generation in 8086. 2. 13. 15. Draw and discuss a typical minimum mode 8086 system. Draw and discuss flag register of 8086. 19. What do you mean by addressing modes? What are the different addressing modes supported by 8086? Explain each of them with suitable examples.7: 1. Discuss the advantages of microcontroller-based systems over microprocessor-based systems.

Explain the timer and counter control logic circuitry. Discuss the function of the following signals of 8051. What are the various internal interrupts available in the 8051? 16. Explain the 8051 interrupts and timer operation. Explain the function of the different timer modes of 8051. What is the total size of a program that can be stored on the 8051 internal ROM? 10. 15. calculate the time required to execute an ADD instruction. 11. 14. Explain the 8051 RAM structure. Interface an 8051 to external memory where the RAM size is 16K and the ROM size is 64K. Discuss the following special function registers of 8051. 12. (i) ALE / PROG (ii) EA / VPP (iii) PSEN (iv) RXD (v) TXD (vi) INT0 and INT1 (vii) T0 and T1 (viii) RD (ix) WR 6. An 8051 ADD instruction requires one machine cycle. How is the 8051 interrupt priority set? . What is the total size of the 8051 internal RAM? 8. 9. 7. (i) PCON (ii) TCON (iii) IE (iv) IP (v) TMOD (vi) PSW (vii) SCON.5. What is the maximum pulse rate that can be counted on pin T1 if the oscillator frequency is 5 MHz? 13. With a crystal resonant frequency of 12 MHz.