Untitled
マイクロマウス十則
マウス十則(1) 練習で1割の確率で発現するトラブルは、本番では9割の確率で発現する 
マウス十則(2) 練習で動かないマウスが、本番で急に動けるようになることはない
マウス十則(3) 設計時に「これくらい、大丈夫だろう」と思ったことの9割は大丈夫でない
マウス十則(4) 理論的には効果的であるはずのことの3割程度が実際に有効である
マウス十則(5) 理論的に問題となることの10割が実際に問題となる
マウス十則(6) ある欠陥は、その欠陥の全体に占める割合に関係なく全体を駄目にする
マウス十則(7) ハードウェアの欠陥をソフトウェアでカバーすることはできない
マウス十則(8) ソフトウェアの欠陥をハードウェアでカバーすることはできない
マウス十則(9) 探索の安定性>最短の安定性>最短の速度>探索の速度 の順で優先される
マウス十則(10) これらの法則を知らないと負けるが、知っていても別に勝てるわけではない
そーすヽ(・∀・ )ノ

これで動いてくれるんだから怖いよね

#include <3664.h>

int murai=0;

int sasaki=0;

int flag1=0;

int flag2=0;

int end=0;

/* 時間をかせぐ関数 */

void msecwait(int msec)

{

int i,j;

for(i=0;i<msec;i++)

{

for(j=0;j<1588;j++);

}

}

int main(void)

{

IO.PMR1.BYTE=0x00; /* Port5の初期化 */

IO.PCR1=0xF0; /* Port1を1111 0000に設定 */

  IO.PMR5.BYTE=0x00;

  IO.PCR5=0xFF; /* 1111 1111 */

IO.PUCR5.BYTE=0x00; /* プルアップなし */

  AD.ADCSR.BIT.ADST = 0;      /* A/D変換停止 */

  AD.ADCSR.BIT.SCAN = 1;      /* スキャンモード */

  AD.ADCSR.BIT.CKS  = 1;      /* 高速変換 */

  AD.ADCSR.BIT.CH   = 3;      /* AN0-AN3 */

  AD.ADCSR.BIT.ADST = 1;      /* A/D変換スタート */

  while(AD.ADCSR.BIT.ADF==0){}

  while(1){

    IO.PDR1.BIT.B4=(AD.ADDRA » 15) ;

    IO.PDR1.BIT.B5=(AD.ADDRB » 15) ;

    IO.PDR1.BIT.B6=(AD.ADDRC » 15) ;

    IO.PDR1.BIT.B7=(AD.ADDRD » 15) ;

    /* 3回線をまたぎ終えたあとの次の線に反応して右回転する */

    /* flag1=0 */

    if(sasaki==2 && IO.PDR1.BIT.B5>0 && IO.PDR1.BIT.B6>0 && IO.PDR1.BIT.B4>0 && IO.PDR1.BIT.B7>0 && flag1==0)

    {

    IO.PDR5.BIT.B0=1;

    IO.PDR5.BIT.B1=0;

    IO.PDR5.BIT.B2=0;

    IO.PDR5.BIT.B3=1;

    msecwait(725);

    IO.PDR5.BIT.B0=1;

    IO.PDR5.BIT.B1=0;

    IO.PDR5.BIT.B2=1;

    IO.PDR5.BIT.B3=0;

    msecwait(100);

    murai=0;

    sasaki=0;

    flag1=1;

    }

    /* 変数flag1でフラグ管理 */

    /* 6回線をまたぎ終えたあとの次の線に反応して右回転する */

    /* flag1=1 */

    if(sasaki==6 && IO.PDR1.BIT.B5>0 && IO.PDR1.BIT.B6>0 && IO.PDR1.BIT.B4>0 && IO.PDR1.BIT.B7>0 && flag1==1)

    {

    IO.PDR5.BIT.B0=1;

    IO.PDR5.BIT.B1=0;

    IO.PDR5.BIT.B2=0;

    IO.PDR5.BIT.B3=1;

    msecwait(700);

    IO.PDR5.BIT.B0=1;

    IO.PDR5.BIT.B1=0;

    IO.PDR5.BIT.B2=1;

    IO.PDR5.BIT.B3=0;

    msecwait(100);

    murai=0;

    sasaki=0;

    flag2=1;

    flag1=2;

    }

    /* 変数flag1,flag2でフラグ管理 */

    /* 右旋回した後、1回線をまたいだ後の次の線に反応して後退する */

    /* flag1=2 */

    if(flag1==2 && sasaki==1 && IO.PDR1.BIT.B5>0 && IO.PDR1.BIT.B6>0 && IO.PDR1.BIT.B4>0 && IO.PDR1.BIT.B7>0)

    {

    IO.PDR5.BIT.B0=0;

    IO.PDR5.BIT.B1=1;

    IO.PDR5.BIT.B2=0;

    IO.PDR5.BIT.B3=1;

    msecwait(1500);

    murai=0;

    sasaki=0;

    end=1;

    flag1=3;

    flag2=0;

    }

    /* end=1でフラグ管理 */

        /* Stop   0000 0000*/

    if(IO.PDR1.BIT.B4>0 && IO.PDR1.BIT.B7>0)

    {

    IO.PDR5.BIT.B0=0;

    IO.PDR5.BIT.B1=0;

    IO.PDR5.BIT.B2=0;

    IO.PDR5.BIT.B3=0;

    msecwait(50);

    IO.PDR5.BIT.B0=1;

    IO.PDR5.BIT.B1=0;

    IO.PDR5.BIT.B2=1;

    IO.PDR5.BIT.B3=0;

    msecwait(25);

    }

    /* sasetsu       0000 0010 */

    if(IO.PDR1.BIT.B4>0 && IO.PDR1.BIT.B7==0)

    {

    IO.PDR5.BIT.B0=0;

    IO.PDR5.BIT.B1=0;

    IO.PDR5.BIT.B2=1;

    IO.PDR5.BIT.B3=0;

    }

    /* usetsu      0000 1000 */

    if(IO.PDR1.BIT.B4==0 && IO.PDR1.BIT.B7>0)

    {

    IO.PDR5.BIT.B0=1;

    IO.PDR5.BIT.B1=0;

    IO.PDR5.BIT.B2=0;

    IO.PDR5.BIT.B3=0;

    }

    /* massugu 0000 1010 */

    if(IO.PDR1.BIT.B4==0 && IO.PDR1.BIT.B7==0)

    {

    IO.PDR5.BIT.B0=1;

    IO.PDR5.BIT.B1=0;

    IO.PDR5.BIT.B2=1;

    IO.PDR5.BIT.B3=0;

    }

    /* 線の上に乗っかると1になり、線をまたぎ終わると0になる変数murai */

    if(IO.PDR1.BIT.B4>0 && IO.PDR1.BIT.B7>0)

    {

      murai=1;

    }

    /* 変数muraiを監視して何度線をまたいだかを記録する変数sasaki */

    if(IO.PDR1.BIT.B7==0 && IO.PDR1.BIT.B4==0 && murai==1)

    {

    murai=0;

    sasaki=sasaki+1;

    }

    /* 後退したのち、ストップする */

    /* flag1=3 */

   if(flag1==3)

   {

       flag1=4;

   IO.PDR5.BIT.B0=0;

   IO.PDR5.BIT.B1=0;

   IO.PDR5.BIT.B2=0;

   IO.PDR5.BIT.B3=0;

    msecwait(50);

   IO.PDR5.BIT.B6=1;

   IO.PDR5.BIT.B7=0;

   msecwait(70);

   IO.PDR5.BIT.B6=0;

   IO.PDR5.BIT.B7=0;

     IO.PMR5.BYTE=0x00;

    }

    /* 全てのflagを回収し終えてから */

    /* flag1=4 */

    if(flag1==4)

    {

    IO.PMR5.BYTE=0x00;

    while(1)

    IO.PDR1.BIT.B4=1;

    IO.PDR1.BIT.B5=0;

    IO.PDR1.BIT.B6=1;

    IO.PDR1.BIT.B7=0;

    IO.PMR5.BYTE=0x00;

    msecwait(100);

    IO.PDR1.BIT.B4=0;

    IO.PDR1.BIT.B5=1;

    IO.PDR1.BIT.B6=0;

    IO.PDR1.BIT.B7=1;

    msecwait(100);

    }

    }

  return(0);

}

義務教育

学校教育法に「義務教育として行われる普通教育」については次のように定められる。

第21条 義務教育として行われる普通教育は、教育基本法(平成18年法律第120号)第5条第2項に規定する目的を実現するため、次に掲げる目標を達成するよう行われるものとする。
学校内外における社会的活動を促進し、自主、自律及び協同の精神、規範意識、公正な判断力並びに公共の精神に基づき主体的に社会の形成に参画し、その発展に寄与する態度を養うこと。
学校内外における自然体験活動を促進し、生命及び自然を尊重する精神並びに環境の保全に寄与する態度を養うこと。
我が国と郷土の現状と歴史について、正しい理解に導き、伝統と文化を尊重し、それらをはぐくんできた我が国と郷土を愛する態度を養うとともに、進んで外国の文化の理解を通じて、他国を尊重し、国際社会の平和と発展に寄与する態度を養うこと。
家族と家庭の役割、生活に必要な衣、食、住、情報、産業その他の事項について基礎的な理解と技能を養うこと。
読書に親しませ、生活に必要な国語を正しく理解し、使用する基礎的な能力を養うこと。
生活に必要な数量的な関係を正しく理解し、処理する基礎的な能力を養うこと。
生活にかかわる自然現象について、観察及び実験を通じて、科学的に理解し、処理する基礎的な能力を養うこと。
健康、安全で幸福な生活のために必要な習慣を養うとともに、運動を通じて体力を養い、心身の調和的発達を図ること。
生活を明るく豊かにする音楽、美術、文芸その他の芸術について基礎的な理解と技能を養うこと。
職業についての基礎的な知識と技能、勤労を重んずる態度及び個性に応じて将来の進路を選択する能力を養うこと。

仕事の効率をアップさせるためにネイチャーサウンドを流すフリーソフト「Aura」

再帰呼び出し

ゾンビ三原則

・ゾンビは走ってはならない
・ゾンビは考えてはならない
・ゾンビは喋ってはならない