2017年11月14日火曜日

ROSとPSoC5LPでUSBUART通信(PSoC編)

前回の投稿からどれだけだったんでしょうね…(^_^;)
第30回ロボットコンテストから早1ヶ月が経とうとしています。
あまり良い成果を残せずに終わってしまった大会でしたが、今回のロボコンを経て学んだことをすこし備忘録として残そうかと思いました。
そしてこれを来年にも活かせるようにしなければな…と思っているわけです。ハイ。
というわけでブログタイトルのようにやって行きたいと思います。
ではでは…
環境
PSoC Creator 4.1
PSoC 5LP Development Kit
ぐらいでいいですかね?(もちろんPrototyping Kitでもできますよ~)

とりあえずぱぱっとUSBUARTのスケッチとコードを貼り付けときます。
(正直USBUARTではわかってないまま使ってる部分が...(;´∀`))

#include<project.h>
#include<stdio.h>


int main()
{
       CyGlobalIntEnable; /* Enable global interrupts. */

      LCD_Char_Start();

      USBUART_Start(0,USBUART_5V_OPERATION);
      while(!USBUART_bGetConfiguration()){}
      USBUART_CDC_Init();

      int count = 0;
      uint8 buff[64] = "";


      while(1)//main loop
      {   

            if(0 != USBUART_GetConfiguration())
            {

                  if(0 != USBUART_DataIsReady())
                  {
                        count = USBUART_GetAll(buff);
                        if( count != 0){

                        while(0 == USBUART_CDCIsReady()){}

                        USBUART_PutChar(buff[0]);

                        LCD_Char_Position(0,0);
                        LCD_Char_PrintNumber(count);
                        LCD_Char_PrintString(buff);

                        if(64 == count){
                              while(0 == USBUART_CDCIsReady()){}
                              //sent zero packet
                              USBUART_PutData(NULL,0);
                        }      
                  }
            }     
       }
}    
}



配線図は以下の通りです。
超シンプル(*´∀`)


この記事と連携させればこぉんな感じで通信できるはずです...





...次の更新はいつになることやら(;´∀`)

0 件のコメント:

コメントを投稿