Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Global.cpp
- Committer:
- shimogamo
- Date:
- 2015-10-10
- Revision:
- 6:0d9fa7152934
- Parent:
- 5:9a1ec02229dd
- Child:
- 7:6f7bd18ce796
File content as of revision 6:0d9fa7152934:
#include "mbed.h" #include "Global.h" //トリムはGlobalで足したほうがいいかも //----------------普段は変動しない変数(定数)------------------------------------------------------ //サーボのパラメータ(角度(deg)で設定) double Global::maxpitch = 5.0; double Global::minpitch = -5.0; double Global::neutralpitch = 0; double Global::maxyaw = 30.0; double Global::minyaw = -30.0; double Global::neutralyaw = 0; //ジョイスティックのパラメータ(mbedのAnalogIn値[0,1]) double Global::maxpitchdegree = 1.0; double Global::minpitchdegree = 0; double Global::neutralpitchdegree = 0.5; double Global::maxyawdegree = 1.0; double Global::minyawdegree = 0; double Global::neutralyawdegree = 0.5; //----------------周期的に変動する変数------------------------------------------------------ double Global::trimpitch; double Global::trimyaw; double Global::inttrimpitch; double Global::inttrimyaw; double Global::pitch; double Global::yaw; double Global::airspeed; double Global::cadence; double Global::altitude; //----------------どこからでも使えるled,スイッチ,タイマーの一括管理----------------------------- Timer Global::timer; DigitalIn Global::initializeswitch(p23,PullUp);//否定で押しているとき DigitalOut Global::led1(LED1); DigitalOut Global::led2(LED2); DigitalOut Global::led3(LED3); DigitalOut Global::led4(LED4); LocalFileSystem Global::local("local"); void Global::initialize(){ timer.start(); fileread(); } void Global::fileread(){ float a, b, c, d, e, f; FILE* fp = fopen("/local/init.csv", "r"); if(fp == NULL) { filewrite(); return; } //1行目 fscanf( fp, "%f,%f,%f,%f,%f,%f",&a, &b, &c, &d, &e, &f); setneutralpitch(a); setmaxpitch(b); setminpitch(c); setneutralyaw(d); setmaxyaw(e); setminyaw(f); fclose(fp); } void Global::filewrite(){ FILE* fp = fopen("/local/init.csv", "w"); if(fp == NULL) { error("Could not open file for write\n"); } fprintf(fp, "%f,%f,%f,%f,%f,%f\n", getneutralpitch(), getmaxpitch(), getminpitch(), getneutralyaw(), getmaxyaw(), getminyaw()); fclose(fp); } //定数チックな変数 double Global::getmaxpitch(){return maxpitch;} double Global::getminpitch(){return minpitch;} double Global::getneutralpitch(){return neutralpitch;} double Global::getmaxyaw(){return maxyaw;} double Global::getminyaw(){return minyaw;} double Global::getneutralyaw(){return neutralyaw;} void Global::setmaxpitch(double _maxpitch){maxpitch = _maxpitch;} void Global::setminpitch(double _minpitch){minpitch = _minpitch;} void Global::setneutralpitch(double _neutralpitch){neutralpitch = _neutralpitch;} void Global::setmaxyaw(double _maxyaw){maxyaw = _maxyaw;} void Global::setminyaw(double _minyaw){minyaw = _minyaw;} void Global::setneutralyaw(double _neutralyaw){neutralyaw = _neutralyaw;} double Global::getmaxpitchdegree(){return maxpitchdegree;} double Global::getneutralpitchdegree(){return neutralpitchdegree;} double Global::getminpitchdegree(){return minpitchdegree;} double Global::getmaxyawdegree(){return maxyawdegree;} double Global::getneutralyawdegree(){return neutralyawdegree;} double Global::getminyawdegree(){return minyawdegree;} void Global::setmaxpitchdegree(double _maxpitchdegree){maxpitchdegree=_maxpitchdegree;} void Global::setneutralpitchdegree(double _neutralpitchdegree){neutralpitchdegree=_neutralpitchdegree;} void Global::setminpitchdegree(double _minpitchdegree){minpitchdegree=_minpitchdegree;} void Global::setmaxyawdegree(double _maxyawdegree){maxyawdegree=_maxyawdegree;} void Global::setneutralyawdegree(double _neutralyawdegree){neutralyawdegree=_neutralyawdegree;} void Global::setminyawdegree(double _minyawdegree){minyawdegree=_minyawdegree;} //変数 double Global::getpitch(){return pitch;} double Global::gettrimpitch(){return trimpitch;} double Global::getinttrimpitch(){return inttrimpitch;} double Global::getyaw(){return yaw;} double Global::gettrimyaw(){return trimyaw;} double Global::getinttrimyaw(){return inttrimyaw;} double Global::getairspeed(){return airspeed;} double Global::getcadence(){return cadence;} double Global::getaltitude(){return altitude;} void Global::setpitch(double _pitch){pitch = _pitch;} void Global::settrimpitch(double _trimpitch){trimpitch = _trimpitch;} void Global::setinttrimpitch(double _inttrimpitch){inttrimpitch = _inttrimpitch;} void Global::setyaw(double _yaw){yaw = _yaw;} void Global::settrimyaw(double _trimyaw){trimyaw = _trimyaw;} void Global::setinttrimyaw(double _inttrimyaw){inttrimyaw = _inttrimyaw;} void Global::setairspeed(double _airspeed){airspeed = _airspeed;} void Global::setcadence(double _cadence){cadence = _cadence;} void Global::setaltitude(double _altitude){altitude = _altitude;}