一个最最基础的 串口通信 程序!!!

最近正在学c#_还不是很熟悉_只是有点java的基础

SerialPort类 的介绍

http://msdn.microsoft.com/zh-cn/library/system.io.ports.serialport(v=vs.80).aspx

这个例子网上有,哎....我一直以为 serailport 不是一个控件呢!

我现在疑问?_难道 所有的再c#可以引用的类,都对应一个控件吗?

还有c#的添加监听器的方法,该如何添加呢?

如果是控件的话,直接双击控件就可以添加上监听器,但是对于一般的对象的话就得

用+=这个方法添加....还没怎么看c#,慢慢来

关于这个程序是有bug的,而且我也没有修正,因为串口对象的 readline是个阻塞方法,所以当你运行到这个语句的时候,如果读不到数据的话就会导致整个程序假死,只能强制终止 这个程序了


    1. using System;
    2. using System.Collections.Generic;
    3. using System.ComponentModel;
    4. using System.Data;
    5. using System.Drawing;
    6. using System.Linq;
    7. using System.Text;
    8. using System.Windows.Forms;
    9. using System.IO.Ports;//新调用的类所在的命名空间
    10. namespace 串口控制
    11. {
    12. public partial class Form1 : Form
    13. {
    14. //我用了控件,所以不用初始化对象了!!
    15. //SerialPort sPort;//声明一个串口类对象,该对象的初始化我放到了
    16. public Form1()
    17. {
    18. InitializeComponent();
    19. }
    20. //发送按钮的响应时间
    21. private void button1_Click(object sender, EventArgs e)
    22. {
    23. //对于中文的话,要先对其进行编码,将其转换成 _Base64String ,否则你得不到中文字符串的
    24. byte[] data = Encoding.Unicode.GetBytes(textBox1.Text);
    25. string str = Convert.ToBase64String(data);
    26. sPort.WriteLine(str);
    27. MessageBox.Show("数据发送成功","系统提示");
    28. }
    29. private void button2_Click(object sender, EventArgs e)
    30. {
    31. //解码然后将字符串赋值给 文本框的 文本区
    32. byte[] data = Convert.FromBase64String(sPort.ReadLine());
    33. textBox2.Text = Encoding.Unicode.GetString(data);
    34. }
    35. private void Form1_Load(object sender, EventArgs e)
    36. {
    37. sPort.PortName = "com3";//串口的portname
    38. sPort.BaudRate = 9600;//串口的波特率
    39. sPort.Open();
    40. }
    41. private void Form1_FormClosing(object sender, FormClosingEventArgs e)
    42. {
    43. //关闭串口
    44. sPort.Close();
    45. }
    46. }
    47. }

C#_串口通信_SerialPort_一个最基础的串口程序的更多相关文章

  1. LabVIEW串口通信的一个例子-串口"示波器"

    1.程序界面:<ignore_js_op> 功能介绍:左边上方串口接收区,下方为串口字符发送区.右方为一个波形图表,在程序内部每次将串口发送过来的数据,以f%格式化,显示在波形图表上.按钮 ...

  2. windows串口通信的一个活动图

    1,打开串口的活动图: 2,关闭串口的活动图:

  3. (转载)用vs2010开发基于VC++的MFC 串口通信一*****两台电脑同一个串口号之间的通信

    此文章以visual C++数据採集与串口通信測控应用实战为參考教程 此文章适合VC++串口通信入门 一.页面布局及加入控件 1, 安装好vs2010如图 2, 新建一个基于VC++的MFC项目com ...

  4. Python 串口通信 GUI 开发

    在项目中遇到树莓派串口通信问题.由于本人一直从事.net 开发,希望将树莓派系统换成Win10 IOT版.但是在测试过程中出现无法找到串口的问题.最终也没有解决.最终按照领导要求,linux (了解不 ...

  5. Csharp Winfrom 多串口通信

    Csharp 多串口通信 顾名思义,多串口通信,普通的PC机一般只有一个串口,现在很多家用的PC都没有串口,那么问题来了,如何保证多串口呢? 有一种神器,MOXA CP-168U Series PCI ...

  6. 在ubuntu下利用minicom实现串口通信

    windos有串口调试助手,linux下也有这样的工具——minicom.不过,minicom和linux下的许多工具都一样,也是命令行模式,没有图形化界面供我们享受.作为一款串口调试工具,虽然难看但 ...

  7. ARM学习笔记15——串口通信基本原理【转】

    计算机串口基本理论 1.什么是串口? 2,什么是RS-232? 3,什么是RS-422? 4,什么是RS-485? 5,什么是握手? 1,什么是串口? 串口是计算机上一种非常通用的设备通信的协议(不要 ...

  8. linux下串口通信与管理

    linux下的串口与windows有一些区别,下面将介绍一下linux下串口通信管理 查看是否支持USB串口: #lsmod | grep usbserial 如果没有信息:sudo apt-get ...

  9. Linux与Windows串口通信

    串口是常用的计算机与外部串行设备之间的数据传输通道,由于串行通信方便易行,所以应用广泛.现在国际上不断有串口新技术及新规格推出,结合社会各方面需要,串口通信发展的空间庞大.串口通讯技术因其自身的优势和 ...

随机推荐

  1. XVII Open Cup named after E.V. Pankratiev Stage 14, Grand Prix of Tatarstan, Sunday, April 2, 2017 Problem A. Arithmetic Derivative

    题目:Problem A. Arithmetic DerivativeInput file: standard inputOutput file: standard inputTime limit: ...

  2. Ubuntu下pycharm设定任务栏图标后打开出现问号图标

    事情是这样的: ubuntu16.04,安装好pycharm后,bin下只有一个sh执行文件,想要弄成任务栏图标,所以在/usr/share/applications下新建文件pycharm.desk ...

  3. JFreeChart的简单应用及乱码解决

    一.JFreeChart介绍: JFreeChart是JAVA平台上的一个开放的图表绘制类库.它完全使用JAVA语言编写,是为applications, applets, servlets 以及JSP ...

  4. Linux使用free命令查看实际内存占用

    转自:http://www.cnblogs.com/pengdonglin137/p/3315124.html Linux下在终端环境下可以使用free命令看到系统实际使用内存的情况,一般用free ...

  5. 在Ubuntu14.4(32位)中配置I.MX6的QT编译环境

    1,开发工具下载 一,下载VMware Workstation虚拟机 地址:http://1.xp510.com:801/xp2011/VMware10.7z 二,下载Ubuntu 14.04.5 L ...

  6. HBuilder 详细使用方法 -------------参考 :http://www.runoob.com/w3cnote/hbuilder-intro.html

    HBuilder是DCloud(数字天堂)推出的一款支持HTML5的Web开发IDE.HBuilder的编写用到了Java.C.Web和Ruby.HBuilder本身主体是由Java编写,它基于Ecl ...

  7. java单例模式之懒汉式分析

    转自:http://blog.csdn.net/withiter/article/details/8140338 今天中午闲着没事,就随便写点关于Java单例模式的.其实单例模式实现有很多方法,这里我 ...

  8. jQuery中this 和 $(this)

    var node = $('#id'); node.click(function(){ this.css('display','block'); //报错  this是一个html元素,不是jquer ...

  9. clientWidth offsetWidth scrollWidth

    网页可见区域宽: document.body.clientWidth;网页可见区域高: document.body.clientHeight;网页可见区域宽: document.body.offset ...

  10. linux c开发环境构成

    1.编辑器:VI.VIM 2.编译器:GNU C/C++编译器gcc 3.调试器:gdb 4.函数库:glibc 5.系统头文件:glibc_header