我想做51 单片机和PC机的数据 通信,在网上下载了一个PDF的文档,照着写了程序,51程序用串口小助手试过可以成功通信,自己照着文档写的 labview程序有问题,我上传上去,请高手帮我看看吧~先谢谢大家了,我新人第一次发帖,希望大家多多帮助。
6
|
|
|
|
下载下来了,使用2010LAbview的版本,下位机采用89C52的单片机,使用的是USB直接与笔记本相连,可以使用,一楼的高手说将16进制改为正常,不需要的!大家可以放心下载使用
|
|
|
|
|
下下来试试
|
|
|
|
|
街头卖回忆 发表于 2012-9-8 14:58
下载下来了,使用2010LAbview的版本,下位机采用89C52的单片机,使用的是USB直接与笔记本相连,可以使用, ...
您好,我也下载看了,为什么我在执行的时候VISA串口字节数一直显示是0,我的下位机用的也是80C52 直接用USB与电脑相连,串口波特率应该也没有问题,就出在VISA串口字节数不能读取写入缓存中的数据,请问一下这是为什么?谢谢了。
|
|
|
|
|
我用的是51单片机AT89S52芯片,2012版的labview,程序未改,任务改动如下,正常#include
#include
unsigned char tmp;
void send_char(unsigned char txd);
main()
{
TMOD = 0x20; // 定时器1工作于8位自动重载模式, 用于产生波特率
TH1=TL1=0xFD; // 波特率9600
SCON = 0x50; // 设定串行口工作方式1 允许接收,相当于下面三句
//SM0=0;
//SM1=1;
//REN=1;
PCON =0x00; // 波特率不倍增
TR1 = 1; // 启动定时器1
while(1)
{
if(RI==1) // 是否有数据到来
{
RI = 0;
tmp = SBUF; // 暂存接收到的数据
P0 = tmp; // 数据传送到P0口
send_char(tmp); // 回传接收到的数据
}
}
}
void send_char(unsigned char txd)
// 传送一个字符
{
SBUF = txd;
while(!TI); // 等特数据传送
TI = 0; // 清除数据传送标志
}
|
|
|
|
|