Arduino to Peripheral Module adapter library

Dependents:   ARD2PMD_WebServer

This library assigns the proper pins for an Arduino compatible board with the ard2pmd adapter board.

  • mux I2C pins mux(D14, D15)

Digital I/O

pmd[8] is an array of pointers to the DigitalInOut objects

IndexNamePmod
0pa11
1pa22
2pa33
3pa44
4pb17
5pb28
6pb39
7pb410

MAX14661 Multiplexer Abstraction

mux_a[17] is an array of integers representing the bit mask of a multiplexer switch arranged in Arduino order

IndexPinName
0D0RX
1D1TX
2D2D3
3D3D4
4D4PB1
5D5PB2
6D6PB3
7D7PB4
8D8D8
9D9D9
10D10PA1
11D11PA2
12D12PA3
13D13PA4
14D14SDA
15D15SCL
16na0

mux_p[9] is an array of integers representing the bit mask of a multiplexer switch arranged in Pmod order

IndexPinName
0D10PA1
1D11PA2
2D12PA3
3D13PA4
4D4PB1
5D5PB2
6D6PB3
7D7PB4
8na0
Committer:
gsteiert
Date:
Sat May 10 04:22:17 2014 +0000
Revision:
4:f016a009708c
Parent:
3:18ae8990f74b
Cleaned up example in comments.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
gsteiert 0:d42cfc64e43e 1 /* ARD2PMD Board Driver Library
gsteiert 0:d42cfc64e43e 2 *
gsteiert 0:d42cfc64e43e 3 */
gsteiert 0:d42cfc64e43e 4
gsteiert 0:d42cfc64e43e 5 #include "ARD2PMD.h"
gsteiert 0:d42cfc64e43e 6 #include "mbed.h"
gsteiert 0:d42cfc64e43e 7
gsteiert 3:18ae8990f74b 8 ARD2PMD::ARD2PMD() :
gsteiert 3:18ae8990f74b 9 pa1(D10), pa2(D11), pa3(D12), pa4(D13),
gsteiert 3:18ae8990f74b 10 pb1(D4), pb2(D5), pb3(D6), pb4(D7),
gsteiert 3:18ae8990f74b 11 mux(D14, D15)
gsteiert 0:d42cfc64e43e 12 {
gsteiert 0:d42cfc64e43e 13 }
gsteiert 0:d42cfc64e43e 14
gsteiert 0:d42cfc64e43e 15 ARD2PMD::~ARD2PMD()
gsteiert 0:d42cfc64e43e 16 {
gsteiert 0:d42cfc64e43e 17 }
gsteiert 0:d42cfc64e43e 18
gsteiert 3:18ae8990f74b 19 const int ARD2PMD::mux_a[17] = {RX, TX, D2, D3, PB1, PB2, PB3, PB4, D8, D9, PA1, PA2, PA3, PA4, SDA, SCL, 0};
gsteiert 3:18ae8990f74b 20 const int ARD2PMD::mux_p[9] = {PA1, PA2, PA3, PA4, PB1, PB2, PB3, PB4, 0};
gsteiert 0:d42cfc64e43e 21
gsteiert 3:18ae8990f74b 22 // Initialize Digital IO to inputs with no pullups
gsteiert 3:18ae8990f74b 23 void ARD2PMD::init()
gsteiert 0:d42cfc64e43e 24 {
gsteiert 3:18ae8990f74b 25 pmd[0] = &pa1;
gsteiert 3:18ae8990f74b 26 pmd[1] = &pa2;
gsteiert 3:18ae8990f74b 27 pmd[2] = &pa3;
gsteiert 3:18ae8990f74b 28 pmd[3] = &pa4;
gsteiert 3:18ae8990f74b 29 pmd[4] = &pb1;
gsteiert 3:18ae8990f74b 30 pmd[5] = &pb2;
gsteiert 3:18ae8990f74b 31 pmd[6] = &pb3;
gsteiert 3:18ae8990f74b 32 pmd[7] = &pb4;
gsteiert 3:18ae8990f74b 33 for (int i=0; i < 8; i++) {
gsteiert 3:18ae8990f74b 34 (*pmd[i]).mode(PullNone);
gsteiert 3:18ae8990f74b 35 (*pmd[i]).input();
gsteiert 0:d42cfc64e43e 36 }
gsteiert 3:18ae8990f74b 37 }