FPGA笔记8

您所在的位置:网站首页 何泽慧的老公是谁呀 FPGA笔记8

FPGA笔记8

2024-07-16 17:19:05| 来源: 网络整理| 查看: 265

目录

串口通信原理

串行通信基础知识

处理器与外部设备通信的两种方式:

 串行通信的通信方式:

串行通信的传输方向:

常见的串行通信接口:

异步串口通信UART基础知识

数据格式:

传输速率:

接口标准:

RS232接口

串口通信实验RS-232

实验任务

硬件设计

程序设计

 实验现象

串口通信原理 串行通信基础知识 处理器与外部设备通信的两种方式:

并行通信:数据的各个位用多条数据线同时传输。传输速度快,占用引脚多

串行通信:数据分成一位一位的形式在一条传输线上逐个传输。传输速度慢,占用引脚少。

 串行通信的通信方式:

同步通信:带时钟同步信号的数据传输,接收方和发送方在同一时钟的控制下,同步传输。

异步通信:不带时钟同步信号的数据传输,接收方和发送方各自使用各自的时钟控制接受和发送。要约定好传输速率。

串行通信的传输方向:

单工:数据只能沿一个方向传输

半双工:数据传输能沿两个方向传输,但需要分时进行

全双工:数据可以同时双向传输(两条信号线)

常见的串行通信接口:

异步串口通信UART基础知识

UART(通用异步收发器),两条信号线。

发送时并行数据→串行数据接收时串行数据→并行数据

理解:

协议层:通信协议(包括数据格式、传输速率等)

物理层:接口类型、电平标准等

协议层:

数据格式:

空闲状态下:高电平

起始位(低电平)表示一帧数据的开始,接收方准备接收数据

数据位:可以为5、6、7、8位,8位最常用

校验位:用来检验数据在传输过程中是否出错。

        奇校验:发送方需要保证数据位和检验位中1的个数为奇数。(数据位中0101101,则校验位为1,满足五个1),接收方进行检测。

        偶校验:发送方需要保证数据位和检验位中1的个数为偶数。(数据位中0101101,则校验位为0,满足四个1),接收方进行检测。

停止位:可以为1、1.5、2位(保持1、1.5、2个时钟周期的高电平),表示一帧数据的结束。之后数据线回到空闲状态。

 

传输速率:

用波特率表示。波特率:每秒钟传输二进制数据的位数(bit),单位bps(位/秒),常用波特率:9600、19200、38400、57600、115200

物理层:

接口标准:

 RS232:

        点对点:A~B;

        单端传输(信号线+地线,两线差值作为传输数据);

        最大传输距离15m

RS422:

        差分传输(两条极性相反的信号线,A+、A-,两线差值作为传输数据,受到干扰为共模干扰,减法运算被抵消,故抗干扰能力强);

        点对多:一个主设备和多个从设备(A~b,A~c)

        1200m传输距离

RS485:

        分时进行;

        多点双向通信:一个主设备和多个从设备(A~b,A~c,b~c),形成通信网络

RS232接口

常见接口类型DB9

 常用pin2、3、5

串口通信实验RS-232 实验任务

开发板与上位机通过串口通信,完成数据环回实验

硬件设计

fpga为TTL电平(+3.3、0)需要进行电平转换(-15——+3.3、+15——0)

程序设计

 

 

module uart_send( input sys_clk, //系统时钟 input sys_rst_n, //系统复位,低电平有效 input uart_en, //发送使能信号 input [7:0] uart_din, //待发送数据 output reg uart_txd //UART发送端口 ); //parameter define parameter CLK_FREQ = 50000000; //系统时钟频率 parameter UART_BPS = 9600; //串口波特率 localparam BPS_CNT = CLK_FREQ/UART_BPS; //为得到指定波特率,对系统时钟计数BPS_CNT次 //reg define reg uart_en_d0; reg uart_en_d1; reg [15:0] clk_cnt; //系统时钟计数器 reg [ 3:0] tx_cnt; //发送数据计数器 reg tx_flag; //发送过程标志信号 reg [ 7:0] tx_data; //寄存发送数据 //wire define wire en_flag; //***************************************************** //** main code //***************************************************** //————————————————————————————————————————————————// //捕获uart_en上升沿,得到一个时钟周期的脉冲信号 assign en_flag = (~uart_en_d1) & uart_en_d0; //对发送使能信号uart_en延迟两个时钟周期 always @(posedge sys_clk or negedge sys_rst_n) begin if (!sys_rst_n) begin uart_en_d0


【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭