Microcontroller Articles

Page 28 of 33

8085 Program to compute LCM

Vrundesha Joshi
Vrundesha Joshi
Updated on 30-Jul-2019 3K+ Views

Now let us see a program of Intel 8085 Microprocessor. This program will find the LCM of two8-bit numbers.Problem StatementWrite 8085 Assembly language program to find LCM of two 8-bit numbers stored at location8000H and 8001HDiscussionIn this program we are reading the data from 8000H and 8001H. By loading the number, we are storing it at C register, and clear the B register. The second number is loaded into Accumulator. Set DE as the 2's complement of BCregister. This DE is used to subtract BC from HL pair.The method is like this:let us say the numbers are 25 and 15. ...

Read More

8085 Program to multiply two 2-digit BCD numbers

Anvi Jain
Anvi Jain
Updated on 30-Jul-2019 4K+ Views

Now let us see a program of Intel 8085 Microprocessor. This program will find the multiplication result of two BCD numbers.Problem StatementWrite 8085 Assembly language program to find two BCD number multiplication. The numbers are stored at location 8000H and 8001H.DiscussionIn this program the data are taken from 8000H and 8001H. The result is stored at location 8050H and 8051H. As we know that 8085 has no multiply instruction so we have to use repetitive addition method. In this process after each addition we are adjusting the accumulator value to get decimal equivalent. When carry is present, we are incrementing the ...

Read More

8085 program to find maximum and minimum of 10 numbers

Rishi Rathor
Rishi Rathor
Updated on 30-Jul-2019 2K+ Views

In this program we will see how to find the maximum and minimum number in a block data.Problem StatementWrite 8085 Assembly language program to find the maximum and minimum number in a block often 8-bit numbers.DiscussionIn this program we are taking the first number of the block into register D and E. The D will store the minimum number, and E will store maximum number. In each iteration we will check whether the number is smaller than D or not, if it is smaller, then update D with the new number, and then compare it again with E to check ...

Read More

8085 Block movement without overlap

Chandu yadav
Chandu yadav
Updated on 30-Jul-2019 1K+ Views

In this program, we will see how to move blocks of data from one place to another.Problem StatementWrite 8085 Assembly language program to move a data block. The blocks are assumed to be non-overlapping. The block size is given, the block is starting from X and we have to move it to the location Y.DiscussionThe non-overlapping block movement is relatively an easy task. Here the block is starting at position X, we have to move it to position Y. The location Y is far away from X. So Y > X + block size.In this program, the data are stored ...

Read More

Need for DMA data transfer

Vrundesha Joshi
Vrundesha Joshi
Updated on 30-Jul-2019 2K+ Views

The microcomputer system basically consists of three blocksThe microprocessorThe memories of microprocessor like EPROM and RAM andThe I/O ports by which they are connected.The possible data transfers are indicated below.Between the memory and microprocessor data transfer occurs by using the LDA and STA instructions.Between microprocessor and I/O ports also data transfer occurs by the help of two instructions IN and OUT.Through DMA data transfer, data is transferred between the Input Output ports and the memory.If the data transfer which is used for reading from the memory location is 3456H and then writing to output port number is 50H which takes ...

Read More

Programming the 8257

Jennifer Nicholas
Jennifer Nicholas
Updated on 30-Jul-2019 428 Views

We know from the study of the description of 8257 that it consists of 40 pins and the condition when it works in Slave Mode and Master mode. From the microprocessor point of view, the I/O port is a chip which is used exclusively for DMA control application and is not used for interfacing I/O devices for the purpose of data transfer with the processor. This chip is only used to control the DMA data transfer for four I/O ports. For every I/O port there exists a corresponding DMA channel. This chip provides all the features which are needed for ...

Read More

Address registers of 8257

Anvi Jain
Anvi Jain
Updated on 30-Jul-2019 693 Views

Every DMA channel consists an address register and a count register. These registers are 16-bits wide in length. In each 16 bits there are four ARs marked as AR3-0. Apart from four CRs there are control and status registers also. They are separate 8-bit registers, but have the same address. Here the processor can only write in the control register but we can read in the status register. Fig. Programmer's view at a glance of Intel 8257.We can select any one of the above registers by the address of the four pins marked as A3-0 of 8257. The processor used here writes to ...

Read More

Count registers of 8257

Vrundesha Joshi
Vrundesha Joshi
Updated on 30-Jul-2019 723 Views

We have four Counters, ranging from CR3-0, which consists of 16 bits each. At the time when the CR becomes access to the processor which is 16-bits wide, the Least Significant and the Most Significant Byte of the register are accessed in an alternate manner, which starts with the Least Significant Byte. Also, the M/L* flip-flop helps here. The information about the number of bytes which are to be transferred using DMA are contained in the Counter Registers, which is decremented by 1 for every byte in the DMA data transfer. When the Counter Register becomes 0, the last DMA ...

Read More

Control register of 8257

Rishi Rathor
Rishi Rathor
Updated on 30-Jul-2019 3K+ Views

The processor, in active state writes to the Control register of 8257 to configure its working purpose. To find out the status of 8257, the processor reads status register of the processor. The control register is of length 8-bits which is only read by the processor but not read. It is only selected when CS* is 0, A3-0 is 1000, and IOW* is 0.Intel calls the control register 8257 normally the mode set register by as it sets the mode of operation of 8257.AULD1 = Enable auto load0 = Disable auto loadTCS1 = Stop DMA transfer if TC reached0 = ...

Read More

Status register of 8257

Jennifer Nicholas
Jennifer Nicholas
Updated on 30-Jul-2019 877 Views

The status register is of length 8-bits wide. The processor can only read but not write and it is only selected when CS* is 0, A3-0 is 1000, and IOR* is 0.About the present state of 8257 the information about the status is provided. The five blocks are important others are marked 0 since they are not in use.UD1 = Update in progress0 = Update not in progressTCn1 = TC reached for Channel n (n = 0–3)0 = TC not yet reached for Channel nFig: Interpretation of the contents of the status registerThe read operation of the status register is ...

Read More
Showing 271–280 of 321 articles
« Prev 1 26 27 28 29 30 33 Next »
Advertisements