㈠ 单片机调试串口是什么
1、串口是一种通信方式接口。其数据一位一位地顺序传送,一般使用3条线(TX、RX、GND)连接。一般电脑的COM口(9针D形接口)也称它为RS-232接口不能与单片机机直接相连,需要通过电平转换模块转换为TTL电平方可通信。主要设置有波特率、数据位数、奇偶校验、停止位等。单片机通信一般采用96n81配置,即波特率9600、数据位:8位、奇偶校验:n(无)、停止位:1
2、电脑和单片机通信一般使用《串口调试助手》》软件进行调试。
没有串口的电脑一般采用usb转串口(TTL)与单片机的TX、RX管脚直接连接即可调试。
㈡ 单片机串口有什么用
问题一:单片机中串口程序的作用是什么啊 从串口发送或接收数据。
问题二:单片机串口通信的波特率有什么用 两个串口之间通讯的速率,两个串口的波特率设置成一样才能互相发送和接收数据
问题三:单片机中串口与普通I/O口有什么区别? 1 基本功能是一样的,普通端口通过编程也可以完成232串口(spi,i2c)的功能。
2而大多单片机中2个串口管脚(复用,也可以做普通IO口),人家单片机厂家已经集成好了,只需操作一些寄存器和简单编程就可以了,不需要复杂的模拟232串口进行编程了。
3,现在很多单片机都有spi,i2c集成好丹了,不需模拟编程了,简单的控制下相应的寄存器和简单编程可以,
问题四:单片机串行通信的实际作用???举例来说。 单片机串行通信的实际作用:一般用于和外部设备交换数据的
举例来说:一、比如和PC的串口机通信,单片机可以采集一些模拟量(温度,湿度,气体浓度等),将这些模拟量转换成数字量后通过串行通信接口传输个PC机,PC机上还得编写一个简单的应用软件,可以显示这些模拟量(温度,湿度,气体浓度等)的值,这个简单的应用软件应具有串口设置,数据显示,绘制曲线等功能。还可以通过PC机串口发送数据给单片机,用来控制单片机的工作状态等等。和PC机通信应该是应用最广泛的。
二、和其他串口设备通信:单片机一般充当控制器的角色,通过串口发送一定格式的数据来控制与之相连设备的动作,同时设备也会反馈回来一些自己的状态信息给单片机,供念贺仿单片机进行判断,做出相应的控制。
问题五:单片仔纤机中的ES和EA有什么区别在串口中的用途 你把51系统中IE寄存器的各控制位含义搞清楚就明白了。
【1】EA,是所有中断源的总允许位,要使能任何一个中断源,都必须置位它。是“中断总开关”。
【2】ES,仅是串口中断允许位,需要串口的收或发中断允许时,才置位它。是串口中断的“单独开关”。
问题六:为什么用单片机串口通信它的优点是什么 主要是串口通信程序编写简单,硬件接口简单,而且用电脑显示相关的调试信息,不需要借助其他外部硬件,可以很方便地进行程序调试。
最重要的特点:程序简单,可以方便验证程序的正确性。
问题七:单片机调试串口是什么 30分 1、串口是一种通信方式接口。其数据一位一位地顺序传送,一般使用3条线(TX、RX、GND)连接。一般电脑的口(9针D形接口)也称它为RS-232接口不能与单片机机直接相连,需要通过电平转换模块转换为TTL电平方可通信。主要设置有波特率、数据位数、奇偶校验、停止位等。单片机通信一般采用96n81配置,即波特率9600、数据位:8位、奇偶校验:n(无)、停止位:1
2、电脑和单片机通信一般使用《串口调试助手》》软件进行调试。
没有串口的电脑一般采用u *** 转串口(TTL)与单片机的TX、RX管脚直接连接即可调试。
问题八:单片机串口工作的原理是什么? 串口通信的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且拍腊能够实现远距离通信。比如IEEE488定义并行通行状态时,规定设备线总长不得超过20米,并且任意两个设备间的长度不得超过2米;而对于串口而言,长度可达1200米。典型地,串口用于ASCII码字符的传输。
通信使用3根线完成:(1)地线,(2)发送,(3)接收。由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。其他线用于握手,但是不是必须的。串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。对于两个进行通信的端口,这些参数必须匹配:
a,波特率:这是一个衡量通信速度的参数。它表示每秒钟传送的bit的个数。例如300波特表示每秒钟发送300个bit。当我们提到时钟周期时,我们就是指波特率例如如果协议需要4800波特率,那么时钟是4800Hz。这意味着串口通信在数据线上的采样率为4800Hz。通常电话线的波特率为14400,28800和36600。波特率可以远远大于这些值,但是波特率和距离成反比。高波特率常常用于放置的很近的仪器间的通信,典型的例子就是GPIB设备的通信。
b,数据位:这是衡量通信中实际数据位的参数。当计算机发送一个信息包,实际的数据不会是8位的,标准的值是5、7和8位。如何设置取决于你想传送的信息。比如,标准的ASCII码是0~127(7位)。扩展的ASCII码是0~255(8位)。如果数据使用简单的文本(标准 ASCII码),那么每个数据包使用7位数据。每个包是指一个字节,包括开始/停止位,数据位和奇偶校验位。由于实际数据位取决于通信协议的选取,术语“包”指任何通信的情况。
c,停止位:用于表示单个包的最后一位。典型的值为1,1.5和2位。由于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备间出现了小小的不同步。因此停止位不仅仅是表示传输的结束,并且提供计算机校正时钟同步的机会。适用于停止位的位数越多,不同时钟同步的容忍程度越大,但是数据传输率同时也越慢。
d,奇偶校验位:在串口通信中一种简单的检错方式。有四种检错方式:偶、奇、高和低。当然没有校验位也是可以的。对于偶和奇校验的情况,串口会设置校验位(数据位后面的一位),用一个值确保传输的数据有偶个或者奇个逻辑高位。例如,如果数据是011,那么对于偶校验,校验位为0,保证逻辑高的位数是偶数个。
如果是奇校验,校验位位1,这样就有3个逻辑高位。高位和低位不真正的检查数据,简单置位逻辑高或者逻辑低校验。这样使得接收设备能够知道一个位的状态,有机会判断是否有噪声干扰了通信或者是否传输和接收数据是否不同步。
问题九:单片机串口工作方式0,有什么问题? STC89C516是有串口0模式的,所以乱码,有两个原因:
1 串口0模式是低位在先发送的,所以,你的数码管段码不能用普通的码,需要改一下
2 74HC164没有锁存功能,你要加个74HC373来锁存。
另外补充一下,你用74164验证串口0,是没有意义的,因为串口资源本来就少,你还用来转并口,没有实际的意义,真正的扩展,都是用SPI的74159
㈢ 51单片机串口发送“”是怎么回事
一、51单片机串口概念
1、51单片机的串行口
51单片机的串行口是一个可编程全双工的通信接口,具有UART(通用异步收发器)的全部功能。
2、51单片机的硬件连接
简单双向串口通信有两根数据通信线:
发送端TXD(Transmit Data)
接收端RXD(Receive Data)
TXD和RXD要交叉连接
3、51单片机串口通信的基本结构
51单片机的串行口主要是由两个独立的串行数据缓存器SUBF(一个发送缓存寄存器,一个接收缓存寄存器)和发送控制器、接收控制器、输入移位寄存器及若干控制门电路组成。串行口的基本结构如图所示:
关于SUBF:串口数据缓存寄存器,物理上是两个独立的寄存器,但是占用相同的地址。写操作时,写入的是发送寄存器;读操作时,读出的是接收寄存器。
①:接收端:数据通过RXD接收引脚,再通过移位寄存器将数据转存到接收寄存器中
②:发送端:讲数据从发送寄存器中移出,通过TXD发送引脚将数据发送出去
③:波特率:通过设置定时器1的初值,获取T1溢出率,通过SMOD模式的设置求取波特率
④:中断:通过发送中断标志位或接收中断标志位是否被置位,判断是否进入串口中断程序,在接收数据完成后,会将RI置位,产生一个接收中断;在发送完成后,会将TI置位,产生发送中断
4、传播速率——比特率
比特率是指每秒传送的比特(bit)数。单位为bps(bit per second)也可表示为b/s,比特率越高,单位时间传送的数据量(位数)越大。
5、波特率
在串口通信中,收发双方对发送或接收数据的速率有约定,即双方要有相同的波特率,我们可以通过编程对单片机串行口设定4中工作方式:
其中,T1的溢出率 = 1/T1溢出的时间
①:关于定时器1方式的选择
在说选取定时器1方式之前插一句:这里的定时器1方式2不是串口那4中方式中的方式2;
在学习定时器的相关知识的时候,我们知道定时器有4种不同的工作方式,在串口通信的实验中,我们选择的是定时器1的工作方式2;
定时器T1工作于方式0:溢出所需周期数=8192-x
定时器T1工作于方式1:溢出所需周期数=65536-x
定时器T1工作于方式2:溢出所需周期数=256-x
为什么不选择定时器1的工作方式1:
如果我们使用定时器1的工作方式1在中断中装初值的方法来T1溢出率的话,在进入中断、重装值、出中断这个过程中很容易产生时间上的微小的误差,当多次操作时微小的误差不断累积,终会产生错误;
为什么选择定时器1的工作方式2:
因为方式2为自动重装初值的8位定时器/计数器模式(自动重装载就是在定时器溢出后自动装入设定的初值,这样的好处当然是显而易见的,不需要在中断服务器里手动赋值了,所以可以精确的定时)所以用它来做波特率发生器最恰当。
②:波特率的计算
在上面介绍串口四种方式的时候提到了波特率的计算公式,由公式可以看出,串口方式0和方式2的波特率是固定的;方式1和方式3的波特率是可变的(根据定时器T1的溢出率来控制)
话不多说,根据题来理解:
根据已知波特率,如何计算定时器1方式2下计数寄存器中的初值:
已经波特率 = 9600,系统的晶振频率 = 12Mhz,求给TH1和TL1的初值:
由此可见,当系统的晶振频率为12Mhz时,定时器的初值不是整数;经过计算可得,当晶振频率为11.0592Mhz时,(256-x) = 3;
当时钟频率选用11.0592MHZ时,取易获得标准的波特率,所以很多单片机系统选用这个看起来“怪”的晶振就是这个道理。
6、波特率与比特率关系与区别
码元:在数字通信中常常用时间间隔相同的符号来表示一个 二进制数字 ,这样的时间间隔内的信号称为 (二进制)码元。
在信息传输通道中,携带数据信息的信号单元叫码元,每秒钟通过信道传输的码元数称为码元传输速率,简称波特率。即波特率是指数据信号对载波的调制速率,它用单位时间内载波调制状态改变次数来表示。每秒钟通过信道传输的信息量称为位传输速率,简称比特率。比特率表示有效数据的传输速率。波特率与比特率的关系是比特率=波特率X单个调制状态对应的二进制位数。波特率是传输通道频宽的指标。
二、串口通信有关寄存器
1、数据缓存寄存器
SBUF是可以直接寻址的专用寄存器。物理上,它对应着两个寄存器,即一个发送寄存器一个接收寄存器,CPU写SBUF就是修改发送寄存器;读SBUF就是读接收寄存器。接收器是双缓冲的,以避免在接收下一帧数据之前,CPU未能及时的响应接收器的中断,没有把上一帧的数据读走而产生两帧数据重叠的问题。对于发送器,为了保持最大的传输速率,一般不需要双缓冲,因为发送时CPU是主动的,不会产生重叠问题。
2、电源寄存器PCON
该寄存器是用来管理单片机的电源部分,包括上电复位检测,掉电模式,空闲模式等
在串口通信中,我们仅仅需要关注SMOD这一位
SMOD = 0且串口方式为1、2、3时,波特率正常
SMOD = 1且串口方式为1、2、3时,波特率加倍
3、状态寄存器SCON(98H)
SM0 SM1:工作方式选择位,串行口有四种工作方式,他们由SM0和SM1设定,其对应关系表如下:
SM2:多机通信时的接收允许标志位
REN:允许串行接收位
TB8,RB8:发送接收数据的第9位,当串口工作于方式2或3 时使用到,指向的是串行传输的第9位数据;
1)SM2=0,在方式2或3下,TB8、RB8 发送与接收第9位奇偶校验位;
2)SM2=1,多机通信时的接收允许位,并且在方式2或3下工作;
TI:发送中断标志位,在方式0时,当串行发送第8位数据结束时,或在其他方式,串行发送停止位的开始时,由其内部硬件使TI置1,向CPU发出中断申请。在中断服务程序中,必须用软件将其清 0,取消此中断申请。
RI:接收中断标志位,在方式0时,当串行接收第8位数据结束时,或在其他方式,串行接收停止位的中间时,由内部硬件使RI置1,向CPU发出中断申请。也必须在中断服务程序中,用软件将其清0,取消此中断申请。
三、串口通信代码
串行口在工作之前,应对其进行初始化,主要是设置产生波特率的定时器1,串行口控制和中断控制。
void usart_init()
{
TMOD = 0x20; //选择定时器1的工作方式2
TH1 = 0xF3; //通过设置定时器1的初值来选择波特率
TL1 = 0xf3;
TR1 = 1; //打开计数器
SCON = 0x50; //0101 0000
PCON = 0x80;
ES = 1; //打开通信中断 ①
EA = 1; //打开总中断 ②
}
或者
void usart_init()
{
TMOD = 0x20;
TH1 = 253;
TL1 = 253;
TR1 = 1;
SM0 = 0;
SM1 = 1;
// REN = 1
// EA = 1;
// ES = 1;
}
在编写串口发送端程序时,无需用到接收数据和中断服务函数,所以REN、EA、ES不需要对他们进行操作
㈣ 单片机中的串口是什么
单片机中的串口用来进行串行通信,即数据是一位一位(二进制0或1)向外传输的,和并行传递数据相比,数据线比较少,只要1根(异步传输)或2根数据线(同步传输)加一根地线,因此成本低,适合远距离传输,而并行传输一次传输8位或16 位数据,理论上传输速度快,但所需数据线多,并且传输距离远时存在相互干扰问题,结果近年来在一些高速传输场合也被串行通信替代,如USB接口(也是一种串口)打印机已基本取代并口打印机,SATA硬盘早已取代并口硬盘,连显卡也成了串口连接
㈤ 单片机串口是什么意思
问题一:单片机里的串口和并口是什么?什么意思简单解释下,谢谢! 串行接口 (Serial Interface) 是指数据一位一位地顺序传送,其特点是通信线路简单,只要一对传输线就可以实现双向通信(可以直接利用电话线作为传输线),从而大大降低了成本,特别适用于远距离通信,但传送速度较慢。l
问题二:单片机串口调试是什么意思? 一般通过一根串口线将单片机与PC连接好,通过常用的串口调试助手这个软件发数据和接收数据。调试的意贰就是看是否产品能否达到设计人员想要的通信过程。
问题三:单片机串行通信中通信什么意思? 数模是将单片机内的数据输出转换为模拟信号。是单片机通过数模转换器以模拟量的方式与外部建立联系。
模数是将外部模拟信号变为数字信号输入单片机。是外部模拟信号通过模数转换器与单片机建立联系。
串口通讯是单片机与外设之间数字信号的交互。
问题四:单片机串口作用? 进行两线制通信,通过电平转换(MAX232)可与计算机通信
也可单片机间相互通信
问题五:单片机中串口与普通I/O口有什么区别? 1 基本功能是一样的,普通端口通过编程也可以完成232串口(spi,i2c)的功能。
2而大多单片机中2个串口管脚(复用,也可以做普通IO口),人家单片机厂家已经集成好了,只需操作一些寄存器和简单编程就可以了,不需要复杂的模拟232串口进行编程了。
3,现在很多单片机都有spi,i2c集成好丹了,不需模拟编程了,简单的控制下相应的寄存器和简单编程可以,
问题六:什么是单片机串口显示 就是通过单片机的串口传输数据到电脑上或者其他单片机上,然后通过显示工具显示出来。
问题七:单片机调试串口是什么 30分 1、串口是一种通信方式接口。其数据一位一位地顺序传送,一般使用3条线(TX、RX、GND)连接。一般电脑的口(9针D形接口)也称它为RS-232接口不能与单片机机直接相连,需要通过电平转换模块转换为TTL电平方可通信。主要设置有波特率、数据位数、奇偶校验、停止位等。单片机通信一般采用96n81配置,即波特率9600、数据位:8位、奇偶校验:n(无)、停止位:1
2、电脑和单片机通信一般使用《串口调试助手》》软件进行调试。
没有串口的电脑一般采用u *** 转串口(TTL)与单片机的TX、RX管脚直接连接即可调试。
问题八:单片机里面波特率是什么意思 波特率表示串口通信快慢,单位是bit/s
就是1秒能传送二进制数据的位数
计算机中数据都是以二进制形式存储的
一位二进制数称为1比特(bit),它只能表示0和1两个数值,8位二进制数(称1字节)可表示的数值范围是0-255
问题九:单片机中的TXD RXD指什么? RXD、TXD是Receive Data ,Tran *** it Data 的意思。 RXD 为接收数据的引脚,TXD 为发送数据的引脚。
RXD是P3.0,TXD是P3.1
问题十:单片机串行口与普通IO口区别? hi 低调136 ,
串行口是复用口,可以作为串口使用,也可以作为普通IO口。
但是其他的IO口就只能作为普通IO使用了。
因为串行口的相关管教连接着串行模块!
如果能够帮到你,请采纳我的回答,谢谢!
Anson