k64 datasheet学习笔记52---Universal Asynchronous Receiver/Transmitter (UART)

时间:2022-12-26 14:19:23

1.前言

UART实现与外设或CPU的通信

2. UART概述

2.1基本特性

(1)Full-duplex operation

(2)Standard mark/space non-return-to-zero (NRZ) format?

(3)Selectable IrDA 1.4 return-to-zero-inverted (RZI) format with programmable pulse width?

(4)13-bit baud rate selection with /32 fractional divide, based on the module clock  frequency

(5)Programmable 8-bit or 9-bit data format

(6)Programmable 1 or 2 stop bits in a data frame.

(7)Separately enabled transmitter and receiver

(8)Programmable transmitter output polarity

(9)Programmable receive input polarity

(10)Up to 16-bit break character transmission.

(11)11-bit break character detection option

(12)Independent FIFO structure for transmit and receive

(13)Two receiver wakeup methods:

Idle line wakeup

Address mark wakeup

(14)Address match feature in the receiver to reduce address mark wakeup ISR overhead?

(15)Ability to select MSB or LSB to be first bit on wire

(16)Hardware flow control support for request to send (RTS) and clear to send (CTS) signals?

(17)Support for ISO 7816 protocol to interface with SIM cards and smart cards

  Support for T=0 and T=1 protocols

  Automatic retransmission of NACK'd packets with programmable retry threshold

  Support for 11 and 12 ETU transfers

  Detection of initial packet and automated transfer parameter programming?

  Interrupt-driven operation with seven ISO-7816 specific interrupts:

  Wait time violated

  Character wait time violated

  Block wait time violated

  Initial frame detected

  Transmit error threshold exceeded

  Receive error threshold exceeded

  Guard time violated

(18)Interrupt-driven operation with 12 flags, not specific to ISO-7816 support

  Transmitter data buffer at or below watermark

  Transmission complete

  Receiver data buffer at or above watermark

  Idle receiver input

  Receiver data buffer overrun

   Receiver data buffer underflow

  Transmit data buffer overflow

  Noise error

  Framing error

  Parity error

  Active edge on receive pin

  LIN break detect

(19)Receiver framing error detection

(20)Hardware parity generation and checking

(21)1/16 bit-time noise detection

(22)DMA interface

2.2  操作模式

  • run mode

normal操作模式

  • wait mode

UART的操作依赖于C1[UARTSWAI] 域,如果C1[UARTSWAI] 为0则UART正常操作,如果C1[UARTSWAI] 1且CPU在wait mode,UART时钟停止,UART进入低功耗模式

当内部或外部中断唤醒CPU时,会唤醒UART发送或接收

  • stop mode

此模式下UART被禁用,当外部中断将CPU退出stop mode时会唤醒UART发送或接收

2.3 UART信号描述

k64 datasheet学习笔记52---Universal Asynchronous Receiver/Transmitter (UART)

k64 datasheet学习笔记52---Universal Asynchronous Receiver/Transmitter (UART)

3.Memory map and registers

只支持单字节访问,下面只给出UART0的寄存器:

k64 datasheet学习笔记52---Universal Asynchronous Receiver/Transmitter (UART)

k64 datasheet学习笔记52---Universal Asynchronous Receiver/Transmitter (UART)

4.功能描述

4.1 transmitter

k64 datasheet学习笔记52---Universal Asynchronous Receiver/Transmitter (UART)

1.支持传输8,9,10数据字符;

2.支持先传输MSB还是LSB可配置;

3.break characters:可以传输break chracters,break chracters包含所有的逻辑0,没有起始、校验位

4.Idle characters: 可以传输idle chracters,idle chracters包含所有的逻辑1,没有起始、校验位

5.Hardware flow control :根据CTS的是否assert来决定是否开启transmitter

6.Transceiver driver enable :??

4.2 receiver

4.3 Baud rate generation

4.4 Data format (non ISO-7816)

4.5 Single-wire operation

4.6 Loop operation

4.7 ISO-7816/smartcard support

4.8 Infrared interface

5.reset

6. System level interrupt sources

7.DMA operation

在传输时,S1[TDRE] and S1[TC]用来配置为assert一个DMA传输请求;

在接收时,S1[RDRF], S1[IDLE], and S2[LBKDIF]被配置为assert一个DMA传输请求

下面的表显示了DMA请求的相关的flag配置:

k64 datasheet学习笔记52---Universal Asynchronous Receiver/Transmitter (UART)

当一个flag用来配置为DMA请求,那么如果flag被置位时,与之相连的DMA请求就会assert,直到DMA传输完毕才会deassert DMA请求

8.Application information

k64 datasheet学习笔记52---Universal Asynchronous Receiver/Transmitter (UART)的更多相关文章

  1. Universal asynchronous receiver transmitter (UART)

    UART基本介绍: 通用异步收发器UART他的功能非常强大 我们只使用UART的全双工异步通信功能,使用中断接收数据. UART_RX:串行数据输入. UART_TX:串行数据输出. 硬件支持: 连接 ...

  2. STM8S——Universal asynchronous receiver transmitter (UART)

    UART基本介绍: 通用异步收发器UART他的功能非常强大 我们只使用UART的全双工异步通信功能,使用中断接收数据. UART_RX:串行数据输入. UART_TX:串行数据输出. 硬件支持: 连接 ...

  3. k64 datasheet学习笔记1---概述

    1.前言 k64 datasheet描述了Freescale MCU的特性.架构和编程模型,主要是面向使用MCU的系统架构和软件应用开发人员. 2.模块划分 datasheet主要按功能对模块进行划分 ...

  4. Universal Asynchronous Receiver/Transmitter

    USART簡介與特性 NRZ標準資料格式(Mark/Space) 半雙工/全雙工 Synchronous 同步傳輸 CLOCK SKEW Asynchronous 非同步傳輸 半/全雙工.同步/非同步 ...

  5. k64 datasheet学习笔记45---10/100-Mbps Ethernet MAC(ENET)之功能描述

    1.前言 本文是对K64 datasheet 之ENET部分的功能描述,将对每个部分进行详细说明 2.Ethernet MAC frame formats MAC帧组成格式 (1)7字节前导码:如按最 ...

  6. k64 datasheet学习笔记3---Chip Configuration之Analog

    1.前言 本文主要讲述K64芯片配置,关于模拟部分的内容,主要包括:ADC, CMP, DAC, VREF 2.16bit SAR ADC 从上图可以看出ADC主要挂在外设总线0上,由于ADC的输入引 ...

  7. k64 datasheet学习笔记21--Direct Memory Access Multiplexer (DMAMUX)

    0.前言 本章主要介绍DMA MUX的相关内容 1.简介 1.1 概述 用来路由DMA源到16路DMA通道: 1.2 特性 1.52个外设slot和10个常开slot可以路由到16路DMA通道 2.1 ...

  8. k64 datasheet学习笔记35---Analog-to-Digital Converter (ADC)

    0.前言 本文主要介绍K64的ADC部分的特性,内部架构,信号描述及操作接口等 1.简介 1.1.ADC模块特性 线性逐次逼近算法,达16bit分辨率 达到4对差分和24个单端模拟量输入 输出模式 差 ...

  9. k64 datasheet学习笔记31---External Bus Interface (FlexBus)

    1.前言 FlexBus多功能外部总线接口控制器是一个硬件模块: (1)通过并行总线提供存储器扩展或与外设连接: (2)如下的同步或异步的slave-only设备可以直连到FlexBus总线或者只需增 ...

随机推荐

  1. 【SFTP】使用Jsch实现Sftp文件上传-支持断点续传和进程监控

    JSch是Java Secure Channel的缩写.JSch是一个SSH2的纯Java实现.它允许你连接到一个SSH服务器,并且可以使用端口转发,X11转发,文件传输等,当然你也可以集成它的功能到 ...

  2. hdu 3535 AreYouBusy

    // 混合背包// xiaoA想尽量多花时间做ACM,但老板要求他在T时间内做完n堆工作,每个工作耗时ac[i][j],// 幸福感ag[i][j],每堆工作有m[i]个工作,每堆工作都有一个性质,/ ...

  3. PHP mongoDB 操作

    <?php /** * PHP操作MongoDB学习笔记 */ //************************* //** 连接MongoDB数据库 **// //************ ...

  4. cocos2d-html5 之重要概念

    1,CCDirector:导演: 2,CCCamera: 摄像机:细到每个节点都要用摄像机,例如节点发生放大,缩小,旋转的时候,要继承摄像机,让其重新渲染: 3,CCScene:场景,拍电影时的一段剪 ...

  5. 数据权限设计——基于EntityFramework的数据权限设计方案:一种设计思路

    前言:“我们有一个订单列表,希望能够根据当前登陆的不同用户看到不同类型的订单数据”.“我们希望不同的用户能看到不同时间段的扫描报表数据”.“我们系统需要不同用户查看不同的生产报表列”.诸如此类,最近经 ...

  6. handsontable 事件汇总

    Hook插件 afterChange (changes: Array, source: String):1个或多个单元格的值被改变后调用 changes:是一个2维数组包含row,prop,oldVa ...

  7. Filezilla server配置FTP服务器中的各种问题与解决方法

    转至;https://www.jb51.net/article/122171.htm 安装文件以及补丁下载 公司很多资料需要通过ftp上传,那么就需要配置一个FTP服务器,找了一台Windows服务器 ...

  8. layui之日期和时间组件

    参考文档:https://www.layui.com/doc/modules/laydate.html代码片段如下: layui.use('laydate', function(){ var layd ...

  9. linux安全加固浅谈

    难易程度:★★★阅读点:linux;python;web安全;文章作者:xiaoye文章来源:i春秋关键字:网络渗透技术 前言linux被越来越多的企业使用,因此掌握一些基本的linux安全加固是有必 ...

  10. LeetCode(36): 有效的数独

    Medium! 题目描述: 判断一个 9x9 的数独是否有效.只需要根据以下规则,验证已经填入的数字是否有效即可. 数字 1-9 在每一行只能出现一次. 数字 1-9 在每一列只能出现一次. 数字 1 ...