using System;
using System.IO.Ports; namespace Common
{
public class LedHelper
{
private static int _baudRate = ;
private static string _portName = "COM2";
/// <summary>
/// 串型端口对象
/// </summary>
private static SerialPort _serialPort;
/// <summary>
/// 波特率
/// </summary>
public static int BaudRate
{
get { return _baudRate; }
set { _baudRate = value; }
}
/// <summary>
/// 端口
/// </summary>
public static string PortName
{
get { return _portName; }
set { _portName = value; }
}
/// <summary>
/// 清空屏幕
/// </summary>
public static void ScreenClean()
{
Open(); Clear(); Close();
}
/// <summary>
/// 显示单价
/// </summary>
/// <param name="price"></param>
public static void ShowUnitPrice(string price)
{
Open();
UnitPrice(price);
Close();
}
/// <summary>
/// 显示应收
/// </summary>
/// <param name="money"></param>
public static void ShowSum(string money)
{
Open();
Sum(money);
Close();
}
/// <summary>
/// 显示实际收钱
/// </summary>
/// <param name="money"></param>
public static void ShowRealMoney(string money)
{
Open(); CollectMoney(money);
Close();
}
/// <summary>
/// 找零
/// </summary>
/// <param name="money"></param>
public static void ShowOddChange(string money)
{
Open();
OddChange(money);
Close();
}
/// <summary>
/// 全暗
/// </summary>
public static void ShowNone(string money)
{
Open();
GetBlack(money);
Close();
} /// <summary>
/// GetSum 总价
/// </summary>
/// <param name="value">The value.</param>
private static void Sum(string value)
{
//clear();
NewData(value);
GetSum();
}
/// <summary>
/// GetUnitPrice 单价
/// </summary>
/// <param name="value">The value.</param>
private static void UnitPrice(string value)
{
//clear();
NewData(value); GetUnitPrice();
}
/// <summary>
/// GetCollectMoney 实收
/// </summary>
/// <param name="value">The value.</param>
private static void CollectMoney(string value)
{
//clear();
NewData(value);
GetCollectMoney();
}
/// <summary>
/// GetOddChange 找零
/// </summary>
/// <param name="value">The value.</param>
private static void OddChange(string value)
{
//clear();
NewData(value);
GetOddChange();
}
/// <summary>
/// 全黑
/// </summary>
/// <param name="value"></param>
private static void GetBlack(string value)
{
//clear();
NewData(value);
AllBlack();
} /// <summary>
///全暗.是找零 全价 GetCollectMoney 这几个灯
/// </summary>
private static void AllBlack()
{
// serialPort1.WriteLine(@"s0");
_serialPort.Write(@"s0");
}
/// <summary>
/// 清屏.
/// </summary>
private static void Clear()
{
//serialPort1.WriteLine("\f");
_serialPort.Write(((char)()).ToString());
}
private static void GetUnitPrice()
{
//serialPort1.WriteLine(@"s1");//其实有数据的那个空格
_serialPort.Write(@"s1");//其实有数据的那个空格
}
private static void GetSum()
{
_serialPort.WriteLine(@"s2");
}
private static void GetCollectMoney()
{
_serialPort.WriteLine(@"s3");
}
private static void GetOddChange()
{
_serialPort.WriteLine(@"s4");
}
private static void NewData(string data)
{
//serialPort1.WriteLine(@"QA" + data);
_serialPort.Write(@"QA" + data + ((char)()).ToString());
}
/// <summary>
/// 打开串口,可能抛出异常
/// </summary>
private static void Open()
{
try
{
if (_serialPort == null)
{
_serialPort = new SerialPort();
_serialPort.PortName = _portName;
_serialPort.BaudRate = _baudRate;
}
if (!_serialPort.IsOpen)
{
_serialPort.Open();
}
}
catch (Exception ex)
{
throw new Exception("打开串口失败!错误信息为:" + ex.Message);
} }
/// <summary>
/// 关闭串口
/// </summary>
private static void Close()
{
if (_serialPort != null && _serialPort.IsOpen)
_serialPort.Close();
}
}
}

LED客显的类的更多相关文章

  1. C# 收银机顾显(客显)及打印小票(58热敏打印机)

    最近做winform收银机,设计顾显及打印小票总结. 1.顾显(串口COM1) 只涉及到总计,所以只是简单的功能. public static ClientDisplayResult Display( ...

  2. python学习1-博客-DB操作类

    #学习python,准备写一个博客,第一天:在别人代码基础上写一个数据库操作的db.py1)python代码 #!/usr/bin/env python # -*- coding: UTF-8 -*- ...

  3. 简单的访客IP获取类-IPHelper.cs

    public class IPHelper { public static string GetVisitorsIPAddress() { string result = String.Empty; ...

  4. C++_进阶之函数模板_类模板

     C++_进阶之函数模板_类模板 第一部分 前言 c++提供了函数模板(function template.)所谓函数模板,实际上是建立一个通用函数,其函数类型和形参类型不具体制定,用一个虚拟的类型来 ...

  5. [.net 面向对象程序设计进阶] (11) 序列化(Serialization)(三) 通过接口 IXmlSerializable 实现XML序列化 及 通用XML类

    [.net 面向对象程序设计进阶] (11) 序列化(Serialization)(三) 通过接口 IXmlSerializable 实现XML序列化 及 通用XML类 本节导读:本节主要介绍通过序列 ...

  6. 从零开始,搭建博客系统MVC5+EF6搭建框架(4)下,前后台布局实现、发布博客以及展示。

    一.博客系统进度回顾 目前已经完成了,前台展示,以及后台发布的功能,最近都在做这个,其实我在国庆的时候就可以弄完的,但是每天自己弄,突然最后国庆2天,连电脑都不想碰,所以就一直拖着,上一篇写了前端实现 ...

  7. javascript类继承的一些实验

    其实一开始编js没怎么用过对象,一般都用func,func,func···但是用多了,感觉代码一点都不美观,还要这里包一个函数,那里包一个函数,或者一直都是函数调用,不好看,而且一些重用的都要重写的话 ...

  8. 博客代码:iframe—网页中嵌入其他网页

    iframe 是一个可以把另外一个网页嵌入到一个网页里的代码,非常有用.对于一个内容不错的网页,要方便地把它搬到自己的博客里,用这个代码最合适.而对于在新浪博客里不支持的一些网页效果和代码,可先把他们 ...

  9. IniParse解析类

    说明 iniParse这个类是一个解析ini文件的类,他的功能和Windows下GetPrivateProfileString的功能一样,可以很方便的保存读取配置. 当然他不是只有GetPrivate ...

随机推荐

  1. 前端项目微金所1 - bootstrap模板,Compatible(兼容),Viewport(视口),条件注释,第三方依赖,MediaQuery媒体查询

    前端项目微金所笔记1 基础的bootstrap模板 <!DOCTYPE html> <html lang="en"> <head> <me ...

  2. Java知多少(34)final关键字:阻止继承和多态

    在 Java 中,声明类.变量和方法时,可使用关键字 final 来修饰.final 所修饰的数据具有“终态”的特征,表示“最终的”意思.具体规定如下: final 修饰的类不能被继承. final ...

  3. Fedora 21 安装 Bumblebee with the NVIDIA proprietary drivers

    最新文章:Virson's Blog 参考Fedora Wiki:http://fedoraproject.org/wiki/Bumblebee#Fedora_21

  4. php中json_decode及foreach使用总结

    <?php $arr=array(); //例子1 $json_str= '{"ret":"OK","questions":{ &qu ...

  5. Git -- 自定义git样式

    在安装Git一节中,我们已经配置了user.name和user.email,实际上,Git还有很多可配置项. 比如,让Git显示颜色,会让命令输出看起来更醒目: $ git config --glob ...

  6. Spark搭建HA具体解释

    实验环境: zookeeper-3.4.6 Spark:1.6.0 简单介绍: 本篇博客将从下面几点组织文章: 一:Spark 构建高可用HA架构 二:动手实战构建高可用HA 三:提交程序測试HA 一 ...

  7. 【代码审计】大米CMS_V5.5.3 任意文件读取漏洞分析

      0x00 环境准备 大米CMS官网:http://www.damicms.com 网站源码版本:大米CMS_V5.5.3试用版(更新时间:2017-04-15) 程序源码下载:http://www ...

  8. [Python] pip 简明指南

    安装 1. 使用 apt 安装: $ sudo apt-get install python-pip 截止本文落笔,apt 安装 pip 版本为 1.0,但 pip 最新发行版本为 1.5.6 $ p ...

  9. javascript实现 color颜色格式转换【 rgb和十六进制的转换】

    以原型的方式,给string字符串类型添加方法,用于实现颜色值格式的转换:不习惯使用原型方法的,只要借鉴实现方法就好! 代码如下: var reg = /^#([0-9a-fA-f]{3}|[0-9a ...

  10. 试着理解cookie和session

    web服务一个特点是提供个性化服务,为很多客户端提供服务,那么每个用户不同,服务自然不同,所以要记住用户及其状态,这也很多应用软件的通用功能. 由于http是无状态的,Session和Cookie是两 ...