0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

英创信息技术EM9X60利用串口实现ISO7816介绍

英创信息技术 来源:英创信息技术 作者:英创信息技术 2020-01-15 14:49 次阅读

英利EM9160、EM9460系列产品,均以丰富的串口资源为特色,已大量地应用于工业环境中,特别是在电力系统中应用。最近公司即将推出一款新的产品EM9560工控主板,该主板是是以EM9460工控主板为基础,并针对客户应用的需求,增加了更多通用数字IO,该产品继续保持了Linux操作系统作为客户应用程序的软件平台。这三款主板均具备6个串口,其中的4个串口可支持ISO7816,用户可以通过简单的设置,即可将异步串口转换为符合ISO7816的接口,从而方便地实现和各种智能卡之间的通讯。本文将详细介绍在EM9160、EM9460、EM9560工控主板上设置ISO7816的方法。

1、ISO7816接口资源配置
可支持ISO7816的串口资源包括:ttyS2 + GPIO14、ttyS4 + GPIO15、ttyS5 + GPIO15、ttyS6 + GPIO15,其中的GPIO14和GPIO15分别作为ISO7816的工作时钟输出,需要注意的是ttyS4、ttyS5、ttyS6这三个串口共用的是一个工作时钟输出,如果需要同时使用的话,要求波特率是一致的。以下为资源列表:

串口 管脚配置 备注
ttyS2 TXD:半双工数据线
RXD:复位输出控制 低电平有效
GPIO14:作为SCK 输出频率与波特率等参数有关
ttyS4 TXD:半双工数据线
RXD:复位输出控制 低电平有效
GPIO15:作为SCK 输出频率与波特率等参数有关
ttyS5 TXD:半双工数据线
RXD:复位输出控制 低电平有效
GPIO15:作为SCK 输出频率与波特率等参数有关
ttyS6 TXD:半双工数据线
RXD:复位输出控制 低电平有效
GPIO15:作为SCK 输出频率与波特率等参数有关


其中ttyS4-ttyS6缺省为TTL电平,所以建议客户首选其中之一作为ISO7816接口。ttyS2缺省出厂配置为RS232电平,如果选择了该串口,需要特别通知我们公司在出厂时将该串口设置为TTL电平。一旦GPIO14、GPIO15作为ISO7816的工作时钟,就不能再做其他用途使用。

2、硬件接口电路

需要注意的是我们将串口的RXD作为对ISO7816接口的复位信号,相应的在串口驱动中已实现了该功能,在后续应用程序介绍中会介绍对ISO7816进行复位的方法。

3、应用程序设置方法
对于ISO7816设置我们已经在底层的串口驱动中完全实现,因此上层的应用程序在进行ISO7816设置、通讯时,和使用标准的串口方法是类似的。也是按照标准的方式打开串口,只是在设置串口的通讯参数时增加对ISO7816的设置即可,然后就可以按照串口数据收发的标准方式进行ISO7816的数据读写,只是需要注意的是ISO7816的半双工通讯模式。

根据ISO7816协议类型以及帧应答规范,所定义的ISO7816的相关参数均定义在我们公司提到个em9x60_drivers.h文件中。

#define EM9X60_ISO7816_T0 (1 << 27) // D27 of termios.c_cflag
#define EM9X60_ISO7816_T1 (1 << 26) // D26 of termios.c_cflag
#define EM9X60_ISO7816_RXD_RESET(1 << 23) // D23 of termios.c_cflag
#define EM9X60_ISO7816_MODE (EM9X60_ISO7816_T0 | EM9X60_ISO7816_T1)

设置这些参数的方法和标准设置串口的波特率等其他通讯参数一样,直接调用标准函数tcsetattr( )就可完成。如:

int enable_iso7816(pport_info p_info)
{
struct termios cur_opt;
int status;
tcgetattr(p_info->port_fd,&cur_opt);
// 修改模式,启动iso7816复位操作
cur_opt.c_cflag |= ( EM9X60_ISO7816_T0 | EM9X60_ISO7816_RXD_RESET );
status = tcsetattr(p_info->port_fd,TCSANOW,&cur_opt);
if(status != 0)
{
perror('Cannot set the serial port parameters');
return -1;
}
// 修改模式,进入iso7816
cur_opt.c_cflag &= ~EM9X60_ISO7816_RXD_RESET;
status = tcsetattr(p_info->port_fd,TCSANOW,&cur_opt);
if(status != 0)
{
perror('Cannot set the serial port parameters');
return -1;
}
return status;
}

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11219

    浏览量

    208872
  • 嵌入式主板
    +关注

    关注

    7

    文章

    6085

    浏览量

    35196
收藏 人收藏

    评论

    相关推荐

    中科达荣获2024年软件和信息技术服务优秀企业

    及前百家企业”名单。中科达凭借非凡的技术实力与持续的创新能力,成功入选“2024年度软件和信息技术服务竞争力百强企业”以及“2024年软件和信息技术服务优秀企业”。
    的头像 发表于 10-30 11:44 371次阅读

    国产化背景下的工控主板发展现状

    ,是信息技术应用创新产业的简称,于2016年“信工委会”(信息技术应用创新工作委员会)提出,目的就是要推动我们国内软硬件关键技术的研发
    的头像 发表于 09-21 16:15 316次阅读

    加速鲲鹏落地!拓维信息迁移工具荣获鲲鹏原生开发技术认证

    认证。图/拓维·数据库适配中间件取得鲲鹏原生开发N认证在数字化时代的大潮中,信战略作为国家推动信息技术应用创新、保障信息安全与自主可控的关键举措,其重要性日益凸显
    的头像 发表于 09-10 08:03 386次阅读
    加速鲲鹏落地!拓维<b class='flag-5'>信息</b>信<b class='flag-5'>创</b>迁移工具荣获鲲鹏原生开发<b class='flag-5'>技术</b>认证

    梯度科技入选2023年信息技术应用创新解决方案名单

    日前,工业和信息化部网络安全产业发展中心(工业和信息化部信息中心)在天津举办2024信息技术应用创新发展大会暨解决方案应用推广大会。会上正式公布了2023年
    的头像 发表于 09-09 16:29 384次阅读

    ISO7240x,ISO7241xISO7242x四通道数字隔离器数据表

    电子发烧友网站提供《ISO7240x,ISO7241xISO7242x四通道数字隔离器数据表.pdf》资料免费下载
    发表于 08-19 10:44 0次下载
    <b class='flag-5'>ISO7240x</b>,<b class='flag-5'>ISO7241x</b>和<b class='flag-5'>ISO7242x</b>四通道数字隔离器数据表

    中微爱芯AD型RISC内核MCU AiP9M161介绍

    AiP9M161是一款AD型RISC内核MCU,内置2K x 16 bit MTP ROM、128 x 8 bit RAM,内部集成Timer0、Timer1、WKT、WDT、PWM、ADC
    的头像 发表于 08-15 16:10 385次阅读
    中微爱芯AD型RISC内核MCU AiP<b class='flag-5'>9</b>M161<b class='flag-5'>介绍</b>

    EC2x&EG9X&EM05 FTP (S)AT命令手册

    电子发烧友网站提供《EC2x&EG9X&EM05 FTP (S)AT命令手册.zip》资料免费下载
    发表于 08-12 17:44 0次下载

    DIN 2X2 ISO EM 隔离放大器IC资料

    ISO EM U(A)-P-O系列磁电隔离有源型模拟信号三隔离放大器变送器ISO EM系列隔离放大器是一种磁电隔离的混合集成电路,该IC在同一芯片上集成了一个多隔离的DC/DC变换电源
    发表于 07-25 16:43 0次下载

    【Vision Board客营连载体验】利用 OpenMV 实现 AprilTag 跟踪以及通过串口通讯控制 Arduino 驱动 LED 灯带

    项目介绍 此项目为本人在参与Vision Board 客营活动第二阶段(应用作品设计)过程中所产出的内容。主要内容是实现 LED 矩阵实时响应 AprilTag 的坐标进行同步移动。 实现
    发表于 05-31 00:01

    电缆驱动传感器仪表PT420-0040-111-1110介绍

    电子发烧友网站提供《电缆驱动传感器仪表PT420-0040-111-1110介绍.pdf》资料免费下载
    发表于 04-11 09:07 0次下载

    龙芯中科三项信方案入围工信部2023年信息技术应用创新应用示范案例名单

    近日,工业和信息化部通报了2023年信息技术应用创新解决方案征集遴选结果,本次共评选出典型解决方案173个、应用示范案例83个、单项创新案例64个。
    的头像 发表于 03-07 16:45 852次阅读
    龙芯中科三项信<b class='flag-5'>创</b>方案入围工信部2023年<b class='flag-5'>信息技术</b>应用创新应用示范案例名单

    5V转220V新一代无变压器大功率升压模块XKT203-08介绍

    电子发烧友网站提供《5V转220V新一代无变压器大功率升压模块XKT203-08介绍.docx》资料免费下载
    发表于 02-26 09:12 77次下载

    AWTK 开源串口屏开发(10) - 告警信息的高级用法

    告警信息串口屏常用的功能,之前我们介绍了告警信息的基本用法,实现了告警信息的显示和管理。本文
    的头像 发表于 02-24 08:23 286次阅读
    AWTK 开源<b class='flag-5'>串口</b>屏开发(10) - 告警<b class='flag-5'>信息</b>的高级用法

    ADE7816 0x4380~0x43BF为什么无法写入数值?

    您好! ADE7816 0x4380~0x43BF 无法写入数值, 但 0xExxx 之后的 Register 均可写入读取正确, 将 0XE7FE 写入 0XAD, 0XE7E3 写入 0X
    发表于 12-27 07:46

    信息编码技术详解

    前面介绍过,调制解调之前还需要编码,但编码根据用途来分有信源编码与信道编码。本编的主要内容是介绍几种信源编码技术,需要注意的是用于信源编码的技术有些也可以用于信道编码,比如最后一点
    的头像 发表于 11-27 10:05 623次阅读
    <b class='flag-5'>信息</b>编码<b class='flag-5'>技术</b>详解