导航:首页 > 操作系统 > 单片机与pc通信

单片机与pc通信

发布时间:2022-11-03 15:31:55

A. 51单片机与PC的通信

1、PC端重新打开串口后数据发生变化,应该是PC端程序或者硬件的问题;
2、如果要实现收到指令后,开始发送,那么单片机端应该有一个收串口数据的过程。指令可以自己定义,比如5个0。检测到接受的数据中有匹配的指令后开始发送数据。

B. 怎么利用单片机与pc进行实时通信

如果硬件没有问题的话,你的软件程序可以拆分为以下考虑 1、串口通信有问题吗?你先保证PC串口调试软件发一个数据,单片机能准确收到。 调试办法,单片机接收到后,体现在io管脚上或指示灯指示。如pc发送0x55,看看单片机是不是收到了; 2、单片机的lcd液晶显示 你用的是12864不知道控制器是什么信号的,KS0107,T6963C还是ST7920,对照液晶说明书,关键字设置,点亮液晶,比如在固定位置显示一个字符 如果上面两条都实现了, 把两段程序柔和到一起就ok了

C. can线可以实现单片机与pc之间的通讯吗

你的问题本身就是有问题的
“CAN协议用什么芯片”?
PC机和一些外围设备一般通过 串行通行方式(232串口或USB)
要想can和PC 通信,必须转换,你需要用CAN-RS232转换器,或者带转接功能的PCI卡(不推荐),

如果通过232串行方式,只需在pc机编写软件就行了,也可以用串口调试助手,
如果是usb方式的,一般也要用usb转232

单纯给你一个max232(串口通信用的),也不能直接和can通信,还是需要程序的,
最好买一个can-232转换器,自己做一个也行()不是很难的事。

如何连接?
232与PC也就是三根线,txd rxd 和gnd,和PC后端DB9连接即可,如果笔记本,没办法,只能usb转串口了,
也可以选一个can-usb转换器

D. 如何实现单片机与PC之间socket通信

单片机与PC之间最简单的通讯是通过串口来实现,其次是通过并口,这不需要额外的资源开销,如果通过socket来通讯,那么需要设计专用的板卡。

E. 单片机与PC通讯有什么方式

电脑和单片机除了串口,再有就是网络通讯方式。但是需要有网口接口芯片,还要编写支持TCP/IP协议的程序。可是用传统的51单片机却很难实现。你可以用STM32单片机组成支持互联网通信的系统,就可以达到1Mbps以上。除此,再无其它方法。

F. 怎么实现单片机和PC机进行SPI通讯

实现单片机和PC机进行SPI通讯方法:
1:电路设计
设计的电路,利用两片AT89C52芯片,一片做为发送模块,一片做为接收模块。分别编写发送和接收程序,实现数据的发送和接受。通过LED显示接收到的数据。通过示波器观察输出的波形。
2:编写程序
根据设计好的电路及题目要求分别编写数据发送程序和数据接收程序。 ①:数据发送程序 #define
uchar unsigned char
#define uint unsigned int

#define ulong unsigned long
//--------------------------- #include <REG52.H>
#include<STDIO.H>
//--------------------------- sbit SPICLK = P1^0; //时钟信号 sbit MOSI = P1^1; //主器件数据输出,从器件数据输入 sbit MISO = P1^2; //主器件数据输入,从器件数据输出
sbit SS = P1^3; //从器件使能信号
void Dat_Transmit(uchar dat) //发送数据程序
{ uchar i,datbuf;
datbuf=dat;
SS=1; while(SS){;} for(i=0;i<8;i++) {
while(SPICLK){;} if(datbuf&0x80) MISO=1; else
MISO=0;
datbuf=(datbuf<<1); while(~SPICLK){;}
}
}
void main(void)
{ uchar i; while(1) {
for(i=0;i<10;i++) {
Dat_Transmit(i);
}
}
}
②:数据接收程序 #define uchar unsigned char
#define uint unsigned int #define ulong
unsigned long
//--------------------------- #include <REG52.H>
#include<STDIO.H>
//--------------------------- sbit SPICLK = P1^0; //时钟信号 sbit MOSI = P1^1; //主器件数据输出,从器件数据输入 sbit MISO = P1^2; //主器件数据输入,从器件数据输出 sbit SS = P1^3; //从器件使能信号

//--------------------------- void Nop(void)
{ ;
}
void Delay(uchar t) { while(t--){;}
}

uchar Data_Receive(void) //数据接收程序
{ uchar i,dat=0,temp; bit
bt;

SPICLK=1; MISO=1; SS=0;
//选中器件
Nop(); Nop();
for(i=0;i<8;i++) { SPICLK=1;
Nop()
Nop(); Nop(); SPICLK=0; Nop(); Nop();
bt=MISO; if(bt)
temp=0x01;
else
temp=0x00;
dat=(dat<<1);

dat=(dat|temp);
}
SS=1; SPICLK=1;
return dat;

}
void main(void)
{ uchar exdat; uchar i=0;

uchar code
table[10]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,
0x7F,0x6F}; P2=0;
while(1) { exdat=Data_Receive(); P0=table[exdat];
for(i=0;i<200;i++)
Delay(200);
}
}
3:电路仿真
将数据发送程序生成的HEX文件载入到发送数据的模块,将数据接收程序生成的HEX文件载入到接收数据的模块。在输出端口连接LED灯等到输出信息,利用示波器观察输出波形。
4:SPI总线简介
SPI ( Serial Peripheral Interface ——串行外设接口) 总线是Motorola公司推出的一种同步串行接口技术。SPI总线系统是一种同步串行外设接口,允许MCU(微控制器)与各种外围设备以串行方式进行通信、数据交换。外围设备包括FLASHRAM、A/ D 转换器、网络控制器、MCU 等。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,现在越来越多的芯片集成了这种通信协议。其工作模式有两种:主模式和从模式。SPI是一种允许一个主设备启动一个从设备的同步通讯的协议,从而完成数据的交换。也就是SPI是一种规定好的通讯方式。这种通信方式的优点是占用端口较少,一般4根就够基本通讯了(不算电源线)。同时传输速度也很高。一般来说要求主设备要有SPI控制器(也可用模拟方式),就可以与基于SPI的芯片通讯了。
利用SPI总线可在软件的控制下构成各种系统。如1个主MCU和几个从MCU、几个从MCU相互连接构成多主机系统(分布式系统)、1个主MCU和1个或几个从I/O设备所构成的各种系统等。在大多数应用场合,可使用1个MCU作为主控机来控制数据,并向1个或几个从外围器件传送该数据。从器件只有在主机发命令时才能接收或发送数据。其数据的传输格式是高位(MSB)在前,低位(LSB)在后。
当一个主控机通过SPI与几种不同的串行I/O芯片相连时,必须使用每片的允许控制端,这可通过MCU的I/O端口输出线来实现。但应特别注意这些串行I/O芯片的输入输出特性:首先是输入芯片的串行数据输出是否有三态控制端。平时未选中芯片时,输出端应处于高阻态。
若没有三态控制端,则应外加三态门。否则MCU的MISO端只能连接1个输入芯片。其次是输出芯片的串行数据输入是否有允许控制端。因为只有在此芯片允许时,SCK脉冲才把串行数据移入该芯片;在禁止时,SCK对芯片无影响。若没有允许控制端,则应在外围用门电路对SCK进行控制,然后再加到芯片的时钟输入端;当然,也可以只在SPI总线上连接1个芯片,而不再连接其它输入或输出芯片。
SPI接口是在CPU和外围低速器件之间进行同步串行数据传输,在主器件的移位脉冲下,数据按位传输,高位在前,低位在后,为全双工通信,数据传输速度总体来说比I2C总线要快,速度可达到几Mbps。
5:SPI总线工作原理
SPI总线系统是一种同步串行外设接口,它可以使MCU与各种外围设备以串行方式进行通信以交换信息。SPI有三个寄存器分别为:控制寄存器SPCR,状态寄存器SPSR,数据寄存器。外围设备、网络控制器、LCD显示驱动器、A/D转换器和MCU等。
接口包括以下四种信号:
(1)MOSI – 主器件数据输出,从器件数据输入;

(2)MISO – 主器件数据输入,从器件数据输出;

(3)SCLK – 时钟信号,由主器件产生;
(4) SS –从器件使能信号,由主器件控制,有的IC会标注为CS(Chip select)。 在点对点的通信中,SPI接口不需要进行寻址操作,且为全双工通信,显得简单高效。

G. 单片机与PC通信有什么用

单片机与PC通信通常用于工业控制领域。

H. PC与单片机串行通信控制背景和意义

单片机串行通信的实际作用:一般用于和外部设备交换数据的
举例来说:一、比如和PC的串口机通信,单片机可以采集一些模拟量(温度,湿度,气体浓度等),将这些模拟量转换成数字量后通过串行通信接口传输个PC机,PC机上还得编写一个简单的应用软件,可以显示这些模拟量(温度,湿度,气体浓度等)的值,这个简单的应用软件应具有串口设置,数据显示,绘制曲线等功能。还可以通过PC机串口发送数据给单片机,用来控制单片机的工作状态等等。和PC机通信应该是应用最广泛的。
二、和其他串口设备通信:单片机一般充当控制器的角色,通过串口发送一定格式的数据来控制与之相连设备的动作,同时设备也会反馈回来一些自己的状态信息给单片机,供单片机进行判断,做出相应的控制。

I. 单片机与PC怎么 通信

我就我所知道的给你说说。
单片机的逻辑0是0V,逻辑1是+5V;而PC用的是负逻辑,逻辑0在+9v~+15v之间,逻辑1在-9v~-15v之间。若用九针串口连接的话,先得电平转换,(转换芯片就是大家熟知的RS232,转3.3v 的话用RS3232).之后最重要做麻烦的就是要把时序和波特率设置好(说白了就是遵循相同的协议),这样单片机和PC之间就可以互联互通了,单片机中的串口通信讲的就是这方面的内容,这些资料网上很丰富,或者买个单片机开发板研究研究。

阅读全文

与单片机与pc通信相关的资料

热点内容
怎么查找云服务器上的ftp 浏览:156
我的世界服务器如何注册账号 浏览:934
统计英文字符python 浏览:423
linux信息安全 浏览:908
压缩机接线柱爆 浏览:999
程序员自主创业 浏览:584
汇编程序员待遇 浏览:359
怎么批量有顺序的命名文件夹 浏览:211
杭州程序员健身 浏览:19
dvd光盘存储汉子算法 浏览:758
苹果邮件无法连接服务器地址 浏览:963
phpffmpeg转码 浏览:672
长沙好玩的解压项目 浏览:145
专属学情分析报告是什么app 浏览:564
php工程部署 浏览:833
android全屏透明 浏览:737
阿里云服务器已开通怎么办 浏览:803
光遇为什么登录时服务器已满 浏览:302
PDF分析 浏览:486
h3c光纤全工半全工设置命令 浏览:143