mirror of
https://github.com/rvtr/ctr_mcu.git
synced 2025-10-31 13:51:10 -04:00
逐次実行タスクの、追加/並べ替えを変更
割り込み禁止を短くした。まだ変更の予定なので、とりあえずバックアップのつもり。 動いているようではある 歩数計のデバッグコードを抜いた ADCピンの設定を修正 TypeTでカメラLED反転を忘れていた 未使用になったピンの処理 git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-05-23%20-%20ctr.7z%20+%20svn_v1.068.zip/ctr/svn/ctr_mcu@66 013db118-44a6-b54f-8bf7-843cb86687b1
This commit is contained in:
parent
218a5e322f
commit
e155ddaf0c
@ -128,12 +128,10 @@ task_status_immed tsk_cbk_accero( )
|
|||||||
if(( 25 < interval_hh ) && ( interval_hh < 200 ))
|
if(( 25 < interval_hh ) && ( interval_hh < 200 ))
|
||||||
// 前回の極大からの間隔がほどよい
|
// 前回の極大からの間隔がほどよい
|
||||||
{
|
{
|
||||||
DBG_LED_WIFI_on;
|
|
||||||
if( time_l < interval_hh )
|
if( time_l < interval_hh )
|
||||||
// 谷を挟んでいる
|
// 谷を挟んでいる
|
||||||
{
|
{
|
||||||
// 一歩増えました
|
// 一歩増えました
|
||||||
DBG_LED_WIFI_2_on;
|
|
||||||
hosu_increment();
|
hosu_increment();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -143,8 +141,6 @@ task_status_immed tsk_cbk_accero( )
|
|||||||
{
|
{
|
||||||
interval_hh += ( interval_hh != 65535 ) ? 1: 0; // 飽和加算って楽に書けたらいいのに
|
interval_hh += ( interval_hh != 65535 ) ? 1: 0; // 飽和加算って楽に書けたらいいのに
|
||||||
}
|
}
|
||||||
DBG_LED_WIFI_off;
|
|
||||||
DBG_LED_WIFI_2_off;
|
|
||||||
|
|
||||||
// (2) 直近の極小からの時間
|
// (2) 直近の極小からの時間
|
||||||
if( acc_norm[2] >= acc_norm[1] && acc_norm[1] < acc_norm[0]
|
if( acc_norm[2] >= acc_norm[1] && acc_norm[1] < acc_norm[0]
|
||||||
|
|||||||
@ -130,7 +130,7 @@ void tsk_adc( )
|
|||||||
ADCEN = 1;
|
ADCEN = 1;
|
||||||
ADM = 0b00011011; // セレクトモード、章圧、fCLK/6 ///ここから ↓
|
ADM = 0b00011011; // セレクトモード、章圧、fCLK/6 ///ここから ↓
|
||||||
|
|
||||||
ADPC = 0x02; // ADCポートのセレクト
|
ADPC = 0x06; // ADCポートのセレクト
|
||||||
ADS = ADC_SEL_TUNE;
|
ADS = ADC_SEL_TUNE;
|
||||||
// NOP();
|
// NOP();
|
||||||
ADCS = 1; // AD開始。 /// ここまで ↑ までに1us以上開ける
|
ADCS = 1; // AD開始。 /// ここまで ↑ までに1us以上開ける
|
||||||
@ -252,7 +252,7 @@ u8 get_adc( u8 ch )
|
|||||||
ADCS = 0;
|
ADCS = 0;
|
||||||
ADM = 0b00100011; // セレクトモード、昇圧、fCLK/6 ///ここから↓
|
ADM = 0b00100011; // セレクトモード、昇圧、fCLK/6 ///ここから↓
|
||||||
|
|
||||||
ADPC = 0x02; // ADCポートのセレクト
|
ADPC = 0x06; // ADCポートのセレクト
|
||||||
ADS = ch;
|
ADS = ch;
|
||||||
ADCS = 1; // AD開始。 /// ここまで↑ に、1us以上開ける
|
ADCS = 1; // AD開始。 /// ここまで↑ に、1us以上開ける
|
||||||
|
|
||||||
|
|||||||
@ -34,7 +34,9 @@ typedef struct
|
|||||||
}
|
}
|
||||||
system_status_;
|
system_status_;
|
||||||
|
|
||||||
|
|
||||||
extern system_status_ system_status;
|
extern system_status_ system_status;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
#define __config__
|
#define __config__
|
||||||
|
|
||||||
#define _debug_
|
#define _debug_
|
||||||
//#define _debug_led_
|
#define _debug_led_
|
||||||
|
|
||||||
|
|
||||||
#define MCU_VER_MAJOR 0x00;
|
#define MCU_VER_MAJOR 0x00;
|
||||||
@ -14,9 +14,9 @@
|
|||||||
//#define _PM_BUG_
|
//#define _PM_BUG_
|
||||||
|
|
||||||
//#define _PARRADIUM_
|
//#define _PARRADIUM_
|
||||||
#define _MODEL_TEG2_
|
//#define _MODEL_TEG2_
|
||||||
//#define _MODEL_WM0_
|
//#define _MODEL_WM0_
|
||||||
//#define _MODEL_TS0_
|
#define _MODEL_TS0_
|
||||||
//#define _MODEL_CTR_
|
//#define _MODEL_CTR_
|
||||||
|
|
||||||
//#define _SW_HOME_ENABLE_
|
//#define _SW_HOME_ENABLE_
|
||||||
|
|||||||
12
trunk/led.c
12
trunk/led.c
@ -60,7 +60,12 @@ void LED_init( )
|
|||||||
<< BIT_CIS0 | 4 << BIT_MD123 | 1 << BIT_MD0;
|
<< BIT_CIS0 | 4 << BIT_MD123 | 1 << BIT_MD0;
|
||||||
ISC = 0;
|
ISC = 0;
|
||||||
TOM0 = 0b0000000011111110; // 出力モード。4はPWM出力しないが1にしないとTO5以降にクロックが届かない
|
TOM0 = 0b0000000011111110; // 出力モード。4はPWM出力しないが1にしないとTO5以降にクロックが届かない
|
||||||
|
|
||||||
|
#ifdef _MCU_BSR_
|
||||||
TOL0 = 0b0000000000000000; // 出力を反転させるかフラグ
|
TOL0 = 0b0000000000000000; // 出力を反転させるかフラグ
|
||||||
|
#else
|
||||||
|
TOL0 = 0b0000000000000100; // 出力を反転させるかフラグ
|
||||||
|
#endif
|
||||||
|
|
||||||
TO0 = 0; // タイマー動作中で、タイマー出力にしてないときのピンのラッチ。タイマー出力を使わないなら0
|
TO0 = 0; // タイマー動作中で、タイマー出力にしてないときのピンのラッチ。タイマー出力を使わないなら0
|
||||||
TOE0 = 0b0000000011101110; // TOxをタイマーモジュールが制御?
|
TOE0 = 0b0000000011101110; // TOxをタイマーモジュールが制御?
|
||||||
@ -336,7 +341,6 @@ void tsk_led_wifi( )
|
|||||||
LED_duty_WiFi = 0;
|
LED_duty_WiFi = 0;
|
||||||
state_wifi_tx = 0;
|
state_wifi_tx = 0;
|
||||||
remain_wifi_tx = 0;
|
remain_wifi_tx = 0;
|
||||||
LED_WIFI_2 = 0;
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case ( WIFI_LED_ON ):
|
case ( WIFI_LED_ON ):
|
||||||
@ -344,7 +348,6 @@ void tsk_led_wifi( )
|
|||||||
LED_duty_WiFi = vreg_ctr[VREG_C_LED_BRIGHT];
|
LED_duty_WiFi = vreg_ctr[VREG_C_LED_BRIGHT];
|
||||||
state_wifi_tx = 0;
|
state_wifi_tx = 0;
|
||||||
remain_wifi_tx = 0;
|
remain_wifi_tx = 0;
|
||||||
LED_WIFI_2 = 1;
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case ( WIFI_LED_TXAUTO ):
|
case ( WIFI_LED_TXAUTO ):
|
||||||
@ -359,11 +362,9 @@ void tsk_led_wifi( )
|
|||||||
case ( 3 ):
|
case ( 3 ):
|
||||||
case ( 5 ):
|
case ( 5 ):
|
||||||
LED_duty_WiFi = 0;
|
LED_duty_WiFi = 0;
|
||||||
LED_WIFI_2 = 0;
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
LED_duty_WiFi = vreg_ctr[VREG_C_LED_BRIGHT];
|
LED_duty_WiFi = vreg_ctr[VREG_C_LED_BRIGHT];
|
||||||
LED_WIFI_2 = 1;
|
|
||||||
}
|
}
|
||||||
state_wifi_tx++;
|
state_wifi_tx++;
|
||||||
if( state_wifi_tx == 32 )
|
if( state_wifi_tx == 32 )
|
||||||
@ -378,7 +379,6 @@ void tsk_led_wifi( )
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
LED_duty_WiFi = vreg_ctr[VREG_C_LED_BRIGHT];
|
LED_duty_WiFi = vreg_ctr[VREG_C_LED_BRIGHT];
|
||||||
LED_WIFI_2 = 1;
|
|
||||||
task_interval = 200;
|
task_interval = 200;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -386,7 +386,6 @@ void tsk_led_wifi( )
|
|||||||
|
|
||||||
case ( WIFI_LED_PTN0 ):
|
case ( WIFI_LED_PTN0 ):
|
||||||
// ゆっくりバースト
|
// ゆっくりバースト
|
||||||
LED_WIFI_2 = 1;
|
|
||||||
switch ( state_wifi_tx )
|
switch ( state_wifi_tx )
|
||||||
{
|
{
|
||||||
case ( 1 ):
|
case ( 1 ):
|
||||||
@ -407,7 +406,6 @@ void tsk_led_wifi( )
|
|||||||
|
|
||||||
case ( WIFI_LED_PTN1 ):
|
case ( WIFI_LED_PTN1 ):
|
||||||
// データテーブルに従って点滅
|
// データテーブルに従って点滅
|
||||||
LED_WIFI_2 = 1;
|
|
||||||
{
|
{
|
||||||
u8 dat;
|
u8 dat;
|
||||||
|
|
||||||
|
|||||||
@ -229,7 +229,7 @@ void hdwinit2( )
|
|||||||
#ifdef _MODEL_CTR_
|
#ifdef _MODEL_CTR_
|
||||||
PM2 = 0b11101000;
|
PM2 = 0b11101000;
|
||||||
#else
|
#else
|
||||||
PM2 = 0b11111111;
|
PM2 = 0b11101111;
|
||||||
#endif
|
#endif
|
||||||
PM3 = 0b11110000; // P31,32は簡易I2C
|
PM3 = 0b11110000; // P31,32は簡易I2C
|
||||||
|
|
||||||
|
|||||||
@ -79,7 +79,7 @@ void PM_init( )
|
|||||||
|
|
||||||
// -1. なんかおかしい… リセットをかけてみる
|
// -1. なんかおかしい… リセットをかけてみる
|
||||||
dat_16._u16 = swap_endian_16( 0x5400 ); // reset
|
dat_16._u16 = swap_endian_16( 0x5400 ); // reset
|
||||||
iic_mcu_write( IIC_SLA_BT_GAUGE, BT_GAUGE_REG_COMMAND, 2, &dat_16.chars.lsb );
|
iic_mcu_write( IIC_SLA_BT_GAUGE, BT_GAUGE_REG_COMMAND, 2, &dat_16 );
|
||||||
|
|
||||||
// 0. バッテリ残量IC クイックスタート
|
// 0. バッテリ残量IC クイックスタート
|
||||||
dat_16._u16 = swap_endian_16( 0x4000 ); // quick start
|
dat_16._u16 = swap_endian_16( 0x4000 ); // quick start
|
||||||
@ -483,6 +483,7 @@ err PM_sys_pow_on( )
|
|||||||
|
|
||||||
// 残量チェック
|
// 残量チェック
|
||||||
PM_get_batt_left(); // 先に、PM_init()が実行されている必要があります。(大丈夫)
|
PM_get_batt_left(); // 先に、PM_init()が実行されている必要があります。(大丈夫)
|
||||||
|
// todo: batt remain -> volatage?
|
||||||
if( vreg_ctr[VREG_C_BT_REMAIN] < 0 )
|
if( vreg_ctr[VREG_C_BT_REMAIN] < 0 )
|
||||||
{
|
{
|
||||||
return ( 1 );
|
return ( 1 );
|
||||||
|
|||||||
@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
#include "..\WDT.h"
|
#include "..\WDT.h"
|
||||||
#include "..\config.h"
|
#include "..\config.h"
|
||||||
|
#include "..\user_define.h"
|
||||||
|
|
||||||
//******************************************************************************
|
//******************************************************************************
|
||||||
bit renge_flg_interval;
|
bit renge_flg_interval;
|
||||||
@ -122,86 +123,61 @@ for( i = 0; i < IMMED_RSV_TASKS_NUM; i++ ){
|
|||||||
|
|
||||||
|
|
||||||
/**************************************
|
/**************************************
|
||||||
|
本当にクリティカルなタイミングだと
|
||||||
|
タスクの順番が入れ替わるけど滅多に起きないであろう事、
|
||||||
|
多くの場合は順番が入れ替わっても問題ないので
|
||||||
|
割り込み禁止を最小にすることを最優先
|
||||||
|
(immedの否定...)
|
||||||
|
割り込み禁止 36us →
|
||||||
**************************************/
|
**************************************/
|
||||||
err renge_task_immed_add( task_immed new_task ){
|
err renge_task_immed_add( task_immed new_task ){
|
||||||
static u8 lock = 0;
|
u8 i;
|
||||||
|
u8 place;
|
||||||
DI();
|
|
||||||
if( lock != 0 ){
|
|
||||||
while(1){
|
|
||||||
NOP();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
lock = 1;
|
|
||||||
|
|
||||||
// 末尾の連続した空き領域の先頭でかつ、
|
// 末尾の連続した空き領域の先頭でかつ、
|
||||||
// 重複登録を避ける
|
// 重複登録を避ける
|
||||||
{
|
for( i = place = 0; i < IMMED_RSV_TASKS_NUM; i += 1 )
|
||||||
u8 i;
|
|
||||||
u8 place;
|
|
||||||
|
|
||||||
for( i = place = 0; i < IMMED_RSV_TASKS_NUM; i += 1 )
|
|
||||||
{
|
|
||||||
if( tasks_immed[ i ] != ( void * )0 )
|
|
||||||
{
|
|
||||||
place = i+1;
|
|
||||||
}
|
|
||||||
if( tasks_immed[ i ] == new_task ) // 重複登録
|
|
||||||
{
|
|
||||||
// while(1){
|
|
||||||
NOP(); // アサートで止めたい
|
|
||||||
// }
|
|
||||||
lock = 0;
|
|
||||||
EI();
|
|
||||||
return( ERR_ERR );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if( place < IMMED_RSV_TASKS_NUM )
|
|
||||||
{
|
|
||||||
tasks_immed[ place ] = new_task;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{ // タスク登録しすぎ(無いはず
|
|
||||||
// while(1){
|
|
||||||
NOP(); // アサートで止めたい
|
|
||||||
// }
|
|
||||||
lock = 0;
|
|
||||||
EI();
|
|
||||||
return( ERR_ERR );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
lock = 0;
|
|
||||||
EI();
|
|
||||||
return( ERR_SUCCESS );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**************************************
|
|
||||||
**************************************/
|
|
||||||
static void renge_task_immed_del(){
|
|
||||||
u8 i,j;
|
|
||||||
|
|
||||||
// リスト前詰め
|
|
||||||
i = 0;
|
|
||||||
j = 1;
|
|
||||||
for( ; j < IMMED_RSV_TASKS_NUM; j++)
|
|
||||||
{
|
{
|
||||||
if( tasks_immed[ i ] == (void *)0 )
|
if( tasks_immed[ i ] != ( void * )0 )
|
||||||
{
|
{
|
||||||
if( tasks_immed[ j ] != (void *)0 )
|
place = i+1; // 最近見つけた、タスクリストの最後尾
|
||||||
|
}
|
||||||
|
if( tasks_immed[ i ] == new_task ) // 重複登録
|
||||||
|
{
|
||||||
|
// while(1){
|
||||||
|
NOP(); // アサートで止めたい
|
||||||
|
// }
|
||||||
|
return( ERR_ERR );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if( place > IMMED_RSV_TASKS_NUM )
|
||||||
|
{ // タスク登録しすぎ(無いはず
|
||||||
|
// while(1){
|
||||||
|
NOP(); // アサートで止めたい
|
||||||
|
//
|
||||||
|
return( ERR_ERR );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
DI();
|
||||||
|
DBG_LED_WIFI_2_on;
|
||||||
|
// もたもたしているうちに割り込み等から割り込まれるのを考慮
|
||||||
|
// 滅多にないはずだが
|
||||||
|
for( ; place < IMMED_RSV_TASKS_NUM; place += 1 )
|
||||||
|
{
|
||||||
|
if( tasks_immed[ place ] == ( void * )0 )
|
||||||
{
|
{
|
||||||
tasks_immed[ i ] = tasks_immed[ j ];
|
tasks_immed[ place ] = new_task;
|
||||||
tasks_immed[ j ] = (void *)0;
|
DBG_LED_WIFI_2_off;
|
||||||
i += 1;
|
EI();
|
||||||
|
return( ERR_SUCCESS );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
// 割り込まれてタスク登録できなくなった
|
||||||
{
|
DBG_LED_WIFI_2_off;
|
||||||
i += 1;
|
EI();
|
||||||
}
|
return( ERR_ERR );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -210,32 +186,58 @@ static void renge_task_immed_del(){
|
|||||||
**************************************/
|
**************************************/
|
||||||
err renge_task_immed_run(){
|
err renge_task_immed_run(){
|
||||||
u8 task_id;
|
u8 task_id;
|
||||||
u8 i;
|
u8 last_task;
|
||||||
|
|
||||||
do{
|
do{
|
||||||
i = 0;
|
last_task = 0xFF;
|
||||||
|
|
||||||
for( task_id = 0; task_id < IMMED_RSV_TASKS_NUM; task_id += 1 ){
|
for( task_id = 0; task_id < IMMED_RSV_TASKS_NUM; task_id += 1 ){
|
||||||
if( tasks_immed[ task_id ] != 0 ){
|
if( tasks_immed[ task_id ] != 0 ){
|
||||||
if( tasks_immed[ task_id ]() == ERR_FINISED ){
|
if( tasks_immed[ task_id ]() == ERR_FINISED ){
|
||||||
tasks_immed[ task_id ] = (void*)0;
|
tasks_immed[ task_id ] = (void*)0;
|
||||||
|
last_task = task_id;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
DI();
|
// タスク削除
|
||||||
renge_task_immed_del();
|
{
|
||||||
EI();
|
if( last_task != 0xFF )
|
||||||
|
{
|
||||||
|
u8 i,j;
|
||||||
|
|
||||||
// さらに登録されたり、再度実行の場合
|
// リスト前詰め
|
||||||
// todo エラー繰り返しまくりだと困る
|
i = 0;
|
||||||
for( task_id = 0; task_id < IMMED_RSV_TASKS_NUM; task_id += 1 ){
|
j = 1;
|
||||||
if( tasks_immed[ task_id ] != 0 ){
|
for( ; j < IMMED_RSV_TASKS_NUM; j++)
|
||||||
i += 1;
|
{
|
||||||
|
DI();
|
||||||
|
DBG_LED_WIFI_2_on;
|
||||||
|
if( tasks_immed[ i ] == (void *)0 )
|
||||||
|
{
|
||||||
|
if( tasks_immed[ j ] != (void *)0 )
|
||||||
|
{
|
||||||
|
tasks_immed[ i ] = tasks_immed[ j ];
|
||||||
|
tasks_immed[ j ] = (void *)0;
|
||||||
|
i += 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
i += 1;
|
||||||
|
}
|
||||||
|
DBG_LED_WIFI_2_off;
|
||||||
|
EI();
|
||||||
|
if( last_task < i )
|
||||||
|
{
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
}while( i != 0 );
|
}
|
||||||
|
while( last_task != 0xFF ); // タスクが残っていたら再実行
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -272,8 +274,6 @@ err renge_task_immed_run(){
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
単位は ms
|
単位は ms
|
||||||
NOPを回すだけ、指定時間CPUを *占有します* 。
|
NOPを回すだけ、指定時間CPUを *占有します* 。
|
||||||
|
|||||||
@ -41,6 +41,8 @@ void tsk_debug2( )
|
|||||||
{
|
{
|
||||||
u8 str[4];
|
u8 str[4];
|
||||||
|
|
||||||
|
return;
|
||||||
|
|
||||||
if( ( system_status.pwr_state == ON ) || ( system_status.pwr_state == SLEEP ) )
|
if( ( system_status.pwr_state == ON ) || ( system_status.pwr_state == SLEEP ) )
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
|
|||||||
@ -1,8 +1,6 @@
|
|||||||
#ifndef _USER_DEF_
|
#ifndef _USER_DEF_
|
||||||
#define _USER_DEF_
|
#define _USER_DEF_
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
|
|
||||||
|
|
||||||
#define IIC_SLV_ADDR_MONITOR 0x6E
|
#define IIC_SLV_ADDR_MONITOR 0x6E
|
||||||
#define IIC_T_SLAVEADDRESS 0x4A
|
#define IIC_T_SLAVEADDRESS 0x4A
|
||||||
@ -27,9 +25,9 @@
|
|||||||
#ifdef _debug_led_
|
#ifdef _debug_led_
|
||||||
#define DBG_LED_WIFI_on ( P1.1 = 1 ) // TO03
|
#define DBG_LED_WIFI_on ( P1.1 = 1 ) // TO03
|
||||||
#define DBG_LED_WIFI_off ( P1.1 = 0 ) // TO03
|
#define DBG_LED_WIFI_off ( P1.1 = 0 ) // TO03
|
||||||
#define DBG_LED_WIFI_2_on ( LED_WIFI_2 = 1 )
|
#define DBG_LED_WIFI_2_on ( P2.4 = 1 )
|
||||||
#define DBG_LED_WIFI_2_off ( LED_WIFI_2 = 0 )
|
#define DBG_LED_WIFI_2_off ( P2.4 = 0 )
|
||||||
#define DBG_LED_WIFI_2_toggle ( LED_WIFI_2 ^= 1 )
|
#define DBG_LED_WIFI_2_toggle ( P2.4 ^= 1 )
|
||||||
|
|
||||||
#else
|
#else
|
||||||
#define DBG_LED_WIFI_on ;
|
#define DBG_LED_WIFI_on ;
|
||||||
@ -151,7 +149,6 @@
|
|||||||
//#define LED_CHARGE P1.3 // TO05
|
//#define LED_CHARGE P1.3 // TO05
|
||||||
//#define LED_POW2 P1.4 // TO06 ( <20>Â )
|
//#define LED_POW2 P1.4 // TO06 ( <20>Â )
|
||||||
//#define LED_POW1 P1.5 // TO07 ( <20>Ô )
|
//#define LED_POW1 P1.5 // TO07 ( <20>Ô )
|
||||||
#define LED_WIFI_2 P2.4
|
|
||||||
|
|
||||||
#define I2C_PU P5.3
|
#define I2C_PU P5.3
|
||||||
//#define I2C_M_SDA P3.1 // SDA10
|
//#define I2C_M_SDA P3.1 // SDA10
|
||||||
|
|||||||
@ -331,7 +331,7 @@ void set_irq( u8 irqreg, u8 irq_flg )
|
|||||||
{
|
{
|
||||||
u8 tot; // IRQ_mcu がLに縛られてると困る(基板不良)
|
u8 tot; // IRQ_mcu がLに縛られてると困る(基板不良)
|
||||||
|
|
||||||
DI();
|
DI();
|
||||||
if( ( vreg_ctr[ irqreg + 8 ] & irq_flg ) == 0 ){
|
if( ( vreg_ctr[ irqreg + 8 ] & irq_flg ) == 0 ){
|
||||||
vreg_ctr[ irqreg ] |= irq_flg;
|
vreg_ctr[ irqreg ] |= irq_flg;
|
||||||
IRQ0_neg;
|
IRQ0_neg;
|
||||||
|
|||||||
@ -1,7 +1,12 @@
|
|||||||
C:\WINDOWS\system32\cmd.exe /c touch magic.c
|
C:\WINDOWS\system32\cmd.exe /c touch magic.c
|
||||||
"C:\Program Files\NEC Electronics Tools\CC78K0R\W2.10\bin\cc78k0r.exe" -cF100964 -y"C:\Program Files\NEC Electronics Tools\DEV" -_msgoff -irenge -i"C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r" -ms -quvjl3wt -sainter_asm -zp -no magic.c
|
"C:\Program Files\NEC Electronics Tools\CC78K0R\W2.10\bin\cc78k0r.exe" -c9F0104 -y"C:\Program Files\NEC Electronics Tools\DEV" -_msgoff -irenge -i"C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r" -ms -quvjl3wt -sainter_asm -zp -no magic.c
|
||||||
Compilation complete, 0 error(s) and 0 warning(s) found.
|
Compilation complete, 0 error(s) and 0 warning(s) found.
|
||||||
"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\ra78k0r.exe" -cF100964 -y"C:\Program Files\NEC Electronics Tools\DEV" -_msgoff inter_asm\magic.asm
|
"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\ra78k0r.exe" -c9F0104 -y"C:\Program Files\NEC Electronics Tools\DEV" -_msgoff inter_asm\magic.asm
|
||||||
|
Assembly complete, 0 error(s) and 0 warning(s) found.
|
||||||
|
"C:\Program Files\NEC Electronics Tools\CC78K0R\W2.10\bin\cc78k0r.exe" -c9F0104 -y"C:\Program Files\NEC Electronics Tools\DEV" -_msgoff -irenge -i"C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r" -ms -quvjl3wt -sainter_asm -zp -no renge\renge.c
|
||||||
|
renge\renge.c(143) : CC78K0R warning W0401: Conversion may lose significant digits
|
||||||
|
Compilation complete, 0 error(s) and 1 warning(s) found.
|
||||||
|
"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\ra78k0r.exe" -c9F0104 -y"C:\Program Files\NEC Electronics Tools\DEV" -_msgoff inter_asm\renge.asm
|
||||||
Assembly complete, 0 error(s) and 0 warning(s) found.
|
Assembly complete, 0 error(s) and 0 warning(s) found.
|
||||||
"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lk78k0r.exe" -y"C:\Program Files\NEC Electronics Tools\DEV" -_msgoff -obsr.lmf "..\..\Program Files\NEC Electronics Tools\CC78K0R\W2.10\lib78k0r\s0rm.rel" -go85h,0FC00h,1024 -gi0FFFFFFFFFFFFFFFFFFFFh -pbsr_k0r.map -nkd -kp -gb6EFBFFh -b"C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib" -bcl0rdm.lib -bcl0rm.lib -bcl0rmf.lib -i"C:\Program Files\NEC Electronics Tools\CC78K0R\W2.10\lib78k0r" -dbsr_mcu.dr -s -w0 loader.rel pm.rel i2c_ctr.rel main.rel magic.rel WDT.rel i2c_mcu.rel i2c_twl.rel ini_VECT.rel led.rel rtc.rel vreg_ctr.rel vreg_twl.rel adc.rel renge.rel accero.rel self_flash.rel reboot.rel sw.rel task_debug.rel task_misc.rel task_sys.rel
|
"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lk78k0r.exe" -y"C:\Program Files\NEC Electronics Tools\DEV" -_msgoff -obsr.lmf "..\..\Program Files\NEC Electronics Tools\CC78K0R\W2.10\lib78k0r\s0rm.rel" -go85h,0FC00h,1024 -gi0FFFFFFFFFFFFFFFFFFFFh -pbsr_k0r.map -nkd -kp -gb6EFBFFh -b"C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib" -bcl0rdm.lib -bcl0rm.lib -bcl0rmf.lib -i"C:\Program Files\NEC Electronics Tools\CC78K0R\W2.10\lib78k0r" -dbsr_mcu.dr -s -w0 loader.rel pm.rel i2c_ctr.rel main.rel magic.rel WDT.rel i2c_mcu.rel i2c_twl.rel ini_VECT.rel led.rel rtc.rel vreg_ctr.rel vreg_twl.rel adc.rel renge.rel accero.rel self_flash.rel reboot.rel sw.rel task_debug.rel task_misc.rel task_sys.rel
|
||||||
Link complete, 0 error(s) and 0 warning(s) found.
|
Link complete, 0 error(s) and 0 warning(s) found.
|
||||||
@ -13,4 +18,4 @@ intel-HEX to bsr bin converter
|
|||||||
file converted!
|
file converted!
|
||||||
|
|
||||||
|
|
||||||
Build Total error(s) : 0 Total warning(s) : 0
|
Build Total error(s) : 0 Total warning(s) : 1
|
||||||
|
|||||||
@ -2,9 +2,9 @@
|
|||||||
Ver=200
|
Ver=200
|
||||||
Target=IDK0R32G
|
Target=IDK0R32G
|
||||||
[Configuration]
|
[Configuration]
|
||||||
Chip=uPD78F1009_64
|
Chip=uPD79F0104
|
||||||
Internal Rom=64KB
|
Internal Rom=32KB
|
||||||
Internal Ram=3072B
|
Internal Ram=1536B
|
||||||
Clock=Target
|
Clock=Target
|
||||||
Sub Clock=Target
|
Sub Clock=Target
|
||||||
Peripheral Break=0x2
|
Peripheral Break=0x2
|
||||||
@ -23,7 +23,7 @@ SubClock=None
|
|||||||
Count=0
|
Count=0
|
||||||
[Main]
|
[Main]
|
||||||
Geometry=66, 66, 1467, 1110
|
Geometry=66, 66, 1467, 1110
|
||||||
Window=Max
|
Window=Normal
|
||||||
MDI_MAX=OFF
|
MDI_MAX=OFF
|
||||||
Button=ON
|
Button=ON
|
||||||
Mode=Auto
|
Mode=Auto
|
||||||
@ -78,7 +78,7 @@ Symbol Type=OFF
|
|||||||
Language=C
|
Language=C
|
||||||
Kanji=SJIS
|
Kanji=SJIS
|
||||||
[Source]
|
[Source]
|
||||||
Geometry=135, 77, 904, 1014
|
Geometry=135, 77, 974, 1014
|
||||||
Window=Normal
|
Window=Normal
|
||||||
DispStart=31
|
DispStart=31
|
||||||
CaretPos=87,0
|
CaretPos=87,0
|
||||||
@ -142,16 +142,56 @@ Accumulative=ON
|
|||||||
[Source1]
|
[Source1]
|
||||||
Geometry=0, 0, 904, 1014
|
Geometry=0, 0, 904, 1014
|
||||||
Window=Normal
|
Window=Normal
|
||||||
DispStart=320
|
DispStart=318
|
||||||
CaretPos=1,0
|
CaretPos=319,0
|
||||||
Mode=Normal
|
Mode=Normal
|
||||||
DispFile=pm.c
|
DispFile=pm.c
|
||||||
Accumulative=ON
|
Accumulative=ON
|
||||||
|
[Source2]
|
||||||
|
Geometry=0, 0, 904, 1014
|
||||||
|
Window=Normal
|
||||||
|
DispStart=159
|
||||||
|
CaretPos=160,0
|
||||||
|
Mode=Normal
|
||||||
|
DispFile=pm.c
|
||||||
|
Accumulative=ON
|
||||||
|
[Source3]
|
||||||
|
Geometry=25, 25, 904, 1014
|
||||||
|
Window=Normal
|
||||||
|
DispStart=24
|
||||||
|
CaretPos=25,0
|
||||||
|
Mode=Normal
|
||||||
|
DispFile=vreg_twl.c
|
||||||
|
Accumulative=ON
|
||||||
|
[Source4]
|
||||||
|
Geometry=50, 50, 904, 1014
|
||||||
|
Window=Normal
|
||||||
|
DispStart=271
|
||||||
|
CaretPos=272,0
|
||||||
|
Mode=Normal
|
||||||
|
DispFile=vreg_ctr.c
|
||||||
|
Accumulative=ON
|
||||||
|
[Source5]
|
||||||
|
Geometry=75, 75, 904, 1014
|
||||||
|
Window=Normal
|
||||||
|
DispStart=115
|
||||||
|
CaretPos=116,0
|
||||||
|
Mode=Normal
|
||||||
|
DispFile=task_misc.c
|
||||||
|
Accumulative=ON
|
||||||
|
[Source6]
|
||||||
|
Geometry=0, 0, 974, 1014
|
||||||
|
Window=Normal
|
||||||
|
DispStart=72
|
||||||
|
CaretPos=143,0
|
||||||
|
Mode=Normal
|
||||||
|
DispFile=vreg_ctr.c
|
||||||
|
Accumulative=ON
|
||||||
[Assemble]
|
[Assemble]
|
||||||
Geometry=605, 2, 600, 400
|
Geometry=605, 2, 600, 400
|
||||||
Window=Normal
|
Window=Normal
|
||||||
DispStart=674
|
DispStart=687
|
||||||
CaretPos=674,27
|
CaretPos=687,27
|
||||||
Address1=
|
Address1=
|
||||||
Address2=
|
Address2=
|
||||||
Address3=
|
Address3=
|
||||||
@ -866,41 +906,43 @@ Count=0
|
|||||||
Geometry=1145, 8, 440, 1086
|
Geometry=1145, 8, 440, 1086
|
||||||
Window=Normal
|
Window=Normal
|
||||||
Boundary=13762700
|
Boundary=13762700
|
||||||
0=.blset,P,N,A,+,1
|
0=.data,P,N,A,+,1
|
||||||
1=.blset,P,N,A,+,1
|
1=.vreg_twl,P,N,A,+,1
|
||||||
2=.pool,P,N,A,+,1
|
2=.blset,P,N,A,+,1
|
||||||
3=.hyst_pedometer,.,N,A,+,1
|
3=.blset,P,N,A,+,1
|
||||||
4=.P5.3,P,S,A,+,1
|
4=.pool,P,N,A,+,1
|
||||||
5=.PM5.3,P,S,A,+,1
|
5=.hyst_pedometer,.,N,A,+,1
|
||||||
6=.RTCEN,P,S,A,+,1
|
6=.P5.3,P,S,A,+,1
|
||||||
7=.tasks_immed,P,N,A,+,1
|
7=.PM5.3,P,S,A,+,1
|
||||||
8=.system_status,.,N,A,+,1
|
8=.RTCEN,P,S,A,+,1
|
||||||
9=.hyst_pedometer,.,N,A,+,1
|
9=.tasks_immed,P,N,A,+,1
|
||||||
10=.pool,P,N,A,+,1
|
10=.system_status,.,N,A,+,1
|
||||||
11=.last_year,P,N,A,+,1
|
11=.hyst_pedometer,.,N,A,+,1
|
||||||
12=.last_month,P,N,A,+,1
|
12=.pool,P,N,A,+,1
|
||||||
13=.last_day,P,N,A,+,1
|
13=.last_year,P,N,A,+,1
|
||||||
14=.last_hour,P,N,A,+,1
|
14=.last_month,P,N,A,+,1
|
||||||
15=.p_record,P,N,A,+,1
|
15=.last_day,P,N,A,+,1
|
||||||
16=.vreg_ctr[0x60],P,N,A,+,1
|
16=.last_hour,P,N,A,+,1
|
||||||
Line=17
|
17=.p_record,P,N,A,+,1
|
||||||
|
18=.vreg_ctr[0x60],P,N,A,+,1
|
||||||
|
Line=19
|
||||||
[Quick Watch]
|
[Quick Watch]
|
||||||
0=last_hour,P,A,1
|
0=last_day,P,A,1
|
||||||
1=last_day,P,A,1
|
1=last_month,P,A,1
|
||||||
2=last_month,P,A,1
|
2=last_year,P,A,1
|
||||||
3=last_year,P,A,1
|
3=p_record,P,A,1
|
||||||
4=p_record,P,A,1
|
4=vreg_ctr,P,A,1
|
||||||
5=vreg_ctr,P,A,1
|
5=vreg_ctr[0x60],P,A,1
|
||||||
6=vreg_ctr[0x60],P,A,1
|
6=RTCEN,P,A,1
|
||||||
7=RTCEN,P,A,1
|
7=system_status,P,A,1
|
||||||
8=system_status,P,A,1
|
8=tasks_immed,P,A,1
|
||||||
9=tasks_immed,P,A,1
|
9=PM5.3,P,A,1
|
||||||
10=PM5.3,P,A,1
|
10=P5.3,P,A,1
|
||||||
11=P5.3,P,A,1
|
11=hyst_pedometer,P,A,1
|
||||||
12=hyst_pedometer,P,A,1
|
12=pool,P,A,1
|
||||||
13=pool,P,A,1
|
13=blset,P,A,1
|
||||||
14=blset,P,A,1
|
14=vreg_twl,P,A,1
|
||||||
15=
|
15=data,P,A,1
|
||||||
[Software Break]
|
[Software Break]
|
||||||
Geometry=25, 25, 500, 428
|
Geometry=25, 25, 500, 428
|
||||||
Window=Normal
|
Window=Normal
|
||||||
@ -914,14 +956,10 @@ Address1=accero.c#_hosu_increment+0x52
|
|||||||
Window1=ASM
|
Window1=ASM
|
||||||
Status1=ON
|
Status1=ON
|
||||||
Name2=Swb00006
|
Name2=Swb00006
|
||||||
Address2=pm.c#es_F0132+0x38
|
Address2=pm.c#_PM_init+0x38
|
||||||
Window2=ASM
|
Window2=ASM
|
||||||
Status2=OFF
|
Status2=OFF
|
||||||
Name3=Swb00003
|
Count=3
|
||||||
Address3=pm.c#_PM_BL_set+0x51
|
|
||||||
Window3=ASM
|
|
||||||
Status3=ON
|
|
||||||
Count=4
|
|
||||||
[Reset]
|
[Reset]
|
||||||
Debugger=ON
|
Debugger=ON
|
||||||
Symbol=OFF
|
Symbol=OFF
|
||||||
|
|||||||
@ -3,8 +3,8 @@ Version=6.00
|
|||||||
Path=C:\78k_data\yav-mcu-basara\
|
Path=C:\78k_data\yav-mcu-basara\
|
||||||
Title=yav-mcu
|
Title=yav-mcu
|
||||||
Series=78K0R.PM
|
Series=78K0R.PM
|
||||||
Device=uPD78F1009_64
|
Device=uPD79F0104
|
||||||
DeviceVer=V1.11
|
DeviceVer=E1.00b
|
||||||
DebugMode=1
|
DebugMode=1
|
||||||
Target=C:\78k_data\yav-mcu-basara\bsr.lmf
|
Target=C:\78k_data\yav-mcu-basara\bsr.lmf
|
||||||
[BuildMode0]
|
[BuildMode0]
|
||||||
|
|||||||
@ -10,11 +10,12 @@ OpenFile3=bsr_mcu.dr,0,198,198,1177,834,0,54,0,0
|
|||||||
OpenFile4=adc.c,0,220,220,1199,856,0,112,0,0
|
OpenFile4=adc.c,0,220,220,1199,856,0,112,0,0
|
||||||
OpenFile5=loader.c,0,266,31,1510,788,23,43,23,0
|
OpenFile5=loader.c,0,266,31,1510,788,23,43,23,0
|
||||||
OpenFile6=sw.c,0,132,132,1376,889,0,166,17,0
|
OpenFile6=sw.c,0,132,132,1376,889,0,166,17,0
|
||||||
OpenFile7=pm.c,0,421,154,1400,790,45,281,35,0
|
OpenFile7=pm.c,0,421,154,1400,790,25,271,0,0
|
||||||
OpenFile8=OutputWindow
|
OpenFile8=config.h,0,282,262,1526,1019,0,17,19,0
|
||||||
OutputPos=0,229,1000,411,1513
|
OpenFile9=ProjectWindow
|
||||||
OpenFile9=config.h,0,286,286,1530,1043,0,17,19,0
|
|
||||||
OpenFile10=ProjectWindow
|
|
||||||
PrjPos=0,2,754,3,253
|
PrjPos=0,2,754,3,253
|
||||||
|
OpenFile10=OutputWindow
|
||||||
|
OutputPos=0,229,1000,411,1513
|
||||||
|
ActivePRJ=yav_mcu_bsr.prj
|
||||||
[ProjectWindow]
|
[ProjectWindow]
|
||||||
ProjectWindowDispType=0
|
ProjectWindowDispType=0
|
||||||
|
|||||||
@ -11,7 +11,7 @@ T=4b1efd24
|
|||||||
7=rtc.h
|
7=rtc.h
|
||||||
8=reboot.h
|
8=reboot.h
|
||||||
[pm.c]
|
[pm.c]
|
||||||
T=4b26ee13
|
T=4b2f0666
|
||||||
1=incs.h
|
1=incs.h
|
||||||
2=adc.h
|
2=adc.h
|
||||||
3=led.h
|
3=led.h
|
||||||
@ -30,7 +30,7 @@ T=4b25f14b
|
|||||||
6=led.h
|
6=led.h
|
||||||
7=adc.h
|
7=adc.h
|
||||||
[magic.c]
|
[magic.c]
|
||||||
T=4b261749
|
T=4b2b2791
|
||||||
1=config.h
|
1=config.h
|
||||||
[WDT.c]
|
[WDT.c]
|
||||||
T=4afd21ca
|
T=4afd21ca
|
||||||
@ -47,7 +47,7 @@ T=4b03aa74
|
|||||||
T=4afd21ca
|
T=4afd21ca
|
||||||
1=config.h
|
1=config.h
|
||||||
[led.c]
|
[led.c]
|
||||||
T=4b0499ab
|
T=4b2f279a
|
||||||
1=incs.h
|
1=incs.h
|
||||||
2=led.h
|
2=led.h
|
||||||
[rtc.c]
|
[rtc.c]
|
||||||
@ -113,7 +113,7 @@ T=4b14e842
|
|||||||
3=pm.h
|
3=pm.h
|
||||||
4=accero.h
|
4=accero.h
|
||||||
[task_misc.c]
|
[task_misc.c]
|
||||||
T=4b0b8f86
|
T=4b277423
|
||||||
1=incs.h
|
1=incs.h
|
||||||
2=renge\renge.h
|
2=renge\renge.h
|
||||||
3=pm.h
|
3=pm.h
|
||||||
@ -146,7 +146,7 @@ T=4b023fdb
|
|||||||
T=4b1cdaa0
|
T=4b1cdaa0
|
||||||
1=config.h
|
1=config.h
|
||||||
[config.h]
|
[config.h]
|
||||||
T=4b2615c6
|
T=4b2f27c7
|
||||||
[bsr_system.h]
|
[bsr_system.h]
|
||||||
T=4afd21ca
|
T=4afd21ca
|
||||||
[renge\renge.h]
|
[renge\renge.h]
|
||||||
@ -159,7 +159,7 @@ T=4b024862
|
|||||||
T=4afa8168
|
T=4afa8168
|
||||||
1=renge\renge_defs.h
|
1=renge\renge_defs.h
|
||||||
[vreg_ctr.h]
|
[vreg_ctr.h]
|
||||||
T=4b25ede2
|
T=4b277ab7
|
||||||
1=config.h
|
1=config.h
|
||||||
[loader.h]
|
[loader.h]
|
||||||
T=4afd21ca
|
T=4afd21ca
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user