# memory mapped I/O using RCM2200

**URL:** <https://forums.digi.com/t/memory-mapped-i-o-using-rcm2200/9354>\
**Category:** Rabbit\
**Created:** [May 21, 2009, 11:21am UTC](https://forums.digi.com/t/memory-mapped-i-o-using-rcm2200/9354 "2009-05-21T11:21:15Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![venkatasudhakar](https://avatars.discourse-cdn.com/v4/letter/v/ebca7d/32.png) [@venkatasudhakar](https://forums.digi.com/u/venkatasudhakar)\
**Post date:** [May 21, 2009, 11:21am UTC](https://forums.digi.com/t/memory-mapped-i-o-using-rcm2200/9354/1 "2009-05-21T11:21:15Z")

</div>

Hi,

How to use Data bus (D0-D7) with Adderss lines(A0-A3), to access external data from peripheral devices using latches.

could you please suggest how to achieve this in the dynamic C.

---

<div class="post-metadata">

**Author:** ![bsprouse](https://avatars.discourse-cdn.com/v4/letter/b/ecd19e/32.png) [@bsprouse](https://forums.digi.com/u/bsprouse)\
**Post date:** [June 5, 2009, 2:28am UTC](https://forums.digi.com/t/memory-mapped-i-o-using-rcm2200/9354/2 "2009-06-05T02:28:54Z")

</div>

Look at section 10 of the Rabbit 2000 users manual for an explanation of the I/O Bank Control Registers. There are 8 of these corresponding to the 8 pins on parallel port E. Since the RCM2200 only brings out 5 of these 8 pins onto the core module headers, you will be restricted to using one of these 5: IB0CR, IB1CR, IB4CR, IB5CR or IB7CR. These correspond to pins PE0, PE1, PE4, PE5 or PE7 respectively.

Select which PEx pin you want to use for your I/O strobe and setup the appropriate IBxCR register. Each of these registers has a 8KB address range assigned to it, so the PEx pin you choose sets your available addresses. Since only A0-A3 are brought out, you have 16 addresses that in essence repeat through the entire 8KB range. Once you enable the I/O space through setting up this register, whenever you issue a RdPortE or WrPortE call to an address in the 8KB range it will activate an I/O cycle on D[0:7], A[0:3], IORD, IOWR and the PEx strobe pin you setup.
