Page MenuHomec4science

simple.cpp
No OneTemporary

File Metadata

Created
Sun, Feb 2, 00:22

simple.cpp

/**
* \file simple.cpp
*
* \date May 4, 2012
* \author Alexandre Tuleu
*/
#include <iostream>
#include <stdexcept>
#include <libsbcp/bus/Bus.h>
#include <libsbcp/devices/motordriver_board/MotorDriver.h>
#include <sbcpd/si/ft2232h.h>
using namespace sbcp;
using namespace sbcp::amarsi;
int main(){
sbcpd_bus_settings * s = sbcpd_bus_settings_create();
//lowest requirement
sbcpd_bus_settings_set_required_frame_definition(s,1,0);
sbcpd_serial_interface * si = sbcpd_ft2232h_create_interface();
if(sbcpd_ft2232h_open(si,3310000,1,2) != SBCPD_NO_ERROR){
throw std::runtime_error(std::string("could not open serial interface : ") + si->error.msg);
}
Bus d_bus(s,si);
// !warning this will perform an heavy IO operation !
MotorDriver::Ptr mv = d_bus.OpenDevice<MotorDriver>(0x01);
if(!mv || !mv.get()){
throw std::runtime_error("could not open Motordriver 0x01");
}
// !warning this will perform an heavy IO operation !
std::cout << "First motor has position : "
<< mv->Motor1().PresentPosition().Get() << std::endl;
return 0;
}

Event Timeline