-
大小: 104KB文件類型: .7z金幣: 1下載: 0 次發布日期: 2021-05-23
- 語言: 其他
- 標簽: labwiondows??uart??
資源簡介
lawwindows的串口源碼,這是我寫的第一個上位機程序,參考大神的代碼。希望能對大家有所幫助。另外說一些我對喇叭Windows的理解吧,其實不難的,就是對各種API的調用而已,把這些熟悉了,自己就可以寫了。
代碼片段和文件信息
#include?
#include?
#include?
#include?
#include?“rs.h“
static?int?panelHandle;
int?comSelect=0;
int?status;
char?info[513];
int?CVIFUNC?Dimobject(int?stat)
{
SetCtrlAttribute(panelHandlePANEL_COMSELECTATTR_DIMMEDstat);
SetCtrlAttribute(panelHandlePANEL_BTLSELECTATTR_DIMMEDstat);?
SetCtrlAttribute(panelHandlePANEL_JYSELECTATTR_DIMMEDstat);?
SetCtrlAttribute(panelHandlePANEL_LONGSELECTATTR_DIMMEDstat);?
SetCtrlAttribute(panelHandlePANEL_STOPSELECTATTR_DIMMEDstat);?
SetCtrlAttribute(panelHandlePANEL_OPEN_COMATTR_DIMMEDstat);?
SetCtrlAttribute(panelHandlePANEL_CLOSE_COMATTR_DIMMED!stat);?
SetCtrlAttribute(panelHandlePANEL_SENDATTR_DIMMED!stat);???????????????
SetCtrlAttribute(panelHandlePANEL_CLEARSENDATTR_DIMMED!stat);???????????????
SetCtrlAttribute(panelHandlePANEL_RECIEVEATTR_DIMMED!stat);???????????????
SetCtrlAttribute(panelHandlePANEL_CLEARRECIVEATTR_DIMMED!stat);???????????????
return?0;
}
int?main?(int?argc?char?*argv[])
{
if?(InitCVIRTE?(0?argv?0)?==?0)
return?-1; /*?out?of?memory?*/
if?((panelHandle?=?LoadPanel?(0?“rs.uir“?PANEL))?0)
return?-1;
DisplayPanel?(panelHandle);
RunUserInterface?();
DiscardPanel?(panelHandle);
return?0;
}
int?CVICALLBACK?MainCallBack(int?panelint?eventvoid*?callbackDataint?eventData1int?evetData2)
{
??switch(event)
??{
??case?EVENT_GOT_FOCUS:
??break;
??
??case?EVENT_LOST_FOCUS:
??
??break;
??case?EVENT_CLOSE:
??
??QuitUserInterface(0);
??
??break;
??
??}
??return?0;
}
int?CVICALLBACK?ComeOpen?(int?panel?int?control?int?event
??void?*callbackData?int?eventData1?int?eventData2)
{
int?comValuebtlValuejhValuelongValuestopValue;
char??v[100];
switch?(event)
{
case?EVENT_COMMIT:
GetCtrlVal(PANELPANEL_COMSELECT&comValue);
GetCtrlVal(PANELPANEL_BTLSELECT&btlValue);
GetCtrlVal(PANELPANEL_JYSELECT&jhValue);????
GetCtrlVal(PANELPANEL_LONGSELECT&longValue);????
GetCtrlVal(PANELPANEL_STOPSELECT&stopValue);????
status=OpenComConfig(comValue““btlValuejhValuelongValuestopValue512512);
//sprintf(v“=%d“status);
//SetCtrlVal(panelHandlePANEL_Valuev);
if(status!=0)
{
MessagePopup(“Error““config?open?failed“);
return?0;
}
SetCTSMode(comValueLWRS_HWHANDSHAKE_OFF);
FlushInQ(comValue);
FlushOutQ(comValue);
comSelect=comValue;
Dimobject(1);
break;
}
return?0;
}
int?CVICALLBACK?ComeClose?(int?panel?int?control?int?event
???void?*callbackData?int?eventData1?int?eventData2)
{
switch?(event)
{
case?EVENT_COMMIT:
CloseCom(comSelect);
comSelect=0;
Dimobject(0);
break;
}
return?0;
}
int?CVICALLBACK?Quit?(int?panel?int?control?int?event
??void?*callbackData?int?eventData1?int?eventData2)
{
switch?(e
- 上一篇:基于stm32的12864液晶屏的顯示代碼
- 下一篇:消息隊列通信設計
評論
共有 條評論