当前位置: 首页 > news >正文

怎样做企业手机网站建设百度app推广方法

怎样做企业手机网站建设,百度app推广方法,微信公众号api,长沙做黄叶和网站的公司有哪些目录 前言 一.通信基本原理 1.1串行通信与并行通信 1.2同步通信和异步通信 1.2.1异步通信 1.2.2同步通信 1.3单工、半双工与全双工通信 1.4通信速率 二.串口通信简介 2.1接口标准 2.2串口内部结构 2.3串口相关寄存器 三.串口工作方式 四.波特率计算 五.串口初始化步骤 六.实验…

目录

前言

一.通信基本原理

1.1串行通信与并行通信

1.2同步通信和异步通信

1.2.1异步通信

1.2.2同步通信

1.3单工、半双工与全双工通信

1.4通信速率

二.串口通信简介

2.1接口标准

2.2串口内部结构

 2.3串口相关寄存器

三.串口工作方式 

四.波特率计算

五.串口初始化步骤

六.实验程序


前言

详细图解,同步和异步通信原理,单片机串口,通信速率计算,串口寄存器与工作方式

一.通信基本原理

1.1串行通信与并行通信

串行通信:是指使用一条数据线,将数据一位一位地依次传输。

串行通信的特点:传输线少,长距离传送时成本低,且可以利用电话网等现 成的设备,但数据的传送控制比并行通信复杂。

并行通信:通常是将数据字节的各位用多条数据线同时进行传送。

并行通信的特点:控制简单、传输速度快;由于传输线较多,长距离传送时成本高且接收方的各位同时接收存在困难,抗干扰能力差。

1.2同步通信和异步通信

1.2.1异步通信

异步通信:发送和接收设备的时钟尽可能一致。以字符(构成的帧)为单位进行传输,字符与字符之间的间隙(时间间隔)是任意的,但每个字符中的各位是以固定的时间传送的。

异步通信的特点:不要求收发双方时钟的严格一致,实现容易,设备开销较小,但每个字符要附加 2~3 位用于起止位,各帧之间还有间隔,因此传输效率不高。

1.2.2同步通信

同步通信时要建立发送方时钟对接收方时钟的直接控制,使双方达到完全同步。此时,传输数据的位之间的距离均为“位间隔”的整数倍,同时传送的字符 间不留间隙,即保持位同步关系,也保持字符同步关系。发送方对接收方的同步可以通过两种方法实现。如下图所示

1.3单工、半双工与全双工通信

1.4通信速率

波特率和比特率是衡量通信传输速率的两个不同的参数,它们之间有着明确的区别。具体如下:

  • 波特率:指的是每秒钟传送的信号变化次数,也称为传码率,单位是波特(Baud)。波特率决定了信息传输的速度和可靠性。在电子通信领域,波特即调制速率,指的是有效数据信号调制载波的速率,即单位时间内载波调制状态变化的次数。
  • 比特率:表示的是每秒钟传输的二进制的位数,单位为bit/s。比特率是每秒钟传送的比特数量,又称为传信率。

此外,在某些情况下,如果每个信号符号只编码1比特的数据,那么比特率和波特率是相等的。例如,基础的二进制通信,其中每个信号变化(例如从高到低或从低到高)都表示一个比特。而在高阶调制中,如QPSK、16-QAM等,一个信号符号可能代表2比特、4比特或更多,这时比特率会大于波特率。这种情况比较少见,但在某些冗余编码或特定的编码方法中,可能需要多个信号变化来表示一个比特,从而导致比特率小于波特率。

衡量通信性能的一个非常重要的参数就是通信速率,通常以比特率(Bitrate)来表示。比特率是每秒钟传输二进制代码的位数,单位是:位/秒( bps)。如 每秒钟传送 240 个字符,而每个字符格式包含 10 位(1 个起始位、1 个停止位、 8 个数据位),

这时的比特率为: 10 位×240 个/秒 = 2400 bps

在后面会遇到一个“波特率”的概念,它表示每秒钟传输了多少个码元。而 码元是通信信号调制的概念,通信中常用时间间隔相同的符号来表示一个二进制 数字,这样的信号称为码元。如常见的通信传输中,用 0V 表示数字 0,5V 表 示数字 1,那么一个码元可以表示两种状态 0 和 1,所以一个码元等于一个二 进制比特位,此时波特率的大小与比特率一致;如果在通信传输中,有 0V、 2V、 4V 以及 6V 分别表示二进制数 00、 01、 10、 11,那么每个码元可以表示四 种状态,即两个二进制比特位,所以码元数是二进制比特位数的一半,这个时候 的波特率为比特率的一半。由于很多常见的通信中一个码元都是表示两种状态, 所以我们常常直接以波特率来表示比特率。

二.串口通信简介

串口通信(Serial Communication),是指外设和计算机间通过数据信号线、 地线等按位进行传输数据的一种通信方式,属于串行通信方式。串口是一种接口 标准,它规定了接口的电气标准,没有规定接口插件电缆以及使用的协议。

2.1接口标准

串口通信的接口标准有很多,有 RS-232C、 RS-232、 RS-422A、 RS-485 等。 常用的是 RS-232 和 RS-485。RS-232 其实是 RS-232C 的改进,原理是一样的。 这里我们就以 RS-232C 接口进行讲解

RS-232C 是 EIA(美国电子工业协会)1969 年修订 RS-232C 标准。RS-232C 定义了数据终端设备(DTE)与数据通信设备(DCE)之间的物理接口标准。

RS-232C 接口规定使用 25 针连接器,简称 DB25,连接器的尺寸及每个插 针的排列位置都有明确的定义,如下图所示

2.2串口内部结构

 TXD 和 RXD 为单片机 IO 口,TXD 对应的是 P3.1 管脚,RXD 对 应的是 P3.0 管脚。

 2.3串口相关寄存器

SM0 和 SM1为工作方式选择位:

SM2:多机通信控制位,主要用于方式 2 和方式 3。当 SM2=1 时可以利用收到 的 RB8 来控制是否激活 RI(RB8=0 时不激活 RI,收到的信息丢弃;RB8=1 时收 到的数据进入 SBUF,并激活 RI,进而在中断服务中将数据从 SBUF 读走)。当 SM2=0 时,不论收到的 RB8 为 0 和 1,均可以使收到的数据进入 SBUF,并激活 RI (即此时 RB8 不具有控制 RI 激活的功能)。通过控制 SM2,可以实现多机通信。

REN:允许串行接收位。由软件置 REN=1,则启动串行口接收数据;若软件置 REN=0,则禁止接收。

TB8:在方式 2 或方式 3 中,是发送数据的第 9 位,可以用软件规定其作用。 可以用作数据的奇偶校验位,或在多机通信中,作为地址帧/数据帧的标志位。 在方式 0 和方式 1 中,该位未用到。

RB8:在方式 2 或方式 3 中,是接收到数据的第 9 位,作为奇偶校验位或地 址帧/数据帧的标志位。在方式 1 时,若 SM2=0,则 RB8 是接收到的停止位。

TI:发送中断标志位。在方式 0 时,当串行发送第 8 位数据结束时,或在其 它方式,串行发送停止位的开始时,由内部硬件使 TI 置 1,向 CPU 发中断申请。 在中断服务程序中,必须用软件将其清 0,取消此中断申请。

RI:接收中断标志位。在方式 0 时,当串行接收第 8 位数据结束时,或在其 它方式,串行接收停止位的中间时,由内部硬件使 RI 置 1,向 CPU 发中断申请。 也必须在中断服务程序中,用软件将其清 0,取消此中断申请

三.串口工作方式 

以上有4种工作模式,接下来使用方式1接下介绍

方式 1 是 10 位数据的异步通信口。TXD 为数据发送引脚,RXD 为数据接收引 脚,传送一帧数据的格式如下所示。其中 1 位起始位,8 位数据位,1 位停止位

用软件置 REN 为 1 时,接收器以所选择波特率的 16 倍速率采样 RXD 引脚电 平,检测到 RXD 引脚输入电平发生负跳变时,则说明起始位有效,将其移入输入 移位寄存器,并开始接收这一帧信息的其余位。接收过程中,数据从输入移位寄 存器右边移入,起始位移至输入移位寄存器最左边时,控制电路进行最后一次移 位。当 RI=0,且 SM2=0(或接收到的停止位为 1)时,将接收到的 9 位数据的前 8 位数据装入接收 SBUF,第 9 位(停止位)进入 RB8,并置 RI=1,向 CPU 请求中断

四.波特率计算

要计算STC89C52单片机的波特率,

可以采用以下公式: 波特率 = 定时器时钟频率 / (12 * (计数器初值 + 1))

具体步骤如下:

  1. 确定晶振频率:需要知道STC89C52单片机使用的晶振频率。这是计算波特率的起点,因为定时器的时钟频率通常基于晶振频率。
  2. 计算定时器时钟频率:定时器时钟频率通常是晶振频率的1/12。例如,如果晶振频率是11.0592MHz,那么定时器时钟频率为921.6kHz。
  3. 设置SMOD位:SMOD是串口模式选择位,它会影响波特率的计算。SMOD位为0时,波特率误差较大;SMOD位为1时,波特率误差较小。这个设置在串口控制寄存器SCON中。
  4. 计算计数器初值:计数器初值是根据所需波特率和定时器时钟频率来计算的。计算公式为:计数器初值 = 65536 - (定时器时钟频率 / (12 * 波特率))。
  5. 设置定时器:根据计算出的计数器初值设置定时器1(TH1和TL1)。定时器1将被用作波特率发生器。
  6. 考虑波特率加倍:如果使用了波特率加倍功能,计算方法会有所不同。在这种情况下,公式变为:TH1 = TL1 = 256 - 晶振值/12/16/波特率。
  7. 编写初始化代码:根据上述设置,编写串口初始化代码,包括设置SCON、TMOD和TH1、TL1的值。

以下列出了几种方式下波特率的计算公式:

方式 0 的波特率 = fosc/12

方式 2 的波特率 =(2 SMOD/64)· fosc

方式 1 的波特率 =(2 SMOD/32)·(T1 溢出率)

方式 3 的波特率 =(2 SMOD/32)·(T1 溢出率)

其中 T1 溢出率 = fosc /{12×[256 -(TH1)]}

或者直接使用普中的软件进行波特率计算,这样更快

五.串口初始化步骤

我们使用定时器寄存器和串口寄存器

六.实验程序

我们通过串口助手输入两个16位的数字可实现控制P2端的LED灯的亮灭

例如:FE

#include "reg52.h"typedef unsigned int u16;	//对系统默认数据类型进行重定义
typedef unsigned char u8;#define LED P2/*******************************************************************************
* 函 数 名       : uart_init
* 函数功能		 : 串口通信中断配置函数,通过设置TH和TL即可确定定时时间
* 输    入       : baud:波特率对应的TH、TL装载值
* 输    出    	 : 无
*******************************************************************************/
void uart_init(u8 baud)
{TMOD|=0X20;	//设置计数器工作方式2SCON=0X50;	//设置为工作方式1PCON=0X80;	//波特率加倍TH1=baud;	//计数器初始值设置TL1=baud;ES=1;		//打开接收中断EA=1;		//打开总中断TR1=1;		//打开计数器		
}/*******************************************************************************
* 函 数 名       : main
* 函数功能		 : 主函数
* 输    入       : 无
* 输    出    	 : 无
*******************************************************************************/
void main()
{	uart_init(0XFA);//波特率为9600while(1){			}		
}void uart() interrupt 4 //串口通信中断函数
{u8 rec_data;RI = 0;			//清除接收中断标志位rec_data=SBUF;	//存储接收到的数据LED = rec_data;  //通过串口传入的数据,控制连接P2端的LED灯亮灭SBUF=rec_data;	//将接收到的数据放入到发送寄存器while(!TI);		//等待发送数据完成TI=0;			//清除发送完成标志位				
}

注意:我们使用串口助手时,

需要了解自己芯片的晶振频率:如11.0592MHZ或12MHZ

计算波特率:这里是9600

还要开启串口,才能发送数据

以上就是本期补齐的内容,欢迎参考指正,如有不懂,欢迎评论或私信出下期!!!

http://www.hengruixuexiao.com/news/47699.html

相关文章:

  • 四库一平台建筑企业资质查询sem和seo是什么
  • 电商网站商品排序分类怎么做软文营销的优势
  • 我想学网站建设凡科小程序
  • 处方药可以做网站吗公司seo是指什么意思
  • 做lol直播网站长沙网站优化价格
  • 现在清算组备案在哪个网站做搜索软件排行榜前十名
  • 无锡网站设计公司电话微信做单30元一单
  • 东莞疫情最新消息今天seo站长综合查询工具
  • 品牌型网站制作价格网络推广方法技巧
  • 用webstorm做静态网站扬州百度推广公司
  • ps做分享类网站效果图手机上可以创建网站吗
  • 如何做网站自适应郑州网站推广公司排名
  • 律师行业网站建设网页版登录入口
  • 党委门户网站建设意义百度资源
  • 织梦网站采集侠怎么做长春网站建设公司哪个好
  • 中国电信网站备案 密码重置文案代写在哪里接单子
  • 信宜网站建设公司网络营销工作内容
  • 做网站和优化共多少钱?百度指数在线查询工具
  • 网站制作 火星科技seo技术顾问阿亮
  • 响应式网站做多大的尺寸seo网站排名
  • 进什么网站接模具做seo网站seo
  • 安卓做网站教程sem广告投放是做什么的
  • 中英文双语的网站怎么建设子域名查询工具
  • 汕头站扩建有连接华东线吗阿里巴巴国际站
  • seowhy问答西安网站seo排名优化
  • 引流网站建设高质量发展服务业
  • 白云电子商务网站建设认识网络营销
  • 做网站模板用什么软件山东最新消息今天
  • 做家政公司网站软文网站大全
  • dz 一步一步教你做网站制作网页的软件