EQ动态库说明.docx
《EQ动态库说明.docx》由会员分享,可在线阅读,更多相关《EQ动态库说明.docx(17页珍藏版)》请在冰豆网上搜索。
EQ动态库说明
上海诣阔电子科技有限公司
EQ2013
动
态
库
说
明
书
日期:
2012-12-18
一、参数表
1、§窗体设置
typedefstruct
{
intiX;//窗口的起点X
intiY;//窗口的起点Y
intiWidth;//窗体的宽度
intiHeight;//窗体的高度
intiFrameMode;//边框的样式
COLORREFFrameColor;//边框颜色
}User_PartInfo;
2、§字体设置
typedefstruct
{
char*strFontName;//字体的名称
intiFontSize;//字体的大小
BOOLbFontBold;//字体是否加粗
BOOLbFontItaic;//字体是否是斜体
BOOLbFontUnderline;//字体是否带下划线
COLORREFcolorFont;//字体的颜色
intiAlignStyle;//对齐方式
//0-左对齐
//1-居中
//2-右对齐
intiVAlignerStyle;//上下对齐方式
//0-顶对齐
//1-上下居中
//2-底对齐
intiRowSpace;//行间距
}User_FontSet;
3、§动画方式设置
typedefstruct_User_MoveSet
{
intiActionType;//节目变换方式
intiActionSpeed;//节目的播放速度
BOOLbClear;//是否需要清除背景
intiHoldTime;//在屏幕上停留的时间
intiClearSpeed;//清除显示屏的速度
intiClearActionType;//节目清除的变换方式
intiFrameTime;//每帧时间
}User_MoveSet;
动画方式:
iActionType
清除方式:
iClearActionType
0-随机
1-随机
1-翻页
2-快速清除
2-左覆盖
3-左覆盖
3-右覆盖
4-右覆盖
4-上覆盖
5-上覆盖
5-下覆盖
6-下覆盖
6-左上角覆盖(直线)
7-左上角覆盖(直线)
7-右上角覆盖(直线)
8-右上角覆盖(直线)
8-左下角覆盖(直线)
9-左下角覆盖(直线)
9-右下角覆盖(直线)
10-右下角覆盖(直线)
10-左上角覆盖(斜线)
11-左上角覆盖(斜线)
11-右上角覆盖(斜线)
12-右上角覆盖(斜线)
12-左下角覆盖(斜线)
13-左下角覆盖(斜线)
13-右下角覆盖(斜线)
14-右下角覆盖(斜线)
14-水平百叶
15-水平百叶
15-垂直百叶
16-垂直百叶
16-左右对开
17-左右对开
17-上下对开
18-上下对开
18-左右闭合
19-左右闭合
19-上下闭合
20-上下闭合
20-左移
21-左移
21-右移
22-右移
22-上移
23-上移
23-下移
24-下移
24-翻页
25-马赛克(小)
25-翻页
26-马赛克(中)
26-翻页
27-马赛克(大)
27-翻页
28-渐变
28-中间向四周(矩形)
29-中间向四周(矩形)
29-四周向中间(矩形)
30-四周向中间(矩形)
30-中间向四周(十字)
31-中间向四周(十字)
31-四周向中间(十字)
32-四周向中间(十字)
32-中间向四周(菱形)
33-中间向四周(菱形)
33-四周向中间(菱形)
34-四周向中间(菱形)
4、§计时区参数
typedefstruct_User_Timer
{
User_PartInfoPartInfo;//分区信息
COLORREFBkColor;//背景颜色
User_FontSetFontInfo;//字体设置
DWORDReachTimeYear;//到达年
DWORDReachTimeMonth;//到达月
DWORDReachTimeDay;//到达日
DWORDReachTimeHour;//到达时
DWORDReachTimeMinute;//到达分
DWORDReachTimeSecond;//到达秒
BOOLbDay;//是否显示天0-不显示1-显示
BOOLbHour;//是否显示小时
BOOLbMin;//是否显示分钟
BOOLbSec;//是否显示秒
BOOLbMulOrSingleLine;//单行还是多行
char*chTitle;//添加显示文字
}User_Timer;
5、§温度区参数
typedefstruct_User_Temperature
{
User_PartInfoPartInfo;//分区信息
COLORREFBkColor;//背景颜色
User_FontSetFontInfo;//字体设置
char*chTitle;//标题
intDisplayType;//显示格式:
-度1-℃
}User_Temperature;
6、§日期时间区参数
typedefstruct_User_DateTime
{
User_PartInfoPartInfo;//分区信息
COLORREFBkColor;//背景颜色
User_FontSetFontInfo;//字体设置
intiDisplayType;//显示风格
char*chTitle;//添加显示文字
BOOLbYearDisType;//年份位数-;-位
BOOLbMulOrSingleLine;//单行还是多行
BOOLbYear;//是否显示年
BOOLbMouth;//是否显示月
BOOLbDay;//是否显示日
BOOLbWeek;//是否显示星期
BOOLbHour;//是否显示时
BOOLbMin;//是否显示分
BOOLbSec;//是否显示秒
}User_DateTime;
7、§图文区参数
typedefstruct_User_Bmp
{
User_PartInfoPartInfo;//分区信息
}User_Bmp;
8、§单行文本区参数
typedefstruct_User_SingleText
{
char*chContent//显示内容
User_PartInfoPartInfo;//分区信息
COLORREFBkColor;//背景颜色
User_FontSetFontInfo;//字体设置
User_MoveSetMoveSet;//动作方式设置
}User_SingleText;
9、§文本区参数
typedefstruct_User_Text
{
char*chContent;//显示内容
User_PartInfoPartInfo;//分区信息
COLORREFBkColor;//背景颜色
User_FontSetFontInfo;//字体设置
User_MoveSetMoveSet;//动作方式设置
}User_Text;
10、§RTF区参数
typedefstruct_User_RTF
{
char*strFileName;//RTF文件名
User_PartInfoPartInfo;//分区信息
User_MoveSetMoveSet;//动作方式设置
}User_RTF;
二、函数说明
1、§添加节目
intUser_AddProgram(intCardNum,BOOLbWaitToEnd,intiPlayTime);
函数功能:
添加节目索引
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
bWaitToEnd-TRUE等待节目播放完成再播放下个节目
FALSE节目播放时间为iPlayTime
iPlayTime-节目播放时间,单位为秒
返回值:
节目索引号
2、§添加图文区
intUser_AddBmpZone(intCardNum,User_Bmp*pBmp,intiProgramIndex);
函数功能:
添加图文区
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
pBmp-图文区参数表指针,参考【参数表】中7
iProgramIndex-节目索引号
返回值:
-1-添加图文区失败,非-1-分区编号
3、§向图片区添加图片
BOOLUser_AddBmp(intCardNum,intiBmpPartNum,HBITMAPhBitmap,User_MoveSet*pMoveSet,intiProgramIndex);
函数功能:
向图片区添加图片
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
iBmpPartNum-图文区编号
hBitmap-图片句柄
pMoveSet-节目变换动作方式参数表指针,参考【参数表】中3
iProgramIndex-节目索引号
返回值:
FALSE-添加图片失败,TRUE-添加图片成功
BOOLUser_AddBmpFile(intCardNum,intiBmpPartNum,char*strFileName,User_MoveSet*pMoveSet,intiProgramIndex);
函数功能:
向图片区添加图片
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
iBmpPartNum-图文区编号
strFileName-图片名称
pMoveSet-节目变换动作方式参数表指针,参考【参数表】中3
iProgramIndex-节目索引号
返回值:
FALSE-添加图片失败,TRUE-添加图片成功
4、§添加时间区
intUser_AddTime(intCardNum,User_DateTime*pDateTime,intiProgramIndex);
函数功能:
添加时间区
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
pDateTime-时间参数表指针,参考【参数表】中6
iProgramIndex-节目索引号
返回值:
-1-添加时间区失败,非-1-分区编号
5、§添加计时区
intUser_AddTimeCount(intCardNum,User_Timer*pTimeCount,intiProgramIndex);
函数功能:
添加倒计时区
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
pTimeCount-倒计时参数表指针,参考【参数表】中4
iProgramIndex-节目索引号
返回值:
-1-添加计时区失败,非-1-分区编号
6、§添加温度区
intUser_AddTemperature(intCardNum,User_Temperature*pTemperature,intiProgramIndex);
函数功能:
添加温度区
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
pTemperature-温度参数表指针,参考【参数表】中5
iProgramIndex-节目索引号
返回值:
-1-添加温度区失败,非-1-分区编号
7、§添加单行文本区
intUser_AddSingleText(intCardNum,User_SingleText*pSingleText,intiProgramIndex);
函数功能:
添加单行文本区
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
pSingleText-单行文本参数表指针,参考【参数表】中8
iProgramIndex-节目索引号
返回值:
-1-添加单行文本区失败,非-1-分区编号
8、§添加文本
intUser_AddText(intCardNum,User_Text*pText,intiProgramIndex);
函数功能:
添加文本区
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
pText-文本参数表指针,参考【参数表】中9
iProgramIndex-节目索引号
返回值:
-1-添加文本区失败,非-1-分区编号
9、§添加RTF文件区
intUser_AddRTF(intCardNum,User_RTF*pRTFt,intiProgramIndex);
函数功能:
添加文本区
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
pRTF-RTF文件参数表指针,参考【参数表】中10
iProgramIndex-节目索引号
返回值:
-1-添加文本区失败,非-1-分区编号
10、§删除一个节目
BOOLUser_DelProgram(intCardNum,intiProgramIndex);
函数功能:
删除节目
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
iProgramIndex-节目索引号
返回值:
0-删除失败,1-删除成功
11、§删除所有节目
BOOLUser_DelAllProgram(intCardNum);
函数功能:
删除所有节目
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
返回值:
FALSE-删除失败,TRUE-删除成功
12、§向控制器发送数据
BOOLUser_SendToScreen(intCardNum);
函数功能:
向控制器发送数据
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
返回值:
FALSE-发送失败,TRUE-发送成功
13、§校正板卡的时间
BOOLUser_AdjustTime(intCardNum);
函数功能:
校正板卡时间
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
返回值:
FALSE-板卡校正时间失败,TRUE-板卡校正时间成功
14、§打开显示屏
BOOLUser_OpenScreen(intCardNum);
函数功能:
打开显示屏
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
返回值:
FALSE-关闭显示屏失败,TRUE-关闭显示屏成功
15、§关闭显示屏
BOOLUser_CloseScreen(intCardNum);
函数功能:
关闭显示屏
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
返回值:
FALSE-关闭显示屏失败,TRUE-关闭显示屏成功
16、§实时发送数据
(1)、建立连接
BOOLUser_RealtimeConnect(intCardNum);
(2)、发送数据
BOOLUser_RealtimeSendData(intCardNum,intx,inty,intiWidth,intiHeight,HBITMAPhBitmap);
(3、)断开连接
BOOLUser_RealtimeDisConnect(intCardNum);
实时发送数据是专门用在更新频率比较高,要求速度比较快的场合,可以实现区域更新!
实时数据发送可以达到同步控制卡的效果,而且没有更新次数的限制!
使用步骤:
首先,调用建立连接函数
(1);
接着,开始调用发送数据函数
(2),实时向显示屏发送数据,显示屏一直保持原来的数据,直到有新数据到来;
最后,一定要调用断开连接函数(3)。
函数功能:
实时发送数据
(2)
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
x,y-更新区域的左上角坐标;
iWidth,iHeight-更新区域的宽度和高度;
hBitmap-更新区域要显示的图片句柄。
注意:
实时发送数据是通过网络更新数据!
17、§实时发送图片数据
BOOLUser_RealtimeSendBmpData(intCardNum,intx,inty,intiWidth,intiHeight,char*strFileName);
函数功能:
实时发送图片数据
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
x,y-更新区域的左上角坐标;
iWidth,iHeight-更新区域的宽度和高度;
strFileName-需要发送的图片名称。
返回值:
FALSE-发送失败,TRUE-发送成功
18、§亮度调节
BOOLUser_SetScreenLight(intCardNum,intiLightDegreen);
函数功能:
调节显示屏亮度
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
iLightDegreen-亮度值,范围是0~15,取值越大,显示屏亮度越高
返回值:
FALSE-亮度调节失败,TRUE-亮度调节成功
19、§向控制器发送文件数据
BOOLUser_SendFileToScreen(intCardNum,charpSendPath[MAX_PATH],charpIndexPath[MAX_PATH]);
函数功能:
向控制器发送节目文件
参数说明:
CardNum-控制卡地址,基数为1,即第一块控制卡地址为1
pSendPath-节目文件路径默认生成send.sys
pIndexPath-节目索引文件路径默认生成index.sys
返回值:
FALSE-发送失败,TRUE-发送成功
20、§导入ini配置文件
BOOLUser_ImportIniFile(char*pPath,intiLength);
函数功能:
向控制器发送节目文件
参数说明:
pPath-配置文件路径
iLength-配置文件长度
返回值:
FALSE-导入失败,TRUE-导入成功
三、参数配置文件
EQ2013动态库自动读取当前目录下的“EQ2008_Dll_Set.ini”文件中的所有参数。
参数说明:
[地址:
0]
CardType=3
CardAddress=0
CommunicationMode=0
ScreemHeight=32
ScreemWidth=64
SerialBaud=115200
SerialNum=1
NetPort=5005
IpAddress0=192
IpAddress1=168
IpAddress2=1
IpAddress3=236
ColorStyle=1
1、控制卡地址"[地址:
n]"和"CardAddress"范围为:
0~1024;
2、控制卡类型"CardType"的取值为:
EQ3002-I=0、EQ3002-II=1、EQ3002-III=2、EQ2008-I/II=3;
EQ2010-I=4、EQ2008-IE=5、EQ2011=7、EQ2012=8、EQ2008-M=9
EQ2013=21、EQ2023=22、EQ2033=23
3、控制卡通讯模式“CommunicationMode”的取值为:
串口通讯=0、网路通讯=1
4、显示屏的宽度和高度分别为“ScreemWidth”和“ScreemHeight”,取值为:
ScreemWidth=8的倍数
5、串口波特率和串口号分别为“SerialBaud”和“SerialNum”,取值为:
SerialBaud=(9600,19200,57600,115200);
(注:
当CardType=EQ2013/EQ2023/EQ2033时,波特率只能为9600或57600)
SerialNum=(1为COM1口,2为COM2口);
6、网络端口号“NetPort”必须为5005;
7、参数“IpAddressn”为IP地址:
默认值为192.168.1.236
8、ColorStyle:
显示屏颜色类型:
0--单色屏,1--双色屏。
(仅EQ2013、EQ2023、EQ2033中有此参数)
注意:
*地址的个数可以根据实际显示屏的个数添加;
*不要修改本文件的文件名及后缀;
*本文件必须和应用程序放在同一个目录下。
四、节目编辑流程
第一步:
编辑节目
Ø首先利用User_AddProgram添加节目,得到节目编号,然后通过下列函数添加显示区域;
Ø利用User_AddTime添加时间区
Ø利用User_AddTimeCount添加倒计时区
Ø利用User_AddTemperature添加温度区
Ø利用User_AddSingleText添加单行文本区
Ø利用User_AddText添加文本区
Ø利用User_AddRTF添加RTF文件区
Ø利用User_AddBmpZone