LED点阵屏定时自动发布字幕初探

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:kuaijizhidu2009
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:LED点阵屏通过LED(发光二极管)组成,以灯珠亮灭来显示文字、图片、动画、视频。LED点阵显示屏有制作简单,安装方便的优点,被广泛应用于各种公共场合。如何实现定时自动发布动态更新的信息是本文重点探讨的内容。
  关键词:LED点阵屏;定时;发布;自动
  中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)36-0241-02
  我院在门诊一块单色LED屏,专用于门诊专家排班发布,考虑到手工处理每天不同排班信息较为繁琐,故考虑通过程序控制来实现了LED点阵屏定时自动发布字幕功能。
  1 需求
  该功能的需求如下:① 从数据库中获取每日专家排班信息;② 只发布当天的专家排班信息;③ 发生排班调整,可手工更新;④ 能自动定时发布。
  2 方法
  用C#通过调用开发包中封装的DLL文件,并读取数据库中排班信息,向屏幕区域添加,并完成发送,具体流如下图示:
  
  3 详细步骤
  3.1 建立C#应用程序
  建立界面如图1,控件参数见下表。
  3.2 编写代码
  //常用命名空间略
  using System.Runtime.InteropServices;
  using System.Data.OleDb;
  namespace WindowsFormsApplication1
  {public partial class Form1 : Form
  {//常数定义(略)
  //调用动态库(略)
  public Form1()
  {InitializeComponent();}
  private void Form1_Load(object sender, EventArgs e)
  { timer1.Enabled = true; }
  //获取挂号排班信息(GetGH_info代码略)
  //获取当前屏号、动态区域
  private void GetcurGrpCaption()
  { RichTextBox1.Text = FAddDynamicArea "(屏号:" spnedt_PNo ")";
  RichTextBox1.Text = FAddDYAreaFile "(屏号:" spnedt_PNo ";动态区域编号:" spnedt_DYAreaID ")\r\n";}
  //初始化动态库InitializeDLL()代码略
  private void AddScreen()//添加显示屏
  { nResult = AddScreen_Dynamic(nControlType, spnedt_PNo, nSendMode,spnedt_Width, spnedt_Height, nScreenType, cbb_Pixel, cbb_Comm, cbb_Baud,edt_StaticIP_IP, spnedt_StaticIP_Port, nServerMode, Barcode, NetworkID, edt_ServerIP, edt_ServerPort,edt_User, edt_Password , edt_SaveFile);
  GetErrorMessage("执行添加显示屏,", nResult);}
  //释放动态库Exp_DLL代码略
  private void AddScreenDynamicArea()//添加屏幕动态区域
  { //添加专家排班信息区域
  nResult = AddScreenDynamicArea(spnedt_PNo, spnedt_DYAreaID, nRunMode, spnedt_TimeOut, nAllProRelate, szProRelateList, nPlayPriority, spnedt_DYAreaX, 30, spnedt_DYAreaW, 66, nAreaFMode, nAreaFLine, spnedt_DYAreaFSingleColor, cbb_DYAreaFStunt, spnedt_DYAreaFRunSpeed, spnedt_DYAreaFMoveStep);
  GetErrorMessage("执行添加屏幕动态区域0,", nResult);}
  private void AddTxttoDynamicArea()//添加文本到当前动态区域
  { nResult = 0;
  int nSingleLine=0;
  string textContent = ShowMessage;
  //添加专家信息
  nResult = AddScreenDynamicAreaText(spnedt_PNo, spnedt_DYAreaID,textContent, nSingleLine, "黑体", 20, 0, 65535, 1,spnedt_DYAreaRunSpeed, spnedt_DYAreaShowTime 10);
  GetErrorMessage("执行添加文本到当前动态区域0, ", nResult);
  RichTextBox1.Text = RichTextBox1.Text textContent "\r\n";}   private void SendDynamicAreaText()//發送信息到动态区域。
  { int nResult;
  nResult = SendDynamicAreaInfoCommand(spnedt_PNo, spnedt_DYAreaID);
  GetErrorMessage("执行发送信息0, ", nResult);}
  private void button1_Click(object sender, EventArgs e)
  {
  InitializeDLL();
  AddScreen();
  AddScreenDynamicArea();
  GetGH_info();
  AddTxttoDynamicArea();
  SendDynamicAreaText();
  Exp_DLL();
  Application.ExitThread();//执行结束后退出程序}}}
  3.3 生成可执行文件
  在C#编译生成名称为“门诊LED屏信息发布.exe”的可执行文件,该文件位于当前工程目录下“日志清除工具\bin\Debug\”,注意需与引用的DLL位于同一目录下,在“任务计划”中添加任务计划,定时执行即可。
  4 体会与说明
  实现LED点阵屏定时自动发布字幕的体会如下:1)在程序执行完成后,需由定时器触发程序自时关闭;2)除Button1外的多出的几个按钮用于按顺序测试;3)发生排班调整时,只需手动运行一次即可;4)本例所用的DLL为仰邦BX5二次开发包;5)DLL内置函数详见开发包说明。提供的此功能在Windows XP SP3 Microsoft Visual Studio 2010及屏参设置正常的环境下调试通过。
  参考文献:
  [1] 宋智军,邱仲潘.Visual C#2010从入门到精通,电子工业出版社,2011.
  [2] Christian Nagel,Bill Evjen.李铭译,黄静审校[M]. 8版.C#高级编程,2013(10).
其他文献
为了研究实际工程中混凝土梁在加固前的裂缝对加固后梁长期挠度影响规律,从而为加固梁在长期使用过程中是否满足结构的正常使用极限状态提供判断依据,先对4根钢筋混凝土梁进
目的:运用功能性心肌血流指数(MBFI)评价缺血性冠心病(ICAD)可行性分析。方法:回顾性分析冠心病疑似患者行冠状动脉CT血管成像(CCTA)检查,同期接受有创冠状动脉造影(ICA)及导
摘要:互联网的迅速发展带来了网络中评论数据的大量增长,分析这些非结构化的文本数据的潜在价值对于整车企业在生产、营销、售后等环节具有重要的指导意义。汽车垂直网站内的评论数据海量且复杂,本文提出一种基于潜在特征的评论要素挖掘模型,对文本数据进行细粒度的挖掘,识别出文本的评论要素,即评价对象与评价词。在汽车之家评论语料进行的实验表明,本模型的预测准确率达到81%,具有良好的分类效果。  关键词:文本挖掘
讨论了阻尼材料动态性能表征的数学模拟分析方法及其性能预测,从分数导数模型出发分析了阻尼材料动态性能内在的一些基本规律,为阻尼材料的研究、开发和性能测试提出了一些指
采用SAP2000有限元分析软件,分别建立了基础固定结构、"一滑就限"的滑移隔震结构、"先滑后限"的滑移隔震结构的计算模型。对三种结构体系在单向地震作用下进行了结构动力响应的对
研究了Cr9Mo铸钢组织和性能之间的关系.依据试验结果,指出了热处理工艺变化对其组织、性能的影响,并与Cr5Mo铸钢作比较.
近年来,城市化快速发展,暴雨极端降雨等天气频发,城市雨洪内涝频次也不断提高,传统径流计算模拟方法已经无法使用当前复杂的城市地表状况,采用数学模型计算城市降雨径流成为