/*----------------------------*/
/* USB-An TEST                */
/*----------------------------*/

#include <stdio.h>
#include <string.h>
#include <usb.h>
#include "musbiobase.h"

int main()
{
    int ret,i;
    int datl,dath;
    int dat;
    float volt;

    struct usb_bus    *bus;
    struct usb_device *dev;
    usb_dev_handle    *udev;

    /*-------------*/
    /* Device Open */
    /*-------------*/

    bus=morphy_init();
    dev=morphy_find(bus,dev);
    if( dev==NULL ){ exit(1); }
    udev=morphy_open(dev);
    if( udev==NULL ){ exit(2); }

    /*------------------------*/
    /* USB-An Init            */
    /*------------------------*/

    //USB Port All ON(0xFF)
    //Mode Set Input
    uio_out(udev,0,0xFF);

    //AD ASSGIN
    //An0:0x03,An1:0x07,An2:0x0C,An3:0x0F
    uio_out(udev,1,0x0F);

    //WAIT AD CONV
    sleep(.5);
	
    /*--------------------------*/
    /* USB-An Input 4ch         */
    /*--------------------------*/
    
    for(i=0; i<4; i++){
        //'An pin Change
        uio_out(udev,1, i * 0x4 + 0x3);

        //'10BitAD
        dath=uio_in(udev,0);
        datl=uio_in(udev,1);
        dat= dath * 4 + (datl&0x3);
        volt = (float) dat * 5 / 1024;
        printf("Port%d : %fV %d \n",i,volt,dat);
    }

    /*---------------------*/
    /* Device Close & Exit */
    /*---------------------*/

    morphy_close(udev);
    exit(0);
}

