Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.
You cannot "make" the PIC16F877 have DMA features. That would have to be built into the IC by the manufacturer.
What do you want to use this feature for?
The PIC16F877 does, however, have a parallel slave port, which allows you a connection to another device, which can read/ write. It is not DMA, but perhaps you can use this feature. Basically, when the external device writes to the port you get an interrupt and in the ISR you move the data to the memory.
A similar thing can be done for reads out of the slave port.
maybe you could tell us what you are trying to accomplish...
There are a number of micros that have DMA in some form. The Z8s have it and a number of the Renesas ones do as well. I used a renesas 16C32 to dma from memory to an internal DAC for digital waveform synthesis. Worked ok.
I'm not sure if ANY of the 8 bit micros from Microchip have DMA