|
・製作34の内容で訂正です。
(3)ヘッダ付きデータの受信ルーチン ×)エントリ:$FC68、ワークエリアにデータを設定しコールする ○)エントリ:$FC79、ワークエリアにデータを設定しコールする Linuxのコンソール環境ではオート変数等で下を追加して #define FT245RL_BROCK2 16 // 20190718 int i, brock; int top_adr, btm_adr, tmp_adr; unsigned char RCV_buf[128]; ・送受信処理ループを下のように書き換えて下さい // 送受信処理ループ // 20190718 file = fopen( "sirial_20190718.dat", "wb" ); if (NULL == file){ close(fd); printf("fopen error\n"); return -4; } do { len = read(fd, RCV_buf, FT245RL_BROCK2); } while(len == 0); printf("len %0d\n",len); tmp_adr = (int)RCV_buf[2]; top_adr = 256 * tmp_adr + (int)RCV_buf[3]; tmp_adr = (int)RCV_buf[4]; btm_adr = 256 * tmp_adr + (int)RCV_buf[5]; brock = (btm_adr - top_adr) / FT245RL_BROCK2; printf("brock %0d\n",brock); for (i = 0; brock > i; i++) { len = read(fd, RCV_buf, FT245RL_BROCK2); // memcpy(getbuf_data + (i* FT245RL_BROCK2), RCV_buf, FT245RL_BROCK2); fwrite(RCV_buf, 1, FT245RL_BROCK2, file); } fclose(file); close(fd); // デバイスのクローズ return 0; |

>
- コンピュータとインターネット
>
- コンピュータ
>
- ソフトウェア





