cancel
Showing results for 
Search instead for 
Did you mean: 

16 bit EMI interface

satnam
Associate II
Posted on March 10, 2008 at 17:34

16 bit EMI interface

2 REPLIES 2
satnam
Associate II
Posted on May 17, 2011 at 09:50

I have to interface STR9 with a 16 bit device.

As per the device's datasheet as most processors have byte addressing, the address lines of STR9 to the device should be shifted. i.e. A0 be left open, A1 of STR9 be attached to A0 ofthe device and so on.

But as per the STR9 externa memory interface manual, the shifting for this kind of interface is done by the MCU itself and there is no need for hardwire shifting.

kindly clear my confusion should i connect the wires straight i.e. A0 to A0 or should i do hardware shifting.

Thanks

rgreenthal
Associate II
Posted on May 17, 2011 at 09:50

Hi

you need to bring thru AD0 (yes a0)

Also macros are nice for this, mine look like

#define m_usReadFpgaPI0() *(volatile unsigned short *)0x3C000000

#define m_usReadFpgaPI1() *(volatile unsigned short *)0x3C000002

#define m_usReadFpgaPI2() *(volatile unsigned short *)0x3C000004

#define m_usWriteFpgaPo0(Data0) *(volatile unsigned short *)0x3C000100 = Data0

#define m_usWriteFpgaPo1(Data0) *(volatile unsigned short *)0x3C000102 = Data0

#define m_usWriteFpgaPo2(Data0) *(volatile unsigned short *)0x3C000104 = Data0

// Inputs

#define m_CheckBitwfTouch() ((*(volatile unsigned short *)(0x3C000000) & 0x0200

#define m_CheckBitGfInh() ((*(volatile unsigned short *)(0x3C000000) & 0x0100

and don't forget to add this line to CAPS:

SCU->GPIOEMI = 0x01; // Turn on EMI Block Clock

🙂