あとすこしのはず・・・

g4vehicle2006-12-01

G4 生産情報
2006/11/20
<<<11月中に進んだ作業と進捗状況 + α>>>

□タスク設計
  ・PAD
コントロール、駆動用モータ、ソーラーモード等の各タスクのPADを作成

  ・プログラム
作成したPADをもとにタスク毎のプログラム作成

現在、完成した各タスクを結合し基本プログラムを作成中

□無線CF
ボードが届いたので通信プログラムの実験
今年作成した通信プログラムを使い
・去年のマイコンでの無線アクセスを確認
・今年のマイコンでの無線アクセスを確認
以上より、マイコンへ無線でのアクセスは完了したと言える
しかし、ボードの無線CF接続部の接触が不安定なため
無線アクセスが上手くいかない時がある
今後、電子科と話し合う必要がある

現在、PC側からマイコンにモータを回転させる命令等を送るプログラムを作成中

○AD変換について注意
H8/3069FでAD変換を行う際、CN1のAVcc、Vrefピンに5Vを流さないといけない

○無線CF、RAM環境について注意
今年度の実験ボードを用い、RAMでプログラムを動かす時実験ボード上の無線CFが正しく動いていれば通信は成功する
なかなか通信が成功しない場合は、一旦ROM書き込みで動かし無線CFが安定して動くまで無線CFを調整する必要がある

<A/D変換プログラム>
注意:H8・3069fでの動作確認
注意:AVcc Vrefピンに5Vを入力
task2を見て.
#include
#include"kernel_id.h"
#include"main.h"
#include<3069f.h>
#include

void
task0(VP_INT exinf)
{
lcd_display_on();
act_tsk( TASK1 );
act_tsk( TASK2 );
}
void
task1( VP_INT einf )
{
int i;
char data1[]="solar_panel";

for(i=0;i<=11;i++){
lcd_cursor_set( 0,i );
lcd_put_char( data1[i] );
}
}

void
wait(long Loop)
{
while(Loop--);
}

void/*AD変換*/
task2( VP_INT exinf )
{
int adval;
int dh;
unsigned int dl;
volatile int w;
int a,b,i;
float v,t;
long ldata;
unsigned short data;
ADCSR = 0x0c;
while(1){
b=0;
w=ADCSR;
ADCSR = 0x2c;
while(!(ADCSR&0x8c)){
syslog(LOG_NOTICE,"待機");
}
a=ADDRA>>6;
b+=a;
syslog(LOG_NOTICE,"b=%d",b);

dly_tsk(1000);

ADCSR=0x00;

}
}