using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.IO.Ports;
namespace dayin
{
public partial class Form1 : Form
{
byte[] s = { 0x0a };
byte[] b = { 0x1b, 0x36, 0x37, 0x31, 0x31, 0x31, 0x31, 0x31, 0x37, 0x37, 0x37, 0x37, 0x37, 0x37, 0x37, 0x37 };//调试
byte[] fd = { 0x1b, 0x57, 0x1 };
byte[] sd = { 0x1b, 0x72, 0x2d, 0x9 };
byte[] hz = { 0x1b, 0x38, 0x0, 0xd5, 0xc5, 0xcd, 0xa8, 0xa3, 0xb0, 0xa3, 0xb1, 0xa3, 0xb2, 0x00 };
byte[] jj = { 0x1b, 0x6c, 0x09 };
byte[] hzjj = { 0x1b, 0x20, 0x60 };
static byte[] aa;
static byte[] bb;
Encoding gb = Encoding.GetEncoding("gb2312");
//Encoding gb = Encoding.GetEncoding("asc");
// byte[] shuru = RichTextBox.text;
//string ss = richTextBox1.Text;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
InitSerialPort();
}
private void InitSerialPort()
{
this.serialPort1 = new System.IO.Ports.SerialPort();
serialPort1.PortName = "COM1";//串口名
serialPort1.BaudRate = 9600;
serialPort1.Parity = System.IO.Ports.Parity.None;
serialPort1.DataBits = 8;
serialPort1.StopBits = System.IO.Ports.StopBits.One;
serialPort1.Handshake = System.IO.Ports.Handshake.None;//流控设置
serialPort1.WriteBufferSize = 100;
serialPort1.WriteTimeout = 1000;
serialPort1.Open();//打开串口1
//serialPort1.Write(s, 0, 1);//开始打印,先打印空行,以后在调整
//serialPort1.Write(s, 0, 1);
//serialPort1.Write(s, 0, 1);
//serialPort1.Write(s, 0, 1);
//serialPort1.Write(fd, 0, 3);
//serialPort1.Write(sd, 0, 4);
//serialPort1.Write(hz, 0, hz.Length);
serialPort1.Write(jj, 0, jj.Length);
//serialPort1.Write(hzjj, 0, 3);
serialPort1.Write(aa, 0, aa.Length);
//serialPort1.Write(s, 0, 1);
serialPort1.Write(b, 0, b.Length);
serialPort1.Write(s, 0, 1);
serialPort1.Write(s, 0, 1);
serialPort1.Write(s, 0, 1);
serialPort1.Write(s, 0, 1);
serialPort1.Write(s, 0, 1);
serialPort1.Close();
serialPort1 = null;
}
//----------------------------//
//将字节数组转为字符串
public string CharacterToCoding(string character)
{
string coding = "";
for (int i = 0; i < character.Length; i++)
{
//byte[] bytes = System.Text.Encoding.Unicode.GetBytes(character.Substring(i, 1)); //取出二进制编码内容
byte[] bytes = gb.GetBytes(character.Substring(i, 1));
string lowCode = System.Convert.ToString(bytes[0], 16); //取出低字节编码内容(两位16进制)
if (lowCode.Length == 1)
lowCode = "0" + lowCode;
string hightCode = System.Convert.ToString(bytes[1], 16);//取出高字节编码内容(两位16进制)
if (hightCode.Length == 1)
hightCode = "0" + hightCode;
coding += (lowCode + hightCode);//加入到字符串中,
}
return coding;
//return bytes[];
}
private void button2_Click(object sender, EventArgs e)
{
string cha, code;//cha传进来的字符串
int i = 0;
cha = textBox1.Text;
byte[] test = System.Text.Encoding.GetEncoding("GB2312").GetBytes(cha);
aa = new byte[test.Length+5];
aa[0] = 0x1b;
aa[1] = 0x38;
aa[2] = 0x0;
for (i = 0; i < test.Length ; i++)
{
aa[3 + i] = test[i];
}
aa[test.Length + 4] = 0x0;
InitSerialPort();
}
}
}