DA module library for MCU Gear with LPC1114FN28. This library contains wiring setting function.

You are viewing an older revision! See the latest version

DAmoduleLPC1114

This library is for MCU Gear 12bit DA module with LPC1114FN28. You do not need thik about wiring to DA module. It contain wiring setting function.

How to use it?

include

#include "mbed.h"

#include "MCUGearBaseALPC1114.h"
#include "MCUGearALPC1114.h"
#include "commonALPC1114.h"

#include "DAmoduleLPC1114.h"

You need SPI bus, cs pin, dout1 pin and I2C bus.

bus

SPI spi(dp2, dp1, dp6); // mosi, miso, sclk
DigitalOut cs(dp25); //for SPI communications
DigitalOut Dout1(dp26);

make MCU Gear instance.

MCU Gear instance

MCUGear DAM(dp5, dp27, N_SCL_SCL_SCL);        //DA Module

make DAmodule instance.

DAmodule instance

    DAM.detectModule();    //save location data in MCUGear class.
    DAmodule myDA(spi,dp25,dp26,&DAM); //make instance for DA module

There are 2 type of DA function. These are same operation,

1, separately connect (you can check the operation separately.)

1, separately connect

        myDA.initDA(&DAM);
        DAM.connectModuleA();
        myDA.writeDAm(&DAM, data);
        DAM.disconnectModule();

2, automatically connect (same as separately connect )

1, manually connect

        myDA.writeDAa(&DAM, data);

sample

#include "mbed.h"

#include "MCUGearBaseALPC1114.h"
#include "MCUGearALPC1114.h"
#include "commonALPC1114.h"

#include "DAmoduleLPC1114.h"

Serial pc(dp16, dp15); // tx, rx
SPI spi(dp2, dp1, dp6); // mosi, miso, sclk
DigitalOut cs(dp25); //for SPI communications

MCUGear DAM(dp5, dp27, N_SCL_SCL_SCL);        //DA Module

//output pins = P0_3, P0_7, P0_11, P1_0, P1_1, P1_2, P1_4, P1_5
DigitalOut Dout1(dp26);
DigitalOut Dout2(dp28);
DigitalOut Dout3(dp4);
DigitalOut Dout4(dp9);
DigitalOut Dout5(dp10);
DigitalOut Dout6(dp11);
DigitalOut Dout7(dp14);
DigitalOut Dout8(dp15);

//inputpins = P1_8, P1_9
DigitalIn Din1(dp17);
DigitalIn Din2(dp18);

int main() {
    
    pc.printf("Hello World!\r\n");
        
    wait(1);
    
    initBase(); //initialize Baseboard
    
    DAM.detectModule();    //save location data in MCUGear class.
    DAmodule myDA(spi,dp25,dp26,&DAM); //make instance for DA module
    
    int data = 0x00;
    int pm = 1;
    while(1) {
        //manually connect
        /*
        myDA.initDA(&DAM);
        DAM.connectModuleA();
        myDA.writeDAm(&DAM, data);
        DAM.disconnectModule();
        */
        //automatically connect
        myDA.writeDAa(&DAM, data);  //automatically initDA(), connectA() and disconnect()
        
        data = data + 10 * pm;
        wait(0.001);
        
        if(data > 0xfff){
            data = 0xfff;
            pm = -1;
            
        }else if(data < 0){
            data = 0;
            pm = 1;
            
        }

    }
}

All wikipages