串口操作包括 java上位机 嵌入式c下位机

一环境

1.1 Keil uVision4

http://pan.baidu.com/s/1o6A331w

1.2 STC

http://pan.baidu.com/s/1jGpCUTC

1.3 Myeclipse 8.5

http://pan.baidu.com/s/1jGABEaM

1.4 需导入的jar包RXTX

http://pan.baidu.com/s/1ntwsvRr

首先把rxtxParallel.dll和rxtxSerial.dll复制到jdk目录的bin目录下面

然后把RXTXcomm复制到jdk\jre\lib\ext目录下面

最后还要在你的java project中导入jar包RXTXcomm

1.5 AT89C51单片机

1.6 18B20温度传感器

1.7 DS1302时钟控制器

1.8 1602液晶屏

二单片机下位机

在桌面新建一个文件夹作为你的嵌入式workspace

在keil中新建project

选择刚才在桌面新建的文件夹

选择atmel系列处理器

选择at89c51

将你写好的c文件拷贝到你刚才在桌面新建的过程,如果没写好,就新建一个SouceFile.c文件

切换到keil,双击过程名称,将c文件导入过程

修改过程属性

单击target,将24改为12

单击output,将crate hex对勾打上

如果你导入的c文件没有代码,就重新编写,完成后单击如下三个按钮。如果导入的是写好的c问价,就可以直接单击

再次打开桌面的文件夹,发现里面多了许多文件,包括hex文件

现在就可以将hex文件烧录到单片机了

这里我使用的是STC

单击exe文件

修改你的MCU com口 波特率,然后单击“单开文件”,选择你的hex文件。然后download,把程序烧录到单片机。

这时候提示你重新单片机或者打开单片机的开关按钮。

如果提示找不到或者被占用,首先看是否com口正确,然后看是否有其他软件占用com口。最好把其他软件都关掉。

大家看一下在myeclipse里面的运行结果

三 Pc机上位机

如何接受串口信息,我选择的语言是java,因为这个语言比较强大和灵活。

我选择的IDE是myeclipse 8.5 另外借助kar包rxtx  因为comm包只支持win32位

操作比较简单,就是新建java project ,导入jar包,在src下新建java文件。另外注意rxtx的使用。主要就是将两个dll文件复制到jdk的bin下面,把jar包复印到ext下面,最后把jar导入到你的project中。所有的代码和jar请在下面的链接中下载。下面我给出rxtx的使用效果图。

四源代码下载地址

http://pan.baidu.com/s/1pJDPtPL

里面包含了上位机和下位机的过程文件以及rxtx包。

具体的使用方法请参考ReadMe.tex

时间: 2024-09-30 20:45:30

串口操作包括 java上位机 嵌入式c下位机的相关文章

12.PMAC上位机-中断通信(下位机通知上位机)

之前说过,上位机控制硬件都是通过发送指令进行的,这是单向的.那么反过来,下位机硬件给上位机发送指令怎么才能实现呢?对于PMAC来说,最常见的情况就是,当PMAC一次运动完成时通知当前PC程序运动已完成. 1.下位机通知上位机原理 如下图所示, PC给PMAC发送指令控制它做什么,当运动程序完成后中断通知上位机,在中断的同时发送一个标识P100表明完成的程序号,这个标明到底是1号轴运动完,还是是2号轴运动完.在PC端有一个中断回调函数,下位机发送中断后,会自动跳转到该函数中,中断函数接受中断,根据

下位机单片机c语言发送数据到串口,上位机pc机java语言获取端口数据

环境: Windows7 64b,jdk64b,myeclipse8.5,rxtx开发包,STC,keil,格西烽火,51单片机,rs232USB转串口线. 下位机c代码 #include <reg51.h> #include <string.h> #define INBUF_LEN 7   //数据长度 unsigned char inbuf1[INBUF_LEN]; unsigned char checksum,count3,count=0; bit           rea

MATLAB串口操作和GUI编程

简单的MATLAB GUI编程和串口控制.Word编辑,如需PDF版本,请留言.说实话这个挺难看的……     概述 本文介绍了程序AD9512_Serial_GUI的编程思路和功能.该程序设计到MATLAB的图像用户界面编程的基本方法和串口的基本操作.程序目的在于通过串口写控制字对AD9512进行配置(AD9512通过SPI写入寄存器,本程序只是整个控制程序中的一部分). 修订历史 以下表格展示了本文档的修订过程 日期 版本号 修订内容 2015/01/15 V0.0 初始版本,试验版[1]

V-rep学习笔记:串口操作

VREP Regular API提供了串口操作的相关函数,可以对串口进行打开.关闭和读写: 下面使用一款淘宝上常见的AHRS(Attitude and heading reference system,航姿参考系统)模块来驱动VREP中的虚拟模型,控制其姿态.VREP通过串口读取传感器实时发送的数据并进行解析. 传感器通过串口发送2种数据: 解算后的姿态角和气压高度等数据 原始的传感器ADC数据(直接从传感器读取出来的测量值,没有经过解算处理) 下面是VREP中以16进制显示的接收到的串口数据:

华为机试正式版(西安c/c++/java),今天下午去机试的题目,新鲜出炉了!

以下题目都是回忆的,题目都很简单, 大家有些基础就可以参加!(语言可以是c/c++,也可以是java的) 题目一(60分): 字符串操作, 将小写转换成大写, 将大写转化为小写, 数字的不做转换 例如, 输入:aBcD12 输出:AbCd12 题目二(100分): 将输入的字符串按照规定重新排序,如果字符串长度为奇数, 则中间的字符保持不变, 中间字符左侧降序排列, 右侧字符按照升序排列, 如果字符串长度为偶数,则左半侧字符降序排列,右半侧字符则按照升序排列 例如, 输入:ab5de 输出:ba

Android串口操作,简化android-serialport-api的demo(转载)

原帖地址:点击打开 最近在做android串口的开发,找到一个开源的串口类android-serialport-api.其主页在这里http://code.google.com/p/android-serialport-api/  ,这里可以下到APK及对源码. 但是下载源码之后发现源码不能直接使用,而且源码结构较为复杂.关于串口的操作不外乎几步: 1.打开串口(及配置串口): 2.读串口: 3.写串口: 4.关闭串口. android-serialport-api的代码使用了继承等复杂的行为,

【转】C# 串口操作系列(5)--通讯库雏形

串口是很简单的,编写基于串口的程序也很容易.新手们除了要面对一堆的生僻概念,以及跨线程访问的细节,还有一个需要跨越的难题,就是协议解析,上一篇已经说明了: 一个二进制格式的协议一般包含: 协议头 + 数据段长度 + 数据  + 校验 一个Ascii格式的文本协议,一般包含: 数据头 + 正文 + 数据结束标识 类似的命令可能很多,类似的代码也会重复写很多次.对于我,并不觉得这个有任何难度,但是,很多时候,需要写点类似东西的时候呢,我往往不想写,不是别的,要搭建一个这样的框架,这绝对是个体力活,而

【转】C# 串口操作系列(3) -- 协议篇,二进制协议数据解析

我们的串口程序,除了通用的,进行串口监听收发的简单工具,大多都和下位机有关,这就需要关心我们的通讯协议如何缓存,分析,以及通知界面. 我们先说一下通讯协议.通讯协议就是通讯双方共同遵循的一套规则,定义协议的原则是尽可能的简单以提高传输率,尽可能的具有安全性保证数据传输完整正确.基于这2点规则,我们一个通讯协议应该是这样的:头+数据长度+数据正文+校验 例如:AA 44 05 01 02 03 04 05 EA 这里我假设的一条数据,协议如下: 数据头:     AA 44 数据长度: 05 数据

VC控制台串口操作【645电表抄读】

有时候需要编写简单的测试软件,使用VC++6.0,研究了两种方式操作串口,VC 串口编程方法分为利用 VC 串口控件(或 VC 串口类)和直接调用Windows底层API函数(我称之为VC API 串口编程)两种方法 在Windows 32位以上操作系统(Win98以上)中,将串口(包括其它通信设备)作为文件来处理,所以串口的打开.读写和关闭所用API函数与文件操作函数一样.所以打开串口用CreateFile,读串口用ReadFile,写串口用WriteFile,关闭串口用CloseHandle