- Notifications
You must be signed in to change notification settings - Fork2
C++ API for National Instruments myRIO
License
NotificationsYou must be signed in to change notification settings
eviallet/myWRIO
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This is a framework to use with myRIO. It allows the user to code on the myRIO without LabVIEW.It is based on the official C API, but handles registers communications to provide a high level, arduino like programming.
The docs are generated with Doxygen. Each line of code is documented and examples are provided for each class.There is a guide to setup Eclipse to use our API.
- Blink a LED
#include"MyRIO.h"usingnamespacemyRIO;intmain() {if(!myRIO_init()) {std::cout <<"Error initializing myRIO";return -1;}bool status = HIGH;while(1) { status=!statusDIO::writeLed(LED1, status);Time::wait_ms(500); }}
- Output a PWM signal
#include"MyRIO.h"usingnamespacemyRIO;usingnamespacestd;intmain() {if(!myRIO_init()) {cout <<"Error initializing myRIO";return -1;}// Output a 10kHz, 3.3V PWM signal with a duty cycle of 25% for 10 seconds PWMchannelC0(PWMC0,10e3,25);Time::wait_s(10);}
- Generate a sine with AIO class (Analog Input Output)
#include"MyRIO.h"usingnamespacemyRIO;usingnamespacestd;intmain() {if(!myRIO_init()) {cout <<"Error initializing myRIO";return -1;}double fq =100;double vpp =4;double outputFq =100e3; Time timer =Time::stopwatch(); timer.reset();while(1) {AIO::writePin(CO0, (vpp/2)*sin(2*3.141592653*fq*timer.elapsed_ns()*1e-9));// we cannot measure more than 2 seconds ; reset it before it's too lateif(timer.elapsed_ns() >= 1e9L) timer.reset();// convert the frequency to time, then the time to µsTime::wait_us(1e6/outputFq); }return0;}
LEDs example | MotorPID example | Real time angle supervision (external I2C gyroscope) | And a car |
---|---|---|---|
About
C++ API for National Instruments myRIO
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
No releases published
Packages0
No packages published
Uh oh!
There was an error while loading.Please reload this page.