[Java灵信LED] -- 踩坑之路

灵信led -T8 控制板卡 --踩坑之路

  • 下载lv_led.dll 动态库链接

https://pan.baidu.com/s/11ZO-M6kllsq2AyhVW4AKoA
提取码:unsb
提取二维码:
灵信动态库链接

  • 将所下载下来的动态库放置在 项目的根目录下,如下图

项目节点树

public class led {
	//加载本项目下的动态库
	static 
	{
		System.loadLibrary("lv_led");
		
	}
	
	/********************************************************************************************
	 *	CreateProgram				创建节目对象,成功返回节目对象句柄
	 *
	 *	参数说明
	 *				LedWidth		屏的宽度
	 *				LedHeight		屏的高度
	 *				ColorType		屏的颜色 1.单色  2.双基色  3.七彩  4.全彩
	 *	返回值
	 *				0				创建节目对象失败
	 *				非0				创建节目对象成功
	 ********************************************************************************************/
	public native static int CreateProgram(int LedWidth,int LedHeight,int ColorType);
	
	/*********************************************************************************************
	 *	AddProgram					添加一个节目
	 *	
	 *	参数说明
	 *				hProgram		节目对象句柄
	 *				ProgramNo		节目号
	 *				ProgramTime		节目播放时长 0.节目播放时长  非0.指定播放时长
	 *				LoopCount		循环播放次数
	 *	返回值
	 *				0				成功
	 *				非0				失败	
	 ********************************************************************************************/
	public native static int AddProgram(int hProgram,int ProgramNo,int ProgramTime,int LoopCount);
	
	/*********************************************************************************************
	 *	LV_AddImageTextArea				添加一个图文区域
	 *	
	 *	参数说明
	 *				hProgram			节目对象句柄
	 *				ProgramNo			节目号
	 *				AreaNo				区域号
	 *				l					区域左上角横坐标
	 *				t					区域左上角纵坐标
	 *				w					区域宽度
	 *				h					区域高度
	 *				IsBackgroundArea	是否为背景区域,0.前景区(默认) 1.背景区
	 *	返回值
	 *				0					成功
	 *				非0					失败	
	 ********************************************************************************************/
	public native static int AddImageTextArea(int hProgram,int ProgramNo,int AreaNo,int l,int t,int w,int h,int IsForegroundArea);
	
	/*********************************************************************************************
	 * AddFileToImageTextArea				添加一个文件到图文区
	 *	
	 *	参数说明
	 *				hProgram				节目对象句柄
	 *				ProgramNo				节目号
	 *				AreaNo					区域号
	 *				FilePath				文件路径,支持的文件类型有 txt  rtf  bmp  gif  png  jpg jpeg tiff
	 *				InStyle					入场特技
	 *				nSpeed					特技速度
	 *				DelayTime				停留时间
	 *	返回值
	 *				0						成功
	 *				非0						失败	
	 ********************************************************************************************/
	public native static int AddFileToImageTextArea(int hProgram,int ProgramNo,int AreaNo,String FilePath,int InStyle,int nSpeed,int DelayTime);
	
	/*********************************************************************************************
	 * AddMultiLineTextToImageTextArea		添加一个多行文本到图文区
	 *	
	 *	参数说明
	 *				hProgram				节目对象句柄
	 *				ProgramNo				节目号
	 *				AreaNo					区域号
	 *				AddType					添加的类型  0.为字符串  1.文件(只支持txt和rtf文件)
	 *				AddStr					AddType为0则为字符串数据,AddType为1则为文件路径
	 *				FontName				字体名	
	 *				FontSize				字体大小
	 *				FontColor				字体颜色   0xff 红色  0xff00 绿色  0xffff黄色
	 *				FontBold				是否加粗 0不加粗 1加粗
	 *				FontItalic				是否是斜体  0 不斜 1斜
	 *				FontUnderline			是否下划线 0不加下划线 1加下划线
	 *				InStyle					入场特技
	 *				nSpeed					特技速度
	 *				DelayTime				停留时间
	 *				nAlignment				左右居中对齐方式
	 *				IsVCenter				是否垂直居中
	 *	返回值
	 *				0						成功
	 *				非0						失败
	 ********************************************************************************************/
	public native static int AddMultiLineTextToImageTextArea(int hProgram,int ProgramNo,int AreaNo,int AddType,String AddStr,String FontName,int FontSize,int FontColor,int FontBold,int FontItalic,int FontUnderline,int InStyle,int nSpeed,int DelayTime,int nAlignment,int IsVCenter);
	
	/*********************************************************************************************
	 * AddStaticTextToImageTextArea			添加一个静止文本到图文区
	 *	
	 *	参数说明
	 *				hProgram				节目对象句柄
	 *				ProgramNo				节目号
	 *				AreaNo					区域号
	 *				AddType					添加的类型  0.为字符串  1.文件(只支持txt和rtf文件)
	 *				AddStr					AddType为0则为字符串数据,AddType为1则为文件路径
	 *				FontName				字体名	
	 *				FontSize				字体大小
	 *				FontColor				字体颜色   0xff 红色  0xff00 绿色  0xffff黄色
	 *				FontBold				是否加粗 0不加粗 1加粗
	 *				FontItalic				是否是斜体  0 不斜 1斜
	 *				FontUnderline			是否下划线 0不加下划线 1加下划线
	 *				DelayTime				停留时间
	 *				nAlignment				左右居中对齐方式
	 *				IsVCenter				是否垂直居中
	 *	返回值
	 *				0						成功
	 *				非0						失败
	 ********************************************************************************************/
	public native static int AddStaticTextToImageTextArea(int hProgram,int ProgramNo,int AreaNo,int AddType,String AddStr,String FontName,int FontSize,int FontColor,int FontBold,int FontItalic,int FontUnderline,int DelayTime,int nAlignment,int IsVCenter);
	
	/*********************************************************************************************
	 * AddSinglelineTextToImageTextArea		添加一个多行文本到图文区
	 *	
	 *	参数说明
	 *				hProgram				节目对象句柄
	 *				ProgramNo				节目号
	 *				AreaNo					区域号
	 *				AddType					添加的类型  0.为字符串  1.文件(只支持txt和rtf文件)
	 *				AddStr					AddType为0则为字符串数据,AddType为1则为文件路径
	 *				FontName				字体名	
	 *				FontSize				字体大小
	 *				FontColor				字体颜色   0xff 红色  0xff00 绿色  0xffff黄色
	 *				FontBold				是否加粗 0不加粗 1加粗
	 *				FontItalic				是否是斜体  0 不斜 1斜
	 *				FontUnderline			是否下划线 0不加下划线 1加下划线
	 *				InStyle					入场特技
	 *				nSpeed					特技速度
	 *				DelayTime				停留时间
	 *	返回值
	 *				0						成功
	 *				非0						失败
	 ********************************************************************************************/
	public native static int AddSinglelineTextToImageTextArea(int hProgram,int ProgramNo,int AreaNo,int AddType,String AddStr,String FontName,int FontSize,int FontColor,int FontBold,int FontItalic,int FontUnderline,int InStyle,int nSpeed,int DelayTime);
	
	/*********************************************************************************************
	 * AddSinglelineTextToImageTextArea		添加一个多行文本到图文区
	 *	
	 *	参数说明
	 *				hProgram				节目对象句柄
	 *				ProgramNo				节目号
	 *				AreaNo					区域号
	 *				l						区域左上角横坐标
	 *				t						区域左上角纵坐标
	 *				w						区域宽度
	 *				h						区域高度
	 *				FontName				字体名	
	 *				FontSize				字体大小
	 *				FontColor				字体颜色   0xff 红色  0xff00 绿色  0xffff黄色
	 *				FontBold				是否加粗 0不加粗 1加粗
	 *				FontItalic				是否是斜体  0 不斜 1斜
	 *				FontUnderline			是否下划线 0不加下划线 1加下划线
	 * 				IsYear					是否显示年 1为显示 0不显示 下同
	 * 				IsWeek					是否显示星期	
	 *				IsMonth					是否显示月
	 *				IsDay					是否显示日
	 *				IsHour					是否显示时
	 *				IsMinute				是否显示分
	 *				IsSecond				是否显示秒
	 *				DateFormat				日期格式 0.YYYY年MM月DD日  1.YY年MM月DD日  2.MM/DD/YYYY  3.YYYY/MM/DD  4.YYYY-MM-DD  5.YYYY.MM.DD  6.MM.DD.YYYY  7.DD.MM.YYYY
	 *				DateColor				日期字体颜色0xff 红色  0xff00 绿色  0xffff黄色
	 *				WeekFormat				星期格式 0.星期X  1.Monday  2.Mon.
	 *				WeekColor				星期字体颜色0xff 红色  0xff00 绿色  0xffff黄色
	 *				TimeFormat				时间格式 0.HH时mm分ss秒  1.HH時mm分ss秒  2.HH:mm:ss  3.上午 HH:mm:ss  4.AM HH:mm:ss  5.HH:mm:ss 上午  6.HH:mm:ss AM
	 *				TimeColor				时间字体颜色0xff 红色  0xff00 绿色  0xffff黄色
	 *	返回值
	 *				0						成功
	 *				非0						失败
	 ********************************************************************************************/
	public native static int AddDigitalClockArea(int hProgram,int ProgramNo,int AreaNo,int l,int t,int w,int h,String FontName,int FontSize,int FontColor,int FontBold,int FontItalic,int FontUnderline,int IsYear,int IsWeek,int IsMonth,int IsDay,int IsHour,int IsMinute,int IsSecond,int DateFormat,int DateColor,int WeekFormat,int WeekColor,int TimeFormat,int TimeColor);
	
	/*********************************************************************************************
	 *	DeleteProgram						销毁节目对象(注意:如果此节目对象不再使用,请调用此函数销毁,否则会造成内存泄露)
	 *	
	 *	参数说明
	 *				hProgram				节目对象句柄
	 ********************************************************************************************/
	public native static void DeleteProgram(int hProgram);
	
	/*********************************************************************************************
	 *	NetWorkSend							发送节目,此发送为一对一发送
	 *	
	 *	参数说明
	 *				IpStr					LED屏IP
	 *				hProgram				节目对象句柄
	 *	返回值
	 *				0						成功
	 *				非0						失败
	 ********************************************************************************************/
	public native static int NetWorkSend(String IpStr,int hProgram);
	
	/*********************************************************************************************
	 *	SetBasicInfo						设置基本屏参
	 *	
	 *	参数说明
	 *				IpStr					LED屏的IP
	 *				ColorType				屏的颜色 1.单色  2.双基色  3.七彩  4.全彩
	 *				LedWidth				屏的宽度点数
	 *				LedHeight				屏的高度点数
	 *	返回值
	 *				0						成功
	 *				非0						失败
	 ********************************************************************************************/
	public native static int SetBasicInfo(String IpStr,int ColorType,int LedWidth,int LedHeight);
	
	/*********************************************************************************************
	 *	SetOEDA								设置OE DA
	 *	
	 *	参数说明
	 *				IpStr					LED屏的IP
	 *				Oe						OE  0.低有效  1.高有效
	 *				Da						DA  0.负极性  1.正极性
	 *	返回值
	 *				0						成功
	 *				非0						失败
	 ********************************************************************************************/
	public native static int SetOEDA(String IpStr,int Oe,int Da);
	
	/*********************************************************************************************
	 *	AdjustTime							校时
	 *	
	 *	参数说明
	 *				IpStr					LED屏的IP
	 *	返回值
	 *				0						成功
	 *				非0						失败
	 ********************************************************************************************/
	public native static int AdjustTime(String IpStr);
	
	/*********************************************************************************************
	 *	PowerOnOff							开关屏
	 *	
	 *	参数说明
	 *				IpStr					LED屏的IP
	 *				OnOff					开关值  0.关屏  1.开屏
	 *	返回值
	 *				0						成功
	 *				非0						失败
	 ********************************************************************************************/
	public native static int PowerOnOff(String IpStr,int OnOff);
	
	/*********************************************************************************************
	 *	TimePowerOnOff						定时开关屏
	 *	
	 *	参数说明
	 *				IpStr					LED屏的IP
	 *				StartHour				起始小时
	 *				StartMinute				起始分钟
	 *				EndHour					结束小时
	 *				EndMinute				结束分钟
	 *	返回值
	 *				0						成功
	 *				非0						失败
	 ********************************************************************************************/
	public native static int TimePowerOnOff(String IpStr,int StartHour,int StartMinute,int EndHour,int EndMinute);
	
	/*********************************************************************************************
	 *	SetBrightness						设置亮度
	 *	
	 *	参数说明
	 *				IpStr					LED屏的IP
	 *				BrightnessValue			亮度值 0~15
	 *	返回值
	 *				0						成功
	 *				非0						失败	
	 ********************************************************************************************/
	public native static int SetBrightness(String IpStr,int BrightnessValue);
	
	/*********************************************************************************************
	 *	LedTest								LED测试
	 *	
	 *	参数说明
	 *				IpStr					LED屏的IP
	 *				TestValue				测试值
	 *	返回值
	 *				0						成功
	 *				非0						失败
	 ********************************************************************************************/
	public native static int LedTest(String IpStr,int TestValue);
	
	/*********************************************************************************************
	 *	SetLedCommunicationParameter		设置LED屏的网络信息
	 *	
	 *	参数说明
	 *				IpStr					LED屏的IP
	 *				NewIp					LED屏的新IP
	 *				NewNetMask				LED屏的新子网掩码
	 *				NewGateway				LED屏的新网关
	 *				NewMac					LED屏的新mac地址
	 *	返回值
	 *				0						成功
	 *				非0						失败
	 ********************************************************************************************/
	public native static int SetLedCommunicationParameter(String IpStr,String NewIp,String NewNetMask,String NewGateway,String NewMac);

}

  • Test测试代码片段
public class ListenvisionService {
	
	/**
	 * 过磅返回信息 以字符串形式发送至LED大屏
	 * @param msg
	 * @return
	 */
	public static String Show(String msg) {
		/*********************************************************************************************
		 * 将你要返回信息 以字符串形式发送至LED大屏
		 * 步骤如下:
		 * 1、设置led显示控制板卡极性;
		 * 2、如果极性设置成功,接下来创建一个节目
		 * 3、节目创建成功后,接下来将节目添加至
		 * 4、添加一个图文区域
		 * 5、添加文本或者字符串至图文区域
		 * 6、发送至显示屏
		 * 7、释放资源
		 ********************************************************************************************/
		int hProgram;
		hProgram=led.CreateProgram(96, 64, 1);
		if (hProgram == 0) {
			System.out.println("创建屏幕失败!");
		}
		int addProgram = led.AddProgram(hProgram, 1, 0, 1);
		if(addProgram != 0) {
			System.out.println("添加节目失败!");
		}
		int addImageTextArea = led.AddImageTextArea(hProgram, 1, 1, 0, 0, 96, 64, 1);
		if (addImageTextArea != 0) {
			System.out.println("添加一个图文区域失败!");
		}
		int addMultiLineTextToImageTextArea = led.AddMultiLineTextToImageTextArea(hProgram, 1, 1, 0, msg, "宋体", 9, 0xff, 0, 0, 0, 1, 0, 30, 0, 1);
		if (addMultiLineTextToImageTextArea !=0) {
			System.out.println("添加一个多行文本到图文区失败!");
		}
		int netWorkSend = led.NetWorkSend("192.168.1.99", hProgram);
		if (netWorkSend != 0) {
			System.out.println("发送节目失败!");
		}
		//销毁节目对象
		led.DeleteProgram(hProgram);
		
		return "success";
	}
	
	public static void main(String[] args) {
		String msg = "小白爱编程";
		Show(msg);
	}

需要注意的是:
工程目录需要是 com.listenvision.led – 包–类 形式,因为动态库底层的原因(个人愚见)。

附带控制版卡接线图:
灵信T8控制板卡

备注:T8控制板卡不支持语音播报,支持语音播报的型号T系列的有T2,T4,T16 。

有问题可以私信,WeChat:2035079055,不足之处,欢迎指正。

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

笑风尘灬

如果有用,请博主喝杯咖啡叭

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值