関数一覧
関数は機能別にファイルに格納されている。
引数、戻り値の値の意味はprogramを参照すること
詳しくは直接programを参照すること。(./program/*.*に格納してあります)
- accel.c・・・動きの制御に関係したモジュールがある。
- void accel(float velocity, float radius)
- 移動速度と回転半径により車体の動きを制御する。
- この関数だけですべての車体の動きを実現できる。
- void accel2(float velocity, float target_dis, float target_dif)
- 目標角度変位と目標移動距離にあわせて車体の動きを制御する。
- 詳しくはprogramを参照。
- float mv_chack_dis(float x, float y, float dis)
- 座標x,yと現在の座標との距離の2乗−disの2乗をかえす
- float mv_chack_dif(float th, float dif)
- 姿勢角thと現在の姿勢角の差の絶対値とdifの差をかえす
- char mv_chack(float x, float y, float th, float dis, float dif)
- ある座標x,y,thと現在の座標を比較し現在の座標を越えたら1をかえす。
- それ以外のときは0をかえす。
- disは位置座標の変化、difは姿勢角の変化
- int mv_timer(char md, int ini_time)
- 一定時間になると非零をかえす。
- char mv_stop(char md, int time)
- 一定時間の間車体をとめておく。
- char mv_accel(char md, float ini_speed, float ini_radius,float ini_dis, float ini_dif)
- 指定した速度、指定した回転半径で指定した移動距離または
- 指定した角度変位だけ動かす。
- char mv_accel2(char md, float ini_speed, float ini_dis, float ini_dif)
- 指定した移動距離に指定した角度に向くように動く。
- char mv_go(char md, float ini_speed, float ini_dis, float ini_fb_dis)
- 指定した移動距離だけ直進。
- char mv_spin(char md, float ini_speed, float ini_dif)
- 指定した変位角度だけその場回転。
- dataload.c
- void dataload()
- すべてのセンサ情報をセンサデータの外部変数に格納。
- main.c
- main()
- モードの切り替え、モードの実行
- mmi.c・・・マン−マシン−インタフェイス関係のモジュールが存在。
- void init_mmi()
- mmi用のPI/Tの初期化
- void led_set(char data)
- led,7seg-ledの制御
- void led_lamp_set(char green, char red)
- 発光LEDの点灯または消灯
- void seg_set(char no, char data)
- 7seg.LEDの指定の桁の表示
- void seg_set_all(int data)
- 7seg.LEDのすべての桁を表示
- void read_sw_data()
- 押しボタンスイッチの読み込み
- mv.c・・・動作programのライブラリー
- char mv_test_sub(char md)
- 動作テスト用サブモジュール
- char mv_test(char md)
- 動作テスト用モジュール
- char mv_race(char md)
- 競技用モジュール
- mv_ss...はまだ未完成のモジュールなので説明を省略する
- char mv_ss_chace(char md)
- char mv_ss_going(char md)
- char mv_ss_away(char md)
- char mv_ss(char md)
- char mv_ps(char md)
- 赤外線追尾動作をする
- char mv_ts(char md)
- タッチセンサを用いた回避動作をする
- char mv_ini_ss(char md)
- 説明省略
- char mv_ini(char md)
- 説明省略
- char mv_search(char md, float ini_speed, float ini_dif, int ini_time)
- 振り向き動作をさせる
- char mv_win(char md)
- おまけの動作をする
- other.c
- char inport(char *port)
- ポートからの読みだし
- void outport(char *port, char data)
- ポートへの書き込み
- int b_to_bcd(int b)
- 数値をBCDコードに変換
- void rtc_clr()
- RTCのレジスタのクリア
- void init_start()
- ステータスレジスタの割り込みマスクを解く
- void init_all()
- 全てを初期化
- void init_data()
- 各変数の初期化
- ps.c
- void init_ps()
- 赤外線センサ用のPI/Tの初期化
- void ps()
- 赤外線センサのデータの読み込み
- void enemy_behind()
- 赤外線の反応により相手のいる方向を角度に換算
- void ps_seg_control()
- 赤外線の反応箇所を7seg.LEDで確認する為のデータを作成
- pwm.c
- void init_pwm()
- pwm信号の送信用のPI/Tの初期化
- void comp_led_out(int l, int r)
- void pwm_data_chage()
- void pwm_roket_start()
- void pwm_break()
- int ajust_pwm(int pwm_data)
- int feed_back(int ori, int target)
- void pwm()
- モータの回転を制御
- re.c
- void re()
- ロータリエンコーダのデータの読み込み
- void dataload_re()
- タイマー割り込み用のロータリエンコーダデータを通常時のロータリエンコーダデータにコピー
- void make_self_point_data()
- 自己座標を算出
- void make_seg_x1_y1_th1()
- 自己座標を7seg.LEDで確認する為のデータを作成
- seg.c・・・7seg−ledの表示ライブラリー
- char seg_start(char md, int seg_data)
- 説明省略
- char seg_start2(char md, int seg_data)
- 説明省略
- void re_check()
- タイヤの回転数を7seg.LEDで表示
- void pwm_check()
- pwm信号を7seg.LEDで表示
- void sw_check()
- dipsw.の状態と押しボタンスイッチが押された回数を7seg.LEDで表示
- void x1_check()
- 自己座標のx座標を7seg.LEDで表示
- void y1_check()
- 自己座標のy座標を7seg.LEDで表示
- void th1_check()
- 自己姿勢角を7seg.LEDで表示
- void x1_y1_th1_check()
- 自己座標と自己姿勢角を7seg.LEDで表示
- タッチセンサで指定する
- void ps_check()
- 赤外線の反応箇所または相手のいる方向を7seg.LEDで表示
- void ts_check()
- タッチセンサの反応箇所を7seg.LEDで表示
- void ss_check()
- 前方または左右の障害物までの距離を7seg.LEDで表示
- void mv_ss_check()
- すべての超音波センサデータを7seg.LEDで表示
- void tm_check()
- タイマのカウントの様子を7seg.LEDで表示
- void all_check_sw_dip()
- すべてのセンサデータを7seg.LEDで表示
- dipスイッチで項目を変更
- void all_check_sw_intr()
- すべてのセンサデータを7seg.LEDで表示
- 押しボタンスイッチで項目を変更
- ss.c
- void init_ss()
- 超音波センサ用のPI/Tの初期化
- ss()
- カウンタの読み込み、超音波の送信
- void dataload_ss()
- 説明省略
- tm.c
- void init_rtc()
- RTCの初期化
- interrupt void tm()
- タイマ割り込み用モジュール
- void dataload_tm()
- 説明省略
- ts.c
- void ts()
- タッチセンサのデータの読み込み