Exemple #1
0
extern void modbusComm_init(void)
{
   int32_t fdUartPC;

   /* open serial port connected to ioboard */
   fdUartPC = ciaaPOSIX_open("/dev/serial/uart/0", ciaaPOSIX_O_RDWR | ciaaPOSIX_O_NONBLOCK);

   /* Open Modbus Master */
   hModbusMaster = ciaaModbus_masterOpen();

   /* Open Transport Modbus Ascii (UART PC) */
   hModbusAsciiUartPC = ciaaModbus_transportOpen(
         fdUartPC,
         CIAAMODBUS_TRANSPORT_MODE_ASCII_MASTER);

   /* Open Gateway Modbus */
   hModbusGateway = ciaaModbus_gatewayOpen();

   /* Add Modbus Master to gateway */
   ciaaModbus_gatewayAddMaster(
         hModbusGateway,
         hModbusMaster);

   /* Add Modbus Transport to gateway */
   ciaaModbus_gatewayAddTransport(
         hModbusGateway,
         hModbusAsciiUartPC);
}
Exemple #2
0
/*==================[external functions definition]==========================*/
extern void modbusSlave_init(void)
{
   int32_t fdSerialPort;

   fdSerialPort = ciaaPOSIX_open("/dev/serial/uart/0", O_RDWR | O_NONBLOCK);

   /* Open Modbus Slave */
   hModbusSlave = ciaaModbus_slaveOpen(
         &callbacksStruct,
         CIAA_BLINKING_MODBUS_ID);

   /* Open Transport Modbus Ascii */
   hModbusAscii = ciaaModbus_transportOpen(
         fdSerialPort,
         CIAAMODBUS_TRANSPORT_MODE_ASCII_SLAVE);

   /* Open Gateway Modbus */
   hModbusGateway = ciaaModbus_gatewayOpen();

   /* Add Modbus Slave to gateway */
   ciaaModbus_gatewayAddSlave(
         hModbusGateway,
         hModbusSlave);

   /* Add Modbus Transport to gateway */
   ciaaModbus_gatewayAddTransport(
         hModbusGateway,
         hModbusAscii);
}
extern void controller_init(void)
{
   /* open CIAA digital outputs */
   fd_out = ciaaPOSIX_open("/dev/dio/out/0", ciaaPOSIX_O_RDWR);

   /* open CIAA ADC */
   fd_adc = ciaaPOSIX_open("/dev/serial/aio/in/0", ciaaPOSIX_O_RDONLY);

   /* open UART connected to USB bridge (FT2232) */
   fd_uart1 = ciaaPOSIX_open("/dev/serial/uart/1", ciaaPOSIX_O_RDWR);

   uart_init(ciaaBAUDRATE_115200, ciaaFIFO_TRIGGER_LEVEL3);

   sensorLM35_init(fd_adc, ciaaCHANNEL_3);

   SetRelAlarm(ActivatePeriodicTask, 350, SAMPLES_TIME);
}
Exemple #4
0
/*==================[external functions definition]==========================*/
int main(void) {

    // TODO: insert code here

	// CIAA startup
	ciaaWrapper_Config ();
	ciaaWrapper_Init ();

	// CIARR UART
	int32_t uartFd = ciaaPOSIX_open (ciaaDevices_UART1, ciaaDevices_EMode_ReadOnly);

    // Force the counter to be placed into memory
    volatile static int i = 0 ;

    // Enter an infinite loop, just incrementing a counter
    while(1) {
        i++ ;
    }

    return 0;
}
void teclado_init(void)
{
   /* abre entradas para leer las teclas */
   fd_in = ciaaPOSIX_open("/dev/dio/in/0", ciaaPOSIX_O_RDWR);
}