//////////////////////////////////// // 8k_demo3: Use with F_demo3 // /////////////////////////////////// #include "8000.h" #include "I87kcan.h" #include #include #include void main(void) { int ret; int slot; char command; char StrCount=0,DataStr[100]; Print("\r\n"); Print("/******************************************************/\r\n"); Print("/* 8k_demo3: CAN message to ASCII */\r\n"); Print("/* With Firmware : F_demo3 */\r\n"); Print("/******************************************************/\r\n"); do{ Print("I-87120 slot(0~7):"); Scanf("%d\r\n",&slot); }while((slot<0)||(slot>7)); ret = InstallCom0(115200UL,8,0,1); // Install com port if(ret){ ret = RestoreCom0(); if(ret){ Print("Com 0 restore error, code = %d\r\n",ret); return; } else{ ret = InstallCom0(115200UL,8,0,1); if(ret){ Print("Com 0 install error, code = %d\r\n",ret); return; } } } ChangeToSlot(slot); // 0 1 2 3 4 5 6 7 8 9 A B C // 5K 10K 20K 25K 50K 100K 125K 200K 250K 500K 800K 1M User_define //ToCom0Str("P1B0000\r"); // Set CAN baudrate to 1M bps //ToCom0Str("P200000000FFFFFFFF\r"); // Set Mask // The CAN baudrate and mask had been setting in UserInitFunc of f_demo1 firmware Print("\r\n"); Print("\r\nq.Exit\r\n\r\n"); ClearCom0(); while(1){ if(IsCom(0)){ // Read com port string DataStr[StrCount]=ReadCom(0); if((DataStr[StrCount]==0x0d)){ DataStr[StrCount+1] = 0; StrCount=0; Print("%s",DataStr); } else{ StrCount++; } } command = Kbhit(); if(command){ Getch(); switch(command){ case 'q': { RestoreCom0(); return; } } } } }