📄 receive.c
字号:
#include <ansi_c.h>#include <utility.h>#include <rs232.h>#include <formatio.h>#include <cvirte.h> /* Needed if linking in external compiler; harmless otherwise */#include <userint.h>#include "receive.h"static int panelHandle;char com[10]={"COM2"},filename[260]={"2.txt"};double elapse=30.0;int main (int argc, char *argv[]){ if (InitCVIRTE (0, argv, 0) == 0) /* Needed if linking in external compiler; harmless otherwise */ return -1; /* out of memory */ if ((panelHandle = LoadPanel (0, "receive.uir", PANEL)) < 0) return -1; DisplayPanel (panelHandle); RunUserInterface (); return 0;}int CVICALLBACK Selectfile (int panel, int control, int event, void *callbackData, int eventData1, int eventData2){ int status; FILE *fp; switch (event) { case EVENT_COMMIT: status=FileSelectPopup ( "c:\\", "*.txt", "*.*", "", VAL_OK_BUTTON, 0, 0, 1, 1, filename); if(status==VAL_NEW_FILE_SELECTED) { fp=fopen(filename,"w"); fclose(fp); } SetCtrlVal (panelHandle, PANEL_TEXTMSG, filename); break; } return 0;}int CVICALLBACK Receive (int panel, int control, int event, void *callbackData, int eventData1, int eventData2){ char *buf; FILE *fp; long size=0; switch (event) { case EVENT_COMMIT: buf=malloc(100000); DisableBreakOnLibraryErrors (); OpenComConfig (1,com, 9600, 0, 8, 1,100000, 100000); EnableBreakOnLibraryErrors (); FlushInQ (1); SetXMode (1, 0); SetCTSMode (1, LWRS_HWHANDSHAKE_OFF); SetComTime (1, elapse); /////////////////// //read file length ComRdTerm (1, buf, 10, 0xff); size=atol(buf); ///////// ///read file content ComRdTerm (1, buf, size, 0xff); fp=fopen(filename,"w"); fprintf(fp,"%s",buf); CloseCom(1); fclose(fp); free(buf); QuitUserInterface (0); break; } return 0;}int CVICALLBACK SetTime (int panel, int control, int event, void *callbackData, int eventData1, int eventData2){ switch (event) { case EVENT_COMMIT: GetCtrlVal (panelHandle, PANEL_NUMERIC, &elapse); break; } return 0;}int CVICALLBACK SelectPort (int panel, int control, int event, void *callbackData, int eventData1, int eventData2){ switch (event) { case EVENT_COMMIT: GetCtrlVal (panelHandle, PANEL_SELECTPORT, com); break; } return 0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -