❶ CC2530与普通51单片机串口通信怎样实现
1、首先进行连线:
cc2530芯片TX,RX与51单片机的TX,RX交叉相连,然后共地。
2、分别下载接收程序:
用IAR
Embedded
Workbench给接收端CC2530芯片下载接收程序,用keil
uvision4给发送端51单片机下载接收程序。
3、用串口助手分别测试两端:
都可以与电脑进行串口通讯,完成二者串口通信。
❷ pc机和单片机的串行通信怎样实现!
pc机是上位机,单片机是下位机,首先确定单片机同pc连接号232
接口的或者usb转232 视你的单片机类型而定下载个软件串口调试助手或者windows自带的超级终端调试,写好的程序将字符串发送给pc机或者用软件将字符串写如单片机通过数码管或者液晶显示,其中牵涉通讯协议和串口设置,程序生活如歌如上已经说了,可以借鉴下。是在没有明了,找些串口调试的资料在单片机开发版里面,许多都带了!
❸ 电脑上RS232跟单片机怎么连接
电脑通过RS232接口与单片机连接的常用实现如下图(单片机以51系列为例):
3 RS-232
规定的逻辑电平与(51)单片机的逻辑电平不同(如:RS-232的逻辑“1”是以-3~-15V来表示的,而51单片机的逻辑“1”是以+5V来表示的)。因此,单片机系统与电脑的RS-232接口通信,必须把单片机的信号电平(TTL电平)转换成计算机的RS-232C电平(或者反过来把计算机的RS-232C电平转换成单片机的TTL电平),才能成功通讯。本方案使用电平转换芯片MAX232芯片来实现电平转换(连接图中间的芯片)。
4(51)单片机使用RXD和TXD引脚执行串口数据输入/输出。
5 RS-232的RXD连接单片机TXD,TXD连接单片机RXD(中间用MAX232芯片转换电平)。
通过上述步骤即可实现电脑通过RS232接口与单片机(串口)连接并通讯(未考虑软件设置部分)。
❹ 51单片机与PC机之间的硬件如何串口连接
单片机和微机通信的电气标准要一致,微机串口一般是RS232电气标准,所以要加电平转换芯片,大多用MAX232,一般单片机实验板上都提供这样的标准串口。
要分别编写上位机和下位机软件程序,单片机程序参照例程、教科书进行编写;上位机微机可采用VB,组态软件,Labview等软件编写,一般若是简单的通信,上位机程序编写很简单,例如VB中学会使用mscomm控件,有VB最基础知识的一天就能学会。
大可以没有单片机,没有MAX232,没有串行接口这些硬件就可以实现学习并掌握单片机与微机之间的串口通信。proteus可以仿真单片机,也是主流软件。
如今的笔记本电脑几乎都没有保留串口,而用USB接口取而代之,不过没关系,有了虚拟串口和串口调试助手,这些都解决了。你可以搜索一下虚拟串口,真的很不错的。
❺ 单片机串口通讯有哪几种方式
89系列单片机的串行通信有4种工作方式:
1、方式0是同步移位寄存器方式,帧格式8位,波特率固定为fosc/12。
2、方式1是8位异步通信方式,帧格式10位,波特率可变:T溢出率/n(n= :32或16)。
3、方式2是9位异步通信方式,帧格式11位,波特率固定: fosc/n(n=32 或16)。
4、方式3是9位异步通信方式,帧格式11位,波特率可变:T溢出率(m=32或16)。
方式1、2、3的区别主要表现在帧格式及波特率两个方面。
单片机应用范围:
单片机渗透到我们生活的各个领域。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制等等。
还有自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。
❻ 如何进行单片机与PC机的串口数据读取通信
首先硬件要有MAX232芯片做电平转换 或者直接用pl2303做usb转串口.
软件要有一个串口调试工具.
至于程序就是 (1):设置串口相关寄存器 注意波特率设置
(2):把数据放在sbuf里面
(3):检查是否发送完毕没完等待 发完了就继续放
各种单片机设置方法不一样就给你一个51 的程序你参考一下:
//wx原创 串口调试程序 向pc发送数据 用于调试观察数据
#include<reg52.h>
#include<hdy.h>
sbit k1=p10;
void ckfszf(char zf);
void ckfszfc(char fsgs,char zfc[]);
bit cksnbzw=0;
char fsb[]={"abcdef"};
main()
{
PCON=0x80; //串口设置
TMOD=0x20; // 以T1定时器为波特发生器 波特率:19200
TH1=0xfD;
TL1=0xfD;
TR1=1;
SCON=0X50; //串口设置模式一完毕
while(1)
{
TI=1;
ckfszfc(6,fsb);
ckfszf(' ');
ckfszfc(9,"1234567890");
ckfszf(' ');
ckfszf(' ');
ckfszf(' ');
ckfszfc(12,"AABBCCDDEEFFGG");
ckfszf(' ');
while(1);
}
}
//字符 串口发送函数 由串口向外发送一个字符
//参数1:要发送字符
//返回值:无
//备注: 本函数内部检查上次发送是否结束
// 全局初始化要求:TI=1 保证第一次进入此函数之前TI=1
void ckfszf(char zf)
{
while(TI==0); //等待发送完毕
TI=0;
SBUF=zf;
}
//字符串 串口发送函数 由串口向外发送一个字符串
//参数1:要发送字符串个数 取值:0~255
//参数2:要发送字符串数组名 或字符串本身
//返回值:无
//备注: 本函数内部检查上次发送是否结束
// 全局初始化要求:TI=1 保证第一次进入此函数之前TI=1
void ckfszfc(uchar fsgs,char zfc[])
{
uchar i;
cksnbzw=1;
for(i=0;i<fsgs;i++)
{
ckfszf(zfc[i]);
}
}
纯手打 原创程序 给分!