导航:首页 > 操作系统 > 两片单片机互传数据

两片单片机互传数据

发布时间:2023-08-10 21:24:53

‘壹’ 两个单片机之间的无线传输

选择通讯模块完成传输
1:用rf905进行数据传输,两块单片机都通过串口将数据发送给905,然后通过905发送出去。
2:用PT2262发也可以,如果你不考虑成本的话,你可以用51的一个端口控制一个继电器当按键用
建议nrf24l01这个模块,spi协议,程序不是很难写

‘贰’ 单片机与单片机之间怎么通信

他们之间的通讯就是相互直接数据的传输。比如说,你要用一个单片机控制另外一个单片机,那么你就可以通过232总线连接然后用串口通信,前提是两个单片机都有发送接收程序,还有相应的指令,就是接收到这个信号,另外一个单片机要做什么。那样就可以用一个单片机控制另一个工作。形象化就是你打电话给你朋友跟他说话。

‘叁’ 您好请问一下,两个单片机互相传数据的程序怎么写

两个单片机互相传数据,其实很简单的 就是两个单片机的串口通信,当然需要一个串口通信的协议,如指令码、数据长度、数据等等,就是什么指令需要怎么操作、操作数据是什么。如这是两个单片机简单通信操作的仿真实例可以作为参考。

#include <reg52.h> // 单片机1

#define uchar unsigned char

#include <stdio.h>

unsigned char* c;

sbit k0=P3^2;

sbit k1=P3^3;

sbit led1=P3^5;

uchar k;

bit y0,y1;

bit t,s;

uchar table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d};

void SendOneChar(char c) //发送字节到PC

{

TI=0;

SBUF = c;

while(!TI);

TI=0;

}

void SendString(char *st) //发送字符串到PC

{

while(*st)

{

SendOneChar(*st++);

}

}

void main()

{

SCON = 0x50; //SCON: mode 1, 8-bit UART, enable rcvr

TMOD = 0x20; //TMOD: timer 1, mode 2, 8-bit reload

PCON = 0x80; // 数据位8、停止位1。效验位无 (11.0592M)

TH1 = 0xF4; //TH1: reload value for [email protected]

TR1 = 1; //启动定时器1

ES = 1; //允许串口中断位

EA = 1; //允许总中断位

c=0;

s=1;

k=0;

P1 =~table[k];

while(1)

{

if(k0==0 && y0==0)

{

y0=1;

c = "az";

SendString(c); //发送字符串

}

if(k0==1 ) { y0=0; }

if(k1==0 && y1==0)

{

y1=1;

c = "as";

SendString(c); //发送字符串

}

if(k1==1 ) { y1=0; }

// for(i = 0; i < 4000; i++); //延迟一小段时间

}

}

void chuankou(void) interrupt 4

{

if(RI==1)

{

RI = 0;

if(t==1)

{

if(SBUF=='z') { k++;led1=~led1; }

s=1; t=0;

if(k==10) { k=0;}

P1 =~table[k];

}

if(SBUF=='a' && s==1) { t=1;s=0;}

}

}

------------------

#include <reg51.h> // 单片机2

#define uchar unsigned char

unsigned char* c;

sbit led1=P3^2; // 接收 az , P.2 输出低电平, P3.3 输出高电平。

sbit led2=P3^3; // 接收 aa , P.2 输出高电平, P3.3 输出低电平。

sbit k0=P3^5;

bit y0,t,s;

uchar k;

uchar table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d};

void SendOneChar(char c) //发送字节到PC

{

TI=0;

SBUF = c;

while(!TI);

TI=0;

}

void SendString(char *st) //发送字符串到PC

{

while(*st)

{

SendOneChar(*st++);

}

}

void main (void)

{

SCON = 0x50; // REN=1允许串行接受状态,串口工作模式1

TMOD = 0x21; // 定时器工作方式2

PCON = 0x80; // 数据位8、停止位1。效验位无 (11.0592M)

TH1 = 0xF4; // TH1 = 0xFD; 波特率 2400

TH0=(65536-54253)/256; // 50 mS

TL0=(65536-54253)%256;

TR1 = 1;

ES = 1; // 开串口中断

EA = 1; // 开总中断

// ET0=1;

// TR0=1;

s=1;

k=0;

P1 =~table[k];

while(1)

{

if(k0==0 && y0==0)

{

y0=1;

c = "az";

SendString(c); //发送字符串

}

if(k0==1 ) { y0=0; }

}

}

void chuankou(void) interrupt 4

{

if(RI==1)

{

RI = 0;

if(t==1)

{

if(SBUF=='z') {led1=0;led2=1; k++; }

if(SBUF=='s') {led1=1;led2=0; k--; }

s=1; t=0;

if(k==10) { k=0;}

if(k==255) { k=9; }

P1 =~table[k];

}

if(SBUF=='a' && s==1) { t=1;s=0;}

}

}

void T0_time()interrupt 1

{

TH0=(65536-54253)/256; // 50 mS

TL0=(65536-54253)%256;

k++;

if(k==10) // 这里修改时间

{

k=0;

led1=1;

led2=1;

}

}

‘肆’ 单片机与单片机之间如何进行串行通信

找个单片机教程上面都有 两机RXD TXD 对连,然后编写各个的通讯程序!也有的单片机是带CAN 的 那就按照说明连 ,编写对应的通讯程序!

‘伍’ 单片机的问题

两个单片机串口通讯需要将Rx和Tx连接,一般其中间不需要外接电阻或电容等。但如果两个单片机各自为一套独立系统,彼此相距校远,在两单片机Rx和Tx之问通常会加入驱动芯片,以增加两者之间数据传输的可靠性。
另外如果两单片机是各自独立供电,除了连接Rx和Tx外,还需耍将两边的信号地(GND)连接到一起。

‘陆’ 怎样实现两片单片机之间的并行通信

实际应用是不会这么做的,主要是浪费资源,包括硬件软件的。一般都用串口通讯。
要实现并行通信也是可以的,可以给你一些方法,
硬件连接
px
并口(8个
io口)+
intx
外部中断+
发送请求(2个io口),
发送端:
把要发送
的数据
写入
并口,同时写入
发送请求(如低电平有效
加一些延时后置高电平)
接收端:
产生
接收
外部中断,把px
接收并口
写入0xff
,
并读取
数据,也可以发送
返回数据
与发送端相同。

‘柒’ 两个单片机做一个系统,单片机之间用什么方式通信最好啊!!

1、一般采用单片机串口通讯就可以。
2、串口通讯采用什么信号,要根据实际情况确定。
3、如果单片机之间通讯距离远的话,可以采用RS485通讯方式;如果单片机之间通讯距离近的话,两个单片机串口可以直接通讯。
4、如果对通讯速度要求不高的话,也可以用单片机的普通口做,通过外搭电路,实现两个单片机的通讯。
5、不论采用什么方式的通讯,通讯协议都是自己定义。

阅读全文

与两片单片机互传数据相关的资料

热点内容
androidseekbar进度条 浏览:356
梯度上升算法知乎 浏览:650
qt项目源码下载 浏览:395
不允许代理服务器什么意思 浏览:511
盲反卷积算法 浏览:306
峰火战国什么时候能开服务器 浏览:452
加密的pdf怎么提取和修改 浏览:488
压缩空气气体流量计 浏览:845
高角杯如何编程 浏览:1011
哪个app可以下载迷失岛 浏览:29
100以内程序员键盘 浏览:914
调试助手源码是什么 浏览:601
程序员网优 浏览:461
有没有极限压缩方法 浏览:79
岳阳hypermill五轴编程 浏览:385
超级舒服的解压神器 浏览:450
超短macd源码 浏览:167
群晖怎么设置用户访问指定文件夹 浏览:557
安卓怎么测触摸屏 浏览:596
javastring原理 浏览:318