如果不通过串口调试助手,PC怎样接收单片机发送的字符串

作者&投稿:岛度 (若有异议请与网页底部的电邮联系)
单片机串口接收一串特定字符的程序,用串口调试助手发送命令,可是单片机不回~

//特定的字符,那就先弄好数据格式
//比如 你要接收4个ASII字符
//那就把帧设计成
//起始符-字节数-有效数据-结束符 等类似这种格式
//起始符一般订为不常用的 ASII 字符 ,结束符号也是比如$,#,@这些
//假设你要发送ASII的1 2 3 4,起始符-$,结束符-@
//那就要发送 $ 4 1 2 3 4 @ 。第一个4就是有效数据的个数。
里面的变量都是要全局变量因为每次进入中断,变量值不应该复位。

bit flag1=0,flag2;
uchar receive,lenth,i,job_flag;
在最开头定义这些变量
//这样你在编程的时候
void Send() interrupt 4
{

if(RI==1)
{
RI=0;
receive=SBUF;
switch(job_flag)
{
case 0:
if(receive=='$')//判断起始符号
{
job_flag=1;
}
break;
case 1: //判断接收数据长度
lenth=receive;
job_flag=2;
break;
case 2: //接收数据
if(i<lenth)//接收数据并保存到buf数组里
{
buf[i]=receive;
i++;
if(i>lenth)//如果接收的有效数据长度超过了说明数据有错误复位接收
{
i=0;
job_flag=0;
}
if(i==lenth)//接收完成,转到接收结束符
{
job_flag=3;
}
}
break;

case 3: //接收数据
if(receive=='@')//判断结束付-复位接收状态
{
i=0;
job_ flag=0;
flag_RI=1;//接收成功标志位
}
break;
default:
i=0;
job_ flag=0;
flag_RI=0;
break;
}

}
if(TI==1)
{
TI=0;
flag_TI=0;
}
}

uchar idata SystemBuf[10]; //用于接收
uchar Rx=0; //接收数据条数
uchar code AT[]="YES,IT IS";
void UART_init (void)
{
TMOD=0x20;//用定时器1
PCON=0x00; //波特率不加倍
SCON=0x50;//串行方式1
TH1=0xFD;//9600
TL1=0xFD;//
EA=1;//
ES=1;//
TR1=1;
}
void sendchar(uchar ch) //串口送一个字节
{
SBUF=ch;
while(TI==0);
TI=0;
}
void sendstring(uchar *p) //送字符串
{

while(*p)
{
sendchar(*p);
p++;
}
}
///////
void receive(void) interrupt 4 using 1 //中断
{

if(RI)
{

if(Rx<10) //这儿最多收10个字节
{
SystemBuf[Rx]=SBUF;
Rx++;
}

RI=0;
}
}
///
void main()
{
uchar i;
UART_init();
while(1)
{
if(SystemBuf=='S')
{
sendstring(AT);
for(i=0;i<10;i++) //接收清0
{
SystemBuf[i]=0;
}
Rx=0;
}
}
}
//////////如有小错误,自己调下,手打的,大小写可能不正常,这是标准程序,直接用,

使用串口调试助手是最方便的,可以接收十六进制数。
还可以用电脑的超级终端,但只能接收ASCII码,即单片机必须发送字符,电脑才能收到看到,当然了,单片机也可以发送汉字,PC的超级终端也能收到看到。
还有:STC的烧录软件里,也有串口助手,也很方便。
最后一种方法,是自己编写电脑端的接收程序,来接收单片机发送的字符,这是最理想的。


C语言编写串口通信程序在裸机下运行
然后用文本编辑器(如EDIT、CCED等)编写软件,编写好后,用编译器对源程序文件编译,查错,直到没有语法错误,除了极简单的程序外,一般应用仿真机对软件进行调试,直到程序运行正确为止。运行正确后,就可以写片(将程序固化在EPROM中)。在源程序被编译后,生成了扩展名为HEX的目标文件,一般编程器能够识别这种格式的文件,...

VB通过串口读单片机数据没有显示,我用串口调试助手却可以正常显示_百度...
2.Select Case MSComm1.CommEvent '接收单片机发过来的1字节数据 Case comEvReceive MSComm1.RThreshold = 0'这一句不要用.strBuff = MSComm1.Input Text1.Text = Trim(Val(strBuff))MSComm1.InBufferCount = 0 '清空接收缓冲区这一句也别要.然后再试下.End Select MSComm1.RThreshold = 1 En...

串口发送正常接收不到数据
如果使用的是外部设备或模块,还需确认其是否支持当前的串口配置,并查看其手册或联系技术支持以获取帮助。最后,使用串口调试工具进行收发测试,可以辅助定位问题是否出在软件、硬件或配置上。综上所述,解决串口发送正常但接收不到数据的问题需要综合考虑硬件连接、配置设置、信号干扰及软件处理等多个方面,...

嵌入式组态软件的调试功能能否在离线状态下进行?
在MCGS嵌入式组态软件中,强大的调试功能为开发和优化系统提供了便利。首先,软件支持断点设置,允许用户在控制流程的任何阶段暂停执行,进行深入分析。其次,软件具备实时监控功能,通过串口或网络连接,实时获取运行系统数据库中的数据对象值,并在上位机的调试环境中直观显示,便于理解和调整。在在线修改方面...

海湾层显怎么进入调试
3. 进行调试 进入海湾层显的调试模式后,你可以进行一些常规的调试操作。例如,你可以检查海湾层显的音频和视频输出,或者对外接设备进行设置。需要注意的是,调试模式可能对设备性能产生一定的影响。所以,在调试完毕后,不要忘记及时退出调试模式,以确保海湾层显的正常运行。需要提醒的是,如果在操作过程...

...如何将接收到的数据直接反馈到PC机串口调试助
不可以,485属于半双工,232才可以边发送边接受 基于单片机的485总线通信,如何将接收到的数据直接反馈到调试助,你可以将接受到的数据直接转发至PC机串口

vb�是什么
虽然这个断言系统有点鸡肋,但是总算是给调试带来了方便。 10、 Visual Basic 5.0支持创建自己的集合...现在用Visual Basic 2005只要一行代码就可以读写注册表、访问文件、读写串口、获取应用程序信息……用Visual

JLink Commander调试方法(转载)
提高开发效率与快速定位问题的JLink Commander调试指南 在开发过程中,传统方法如串口和IO口调试存在局限性。串口连接受限于硬件配置,实时数据获取不便;而IO口获取的信息有限,无法应对设备运行异常情况。JLink Commander作为一种强大的调试工具,通过commander命令,提供了丰富的实时数据和调试功能,例如获取PC...

如何做个模拟程序,检查串口通讯有没成功
我写了个软件,里面设备协议方面已经搞定,通过串口和设备进行通讯;我是新手,师傅让我把协议的功能做个系统调试,就是模拟下看看串口能否接受和返回我的数据。请问怎么做呢?谁能写... 我写了个软件,里面设备协议方面已经搞定,通过串口和设备进行通讯;我是新手,师傅让我把协议的功能做个系统调试,就是模拟下看看串口...

...我是刚学VB的。VB串口调试,不短接2,3脚,不用串口精灵。怎么直接在VB...
VB串口调试,不短接2,3脚,不用串口精灵。VB 中如何调试串口,不用短接2,3脚的那种,就用双机交叉方式吧。即2接3、3接2.另外一端,可以用 Win自带的 【超级终端】来模拟。追问我说的是不是用硬件,直接在VB程序中就能实现,串口的自发自收。回答说的是不是用硬件,直接在VB程序中就能实现,...

连山区17511256409: 485格式电脑如何接收 -
裔纪喘舒: 先用RS485转RS232的转换器把485信号转成232信号,转换器接在电脑的9针孔串口上,下载个串口调试助手,选择好波特率、接收的字节型式、串口的端口号就可以接收了.如果电脑上没有串口,可以找个RS485转USB口接在电脑上,这个需要装上转换器的驱动,然后就和串口一样了!

连山区17511256409: 在调试rs232串口通信时,单片机往PC机上发数据,串口调试助手可以接收,但是PC往单片机发数据,接收不到. -
裔纪喘舒: 先解释一下现象:(1)MAX232的12脚即R1OUT连接到了单片机的RX脚,因此使用探头碰MAX232的12引脚时导入了干扰信号,所以接收到了乱的数据.同时,也证明了单片机的接收电路和程序都没有问题.(2)板子上的地接到示波器上的地...

连山区17511256409: 怎样不用USB调试就能连接电脑 -
裔纪喘舒: 如果你仅仅是想发送软件.其实很简单.在电脑和手机同时登陆微信或者QQ,然后使用微信的“文件传输助手”或者QQ的我的电脑.就可以互相传输文件了.

连山区17511256409: 魅族手机不开usb调试如何连接电脑? -
裔纪喘舒: 魅族手机打开USB调试连接电脑的方法:可以通过网络进行与电脑的连接,如利用QQ和微信.延展:用微信连接手机和电脑的具体方法 1、打开手机微信和电脑微信 2、找到手机微信和电脑微信上的“文件传输助手” 3、进入“文件传输助手”后即可进行文件传输.

连山区17511256409: 魅族没打开usb调试怎么连接电脑 -
裔纪喘舒: 手机连接电脑方式:1.手机需要处于开机状态.2.将手机与电脑连接,下滑手机屏幕顶帘,查看通知栏是否有提示已连接为媒体设备”或已连接进行充电”-勾选媒体设备MTP”.注:1.若手机连接电脑时屏幕已锁屏,建议先将屏幕解锁.2.若连接后无任何反应,可能是由于电脑中缺少USB驱动,请在电脑中下载安装Kies或S换机助手软件.若手机为Android4.3及以上系统,请下载安装Kies3版本或下载PC版S换机助手连接电脑即可.注:根据电脑的操作系统选择Windows版本下载/MAC OS版本下载.

连山区17511256409: 安卓手机不打开USB 调试怎么连接电脑 -
裔纪喘舒: 如果没有打开USB调试,是不能连接到电脑的 内容拓展: 如何解决手机忘了屏幕锁的方法方法一:恢复出厂设置 这个需要你把手机的卡和内存卡全部取出来,以免上面的数据会被清理了.恢复出厂设置的方法很简单,首先你需要将你的手机...

连山区17511256409: 手机没开usb调试,如何才能连接上电脑 -
裔纪喘舒: 你好! 一、要先打开“USB调试”. 进入“设置”——“关于手机”——“版本号”或“内核版本”,连续快速点击“版本号”或“内核版本”多次,就可看见“开发者选项”了,进入“开发者选项”,就可找到“USB调试”,勾选上. 二、安装 豌 豆 荚 软件 分别在电脑和手机下载安装 豌 豆 荚 软件,用USB线将手机与电脑连接,电脑中的 豌 豆 荚会自动在网上搜索并安装适合你手机的驱动,在手机弹出的USB选项中选手第二项“媒体传输”,确认与电脑连接了.安装豌 豆 荚以后,可选择Wifi连接方式,可通过wiFi实现无线连接,不需USB线. 希望能帮到你,望采纳!

连山区17511256409: 我把PC机作为主机,从机通信协议是modbus,RS485连线,能否使用串口调试助手获取从机地址、发送命令? -
裔纪喘舒: 1、从机是RS485连线,首先需要一个RS485/RS232转换器才能与PC串口连接.2、modbus协议没有读取从机地址的命令,从机地址一般需要人为设定.3、知道了从机地址,PC机可以使用串口调试助手发送modbus命令,注意命令要符合modbus协议格式.

连山区17511256409: 使用串口调试助手一定要用串口线连接吗?我可不可以虚拟一对串口,使用讯的串口来进行报文通信? -
裔纪喘舒: 可以虚拟一对串口,不需要连接线也可以.vspd是一款本人感觉较好的虚拟串口软件,网上有破解版的.

连山区17511256409: PC机编程将数据通过串口输出到单片机 -
裔纪喘舒: 硬件怎样连接?晕--不是说开发板吗?直接用一根USB转串口-USB接电脑PC,COM也就是串口接51开发板的串口,假如你的开发板没有串口的话---(一般板子都有的)实在没有的话就另请高手帮你连了---接好硬件以后---需要准备一个串口调试工...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网