智能卡接口(ISO7816)

news2024/12/1 0:48:52

概述
智能卡接口(7816)是外部智能卡通过2 线交换8 位数据的串行同步通讯手段。芯片提供了2 个7816主机接口模块。
⚫ 2路独立7816接口
⚫ 具备卡时钟输出端口,输出频率在1MHz~5MHz之间可设
⚫ 位传输方向可配置,支持MSB First或LSB First
⚫ 错误信号宽度可配置为1/1.5/2个ETU
⚫ 发送数据支持传输错误重发机制,重发次数可配置为0~3次
⚫ 支持EGT可设0~256,并支持多种超时中断
⚫ 具有数据接收完成/接收错误中断,并提示错误类型
⚫ 发送中断产生条件可配置为缓冲区空或移位寄存器空
⚫ 支持DMA接口

接口时序
在这里插入图片描述
参照7816 协议标准,7816 基本接口时序如下:
⚫ 一个起始位后跟8个数据位及1个校验位,以1ETU或2ETU的GUARDTIME结束。
⚫ 单字节数据长度最小为11ETU或12ETU。
⚫ 第10.5个ETU接收电路校验接收数据,若校验正确,则插入2个ETU的GUARDTIME,确保数据长度为12ETU,并在第11个ETU时令RX_BUSY无效并产生可能的OE_ERR标志,完成数据发送;若接收校验出错,则在第10.5ETU拉低IO,产生ERROR SIGNAL。ERROR SIGNAL最短1个ETU,最长2个ETU。并在第11个ETU根据需要产生RPAR_ERR标志。
⚫ 第11个ETU时发送电路未采样到ERROR SIGNAL,则说明发送数据正确,数据发送完成,令TX_BUSY无效。
⚫ 若第11个ETU发送电路采样到ERROR SIGNAL,则说明发送数据错误,根据设定产生需要的TPAR_ERR或等待2个ETU后重发数据。
⚫ 所有中断标志尽可能都在同一时刻产生,使得MCU可以正确及时处理中断。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/511997.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

初识C++之C++中的IO流

目录 一、C语言中的输入与输入 二、流 三、C中的流 四、C中的文件IO流 1. 二进制文件 1.1 打开文件 1.2 向文件写入数据 1.3 从文件读取数据 1.4 关闭文件 1.5 综合使用 2. 文本读写 一、C语言中的输入与输入 在C语言中,我们最长使用的输入输出方式就是…

0基础小白简单入门使用emqx的webhook+规则实现Mysql数据持久化

EMQX (opens new window)是一款大规模可弹性伸缩的云原生分布式物联网 MQTT (opens new window)消息服务器。 作为全球最具扩展性的 MQTT 消息服务器,EMQX 提供了高效可靠海量物联网设备连接,能够高性能实时移动与处理消息和事件流数据,帮助…

EndNote X9 参考文献附录列表 格式调整

文章目录 1 参考文献附录列表 格式调整2 EndNote X9 插入参考文献常见问题总结3 EndNote X9 快速上手教程(毕业论文参考文献管理器) 1 参考文献附录列表 格式调整 注意:这里讲的是对齐格式, 文献规范格式参考EndNote X9 快速上手…

发布会彩排哪些内容?要注意哪些细节?

传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 相信发布会前小伙伴都会进行彩排,对发布会的细节,流程,各个工种如何配合进行提前的演练,那么发布会彩排哪些内容,要注意哪些细…

数据结构-图的创建与深度优先遍历DFS(邻接矩阵-动态类型)

图的创建: 我们先构建一个无向图:如图所示 根据规定,如果两个顶点相连,则两顶点的边改为1,否则为0,我们用数组指针arcs来指向标记是否有边的数组。 1.先创建结构体,因为都为动态所以我们都先定…

RabbitMQ详解(四):SpringBoot整合MQ

SpringBoot整合MQ 需要创建两个springboot项目,一个springboot_rabbitmq_producer生产者,一个springboot_rabbitmq_consumer消费者 fanout模式(配置文件方式) 定义生产者 创建生产者工程 springboot_rabbitmq_producer pom.x…

DragonflyDB 安装使用

前言 全世界最快的内存数据库 Dragonfly是一种针对现代应用程序负荷需求而构建的内存数据库,完全兼容Redis和Memcached的 API,迁移时无需修改任何代码。相比于这些传统的内存数据库,Dragonfly提供了其25倍的吞吐量,高缓存命中率和…

演化博弈模型简介

演化博弈模型简介 文章目录 演化博弈模型简介[toc]1 演化博弈思想2 演化博弈关注的问题3 复制动态中的博弈 1 演化博弈思想 传统博弈苛刻假设: 完全理性完全信息 演化博弈论:演化博弈论(Evolutionary Game Theory)把博弈理论分析和动态演化过程分析结…

【python】Pandas库用法详解!

pandas 是基于NumPy 的一种工具,该工具是为解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Py…

Android系统启动流程(三)——属性服务

1 属性服务 属性服务的启动在init进程中,init进程初始化的第二阶段初始化中启动了属性服务。 system/core/init/init.cpp int SecondStageMain(int argc, char** argv) {...PropertyInit();...StartPropertyService(&property_fd);...2 启动属性服务 system/…

Win系统软件闪屏/Edge闪屏/Office闪屏 - 解决方案

Win系统软件闪屏/Edge闪屏/Office闪屏 - 解决方案 前言原因解决方案方案1(推荐):重新安装核显驱动方案2:软件使用独显方案3:软件关闭硬件加速 前言 使用Win10及以上系统时,可能会出现频繁闪现黑屏的状态&a…

【jupyter】mac os系统下的jupyter的实用技巧

Jupyter notebook是一个开源的web应用,可以让你创建和分享包含代码、公式、可视化和叙述文本的文档。它可以用于数据清洗和转换、数值模拟、统计建模、数据可视化、机器学习等多种用途。 在mac os系统下,有多种方法可以安装jupyter notebook&#xff0c…

十大生产力神器,包括5大jupyter插件和五个提升python研发生产力的神器

JupyterLab:一款下一代的笔记本界面,支持多种编程语言,包括python。它具有灵活的界面,可以配置和安排数据科学、科学计算、计算新闻和机器学习等领域的工作流程。 Voil:一款可以将笔记本转换为安全、独立的web应用程序…

将字符串数组转换为字符串类型

大家好,我是三叔,很高兴这期又和大家见面了,一个奋斗在互联网的打工人。 当你在Java编程中需要将一个字符数组转换为字符串类型时,你可以使用Java内置的String类提供的方法。在本文中,笔者将介绍两种将字符数组转换为…

RabbitMQ详解(二):消息模式 Simple(简单)模式

消息模式 Simple(简单)模式 前提&#xff0c;开放5672:RabbitMQ的通讯端口&#xff0c;及查看创建用户的权限 构建maven工程 导入依赖 依赖下载地址: https://mvnrepository.com/artifact/com.rabbitmq/amqp-client <dependency><groupId>com.rabbitmq</group…

协议:HTTP基础内容掌握

一、简单理解 HTTP HTTP 协议一般指 HTTP&#xff08;超文本传输协议 Hyper Text Transfer Protocol&#xff09;。 HTTP是一个简单的请求/响应协议&#xff0c;它运行在TCP之上。 HTTP是一个基于TCP/IP通信协议来传递数据&#xff08;HTML 文件, 图片文件, 查询结果等&#x…

活动预告 Flutter 之夜 | Flutter Night Beijing

Flutter 是一个开源、可移植的 UI 框架&#xff0c;它为开发人员提供了超能力&#xff0c;可以从单个代码库为任何平台构建美观、高质量的应用程序。它将统一代码库和快速迭代开发的生产力与本机编译和硬件加速渲染的性能和功能相结合。Flutter 今天支持的平台包括安卓&#xf…

简单随机微分方程数值解

1.随机微分方程求解&#xff1a;dX(t) − αXtdt σdWt 法一&#xff1a;Euler-Maruyama %% %O-U过程 %dX(t)-alpha*Xt*dtsigma*dWt,X|t0X0 %alpha2,sigma1,X01 % 设置初始参数 T 1; % 时间区间长度 N 1000; % 离散化的时间步数 dt T/N; …

[医学分割比赛] ISBI2023 APIS多模态医学分割比赛总结 + top3解决方案

ISBI2023 APIS多模态医学分割比赛总结 top3解决方案 0.比赛背景1.比赛任务及结果2.第三名方案 - 龙盈智达&#xff08;北京&#xff09;科技有限公司(0) Data Preprocessing(1) Data Augmentation(2) Approach&#xff08;Model&#xff09;(3) Approach(Data Sampling)(4) Ap…

【QT】学习课-pushButton的使用(1)!

Qt 是一个1991年由Qt Company开发的跨平台C图形用户界面应用程序开发框架。它既可以开发GUI程序&#xff0c;也可用于开发非GUI程序&#xff0c;比如控制台工具和服务器。Qt是面向对象的框架&#xff0c;使用特殊的代码生成扩展&#xff08;称为元对象编译器(Meta Object Compi…