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

本文介绍了如何通过51单片机使用C语言发送数据到串口,然后在Windows环境下,利用Java进行串口通信接收数据。在过程中可能会遇到乱码、open方法错误和找不到串口等问题,解决方法包括检查设备开关、避免软件冲突和确认端口设置正确。
摘要由CSDN通过智能技术生成

环境:

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           read_flag=0;
unsigned char com[]="hello\n";
void init_serialcomm(void)
{
  TMOD=0x20;//设置定时器1为模式2
TH1=0xfd;//装初值设定波特率
TL1=0xfd;
TR1=1;//启动定时器
SM0=0;//串口通信模式设置
SM1=1;
}
void delay_1s()     //1s
{
   unsigned int i;
    for(i=0;i<45000;i++)
    {
    }
}


void delay_1us()     //1s
{
   unsigned int i;
    for(i=0;i<45;i++)
    {
    }
}


//向串口发送一个字符
void send_char_com(char ch)
{
    SBUF=ch;
    while(TI==0);
    TI=0;
    delay_1us();
}


//向串口发送一个字符串,strlen为该字符串长度
void send_string_com(char *str,int strlen)
{
    in
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值