PIC32MZ and External Bus Interface (EBI)

For questions and comments on programming in general. And for any items that don't fit into the forums below.

Moderators: Benj, Mods

streammaster
Posts: 78
Joined: Mon Jul 31, 2017 11:14 am
Has thanked: 7 times
Been thanked: 13 times
Contact:

PIC32MZ and External Bus Interface (EBI)

Postby streammaster » Sat Mar 30, 2019 12:52 pm

Hi Guys,

I'm about to start my first project with PIC32 I use to do things with PIC18.

I need to get a connection to external parallel RAM (it is actually SDRAM but I will make the FPGA based controller interface to work around). The PIC will see FPGA connection as ordinary parallel SRAM.
I do not need this external RAM for program execution, but I need to move a large amount of data in and out (it is image bitmap processing). I would like to use DMA if possible.
There is also a camera and an LCD connected to the FPGA. FPGA handling all real-time data from camera and display. PIC will be used to make some graphics, to configure some FPGA registers, and create and transfer graphics and characters into the external SRAM.

I started to prepare the design in FC8 and then realised there is no component to drive a parallel port nor DMA! I intend to use the EBI Module in PIC32MZ:
EBI module PIC32MZ.JPG
EBI module PIC32MZ.JPG (48.85 KiB) Viewed 769 times


It would be nice that we have EBI component with DMI support (which can simulate the RAM as the file on the PC) and get native controls for the compiler.

Does anyone have an idea of how efficiently this can be implemented in FC? I suspect I will need to drop some C coding to do workaround without component? Are PIC Control register configurable from FC8?


Thanks,
Streammaster

User avatar
Benj
Matrix Staff
Posts: 14151
Joined: Mon Oct 16, 2006 10:48 am
Location: Matrix TS Ltd
Has thanked: 4330 times
Been thanked: 4080 times
Contact:

Re: PIC32MZ and External Bus Interface (EBI)

Postby Benj » Fri Apr 05, 2019 3:15 pm

Hi Streammaster,

Yes you can add C code to your program using C icons. You can also directly access the MCU registers like you can in C using the C icons.

Flowcode variables can be accessed in C but you will have to change the variable name slightly for the C version.

e.g. Flowcode variable MyVar

If global then referenced like this.

FCV_MYVAR

if local then referenced like this.

FCL_MYVAR

Hope this helps.
These users thanked the author Benj for the post:
chipfryer27 (Tue Apr 30, 2019 7:12 pm)
Rating: 5.56%