ctr_mcu/trunk/led.h
N2232 3da96fcad8 0.23
VolをTWLからも書けるように
 スライダとの後着優先になる
Codecの「書いたVolと違う値にセットされる(MAX?)」バグワークアラウンドのため、ポーリングするように再度変更
 TWLからも書けるのと併せ、そのつもりで作っていたかったので修正箇所が多い
スライダのレジスタの値を読み出されるのでスライダのアソビを考えてスケーリングするよう変更
 テーブル引きのテーブルをいじるのでは対応出来ない
ADCのフィルタの誤り。閾値付近でふらふらしてしまっていた。フィルタの意味なし
電池残量0時のデフォルトパターンを設定。
 ほぼすっからかんな電池をセットされたときなどでSoCから何も書かれてない状態の時、消灯で不便なため
電源LED autoでホタルにしない用にした。
 ホタル消そうか…
ファームが壊れ、バックアップからも復帰できないときに赤LEDを ぴぴっ、ぴぴっ と点滅させるように変更
 ファームバックアップ後、新ファーム書き込み中のある期間で電源を落とすとバックアップが消える?
 todo:デバッグコードが残っている
MGICにバッテリーパラメータを書くタイミングを変更(パラメータ転送~に時間が掛かるため)
 1)電池交換を検出したとき
 2)電源を入れようとしたときに万が一電池がすり替わってたとき
電圧で電池残量をキャップする
 分解能20mVではあまりよろしい結果が得られなかったのでMGICより下位バイトも取得するように変更
 比較部をリファクタリング
wait_msを違うモジュールに
 ROM上のbootブロックに置きたかったため
Vol更新コマンド ビットの自動クリアを忘れていた
バッテリ残量パラメータ更新
 ビットシフトが必要になったので対応 残念なコードに
電源LED赤とカメラLEDがひっくり返っていた
VOLテーブルを-10dbに更新


git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-05-23%20-%20ctr.7z%20+%20svn_v1.068.zip/ctr/svn/ctr_mcu@200 013db118-44a6-b54f-8bf7-843cb86687b1
2010-07-06 09:01:09 +00:00

154 lines
2.7 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#ifndef __led__
#define __led__
// ====================================
//#define LED_CHARGE P2.4 // PMで定義
// LED_DUTY
#define LED_duty_pow_blu TDR06
#define LED_duty_WiFi TDR03
#define LED_duty_3d TDR01
#define LED_duty_notify_red TDR07
#define LED_duty_notify_grn TDR05
#define LED_duty_notify_blu TDR02
// これらはduty変えられません
#define LED_pow_red P4.2
#define LED_CAM P7.5
// 旧仕様 /////////////////////////////
// LED_DUTY
//#define LED_duty_old_pow_blu TDR06 同じ
//#define LED_duty_old_WiFi TDR03 同じ
#define LED_duty_old_NOTIFY TDR05
//#define LED_duty_old_CAM TDR02
//#define LED_duty_old_3d TDR01 同じ
// wifi2はPWMできません。
#define LED_old_pow_red P1.5
#define LED_old_CAM P1.0
#define NOTIFY_LED_TERM 32
#define LED_BRIGHT_MAX 0x00FF
// ====================================
#ifdef _MCU_BSR_ // 電波送信パルス
#define WIFI_txLatch PIF21
#else
#define WIFI_txLatch PIF7
#endif
// ====================================
enum LED_ILUM_MODE
{
LED_POW_ILM_AUTO = 0,
LED_POW_ILM_ON,
LED_POW_ILM_HOTARU,
LED_POW_ILM_OFF,
LED_POW_ILM_ONLY_RED,
LED_POW_ILM_ONLY_BLUE,
LED_POW_ILM_FORCE_BT_EMPTY
};
enum LED_MODE_TUNE
{
LED_TUNE_ILM_OFF = 0,
LED_TUNE_ILM_ON
};
// VREG_C_WIFI_LED
enum WIFI_LED_MODE
{
WIFI_LED_OFF = 0,
WIFI_LED_ON
};
// VREG_C_WIFI_NOTIFY
enum NOTIFY_LED_MODE
{
NOTIFY_LED_OFF = 0,
NOTIFY_LED_ON,
NOTIFY_LED_PTN0,
NOTIFY_LED_PTN1,
NOTIFY_LED_PTN2
};
// VREG_C_CAM_LED
enum CAM_LED_MODE
{
CAM_LED_OFF = 0,
CAM_LED_BLINK,
CAM_LED_ON,
CAM_LED_BY_TWL,
CAM_LED_ON_PLUSE,
CAM_LED_OFF_PLUSE
};
// お知らせLED調光関係 //
typedef struct _st_info_LED
{
u8 term; // 1フレーム何チック
u8 fade_time; // 何チックで次のフレームの色に達するか
u8 last_loop; // 最終フレームを繰り返す?
u8 resv1;
u8 red[32];
u8 grn[32];
u8 blu[32];
}st_info_LED;
typedef union _uni_info_LED
{
st_info_LED info_LED;
u8 bindata[ sizeof( st_info_LED ) ];
}uni_info_LED;
extern uni_info_LED info_LED;
// 赤LED 点滅向け //
typedef struct _st_led_red_batt_empty
{
u8 dats[4];
}st_led_red_batt_empty;
extern st_led_red_batt_empty led_red_batt_empty;
/*
お知らせLED
*/
typedef struct _st_LED_dim_status
{
sx16 to;
sx16 delta;
sx16 now; // 小数点以下を覚えておかなくてはならないため
}st_LED_dim_status;
// ====================================
void LED_init( );
void LED_stop( );
extern void tsk_led_cam();
#endif