使用SerialPort传输图片文件的实验
2008-09-18 11:49
447 查看
学习C Sharp主要的目的就是为了给项目做一个PC端的界面,并且通过串口和所用的CC2430之间通信。
C#里面的串口类非常好用,这里就不详细说了。。
下面是接收端的事件
private void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
FileStream Save = new FileStream(@"E:/received.dat", FileMode.Append, FileAccess.Write);
Byte[] array = new byte[1024];
int count = serialPort1.BytesToRead;
serialPort1.Read(array, 0, count);
Save.Write(array, 0, count);
Save.Close();
}
这里所有的操作都是同步的,异步的我还没研究过。。
下面是发送端的代码:
private void button1_Click(object sender, EventArgs e)
{
Byte[] arry = new Byte[100];
try
{
serialPort1.Open();
// serialPort2.Open();
// if (serialPort1.IsOpen) MessageBox.Show("Serial 1 opened");
}
catch
{
MessageBox.Show("Port one open Failed");
}
FileInfo file = new FileInfo(@"E:/test.BMP");
FileStream Send = new FileStream(@"E:/test.BMP", FileMode.Open, FileAccess.ReadWrite);
for (int i = 0; i < Send.Length/100; i++)
{
Send.Read(arry, 0, 100);
//线程挂起250mS
// System.Threading.Thread.SpinWait(250);
//Thread.sleep(int)也能使程序挂起。。不过容易让人感觉程序失去响应
serialPort1.Write(arry, 0, 100);
} //每次向串口发送100个字节,最后再把不足100字节的结尾给发送过去
Send.Read(arry, 0,(int) (Send.Length%100));
serialPort1.Write(arry, 0, (int)(Send.Length % 100));
serialPort1.Close();
Send.Close();
}
相关文章推荐
- 使用SerialPort传输图片文件的实验
- Java使用Socket进行字符串和图片文件同时传输
- 使用base64实现socket.io传输图片和声音文件
- Java使用Socket进行字符串和图片文件同时传输
- 笔记:使用json传输图片,根据个人经验:我做不到,想了个办法将文件转变成字符串并压缩
- 使用独立的DLL来存储图片(资源文件)
- CentOS 7.0 使用Vsftpd服务传输文件
- 使用ActiveMQ 传输文件 以及使用Jetty搭建内嵌文件服务器
- Spring使用外部属性文件以及常见错误(内附大量图片,很有借鉴意义)
- iOS使用AFNetworking上传图片或者文件
- Android使用缓存机制实现文件下载及异步请求图片加三级缓存
- MVC文件图片ajax上传轻量级解决方案,使用客户端JSAjaxFileUploader插件01-单文件上传
- 使用img src Base64 实现图片的传输和预览
- C#实现使用Excel COM组件向Excel文件中添加图片的Demo
- 文件批量传输组件作为架包使用说明
- 如何使用asp.net中的控件将一个图片文件从一个目录传到另外一个目录下?
- javascript 使用FormData实现图片/文件异步上传
- 如何使用C#在PDF文件添加图片印章
- xshell使用xftp传输文件、使用pure-ftpd搭建ftp服务
- java socket通信-传输文件图片