我正在尝试与使用ISO 7816协议且T = 1的设备进行通信。我的硬件设置是使用USART在SIM卡模式下配置的微控制器。我已阅读相关文件,但不清楚ATR后会发生什么。
据我所知,输入频率与初始F = 372一起使用,ATR中D = 1。因此,如果我的输入频率为3.571MHz,则ATR响应将返回@ 9600波特。这是我在监视USART的示波器和TTL电缆上看到的。这是对的吗?
在查看ATR的结果时,它显示F = 372,D = 12。这是否意味着与卡通信的波特率仍为9600波特,或者在收到ATR @后返回的波特率参数(即115 kbaud)是否应该发送所有消息?看起来PPS的工作频率为9600波特,但为什么返回F和D的波特率与卡实际运行的接口不同,这是没有意义的。
答案很可能没有,但PPS和ATR的运行波特率是否与ISO7816的其他命令不同?
答案 0 :(得分:3)
是的,ATR以9600波特发送。
波特率保持在9600波特,除非您发送PPS请求进行更改。这必须是发送到卡的第一个命令。 ATR中的F和D参数是卡支持的最大值 - 您可以选择较低的值。 (但是卡没有义务支持所有可能的中间值 - 如果它通过返回带有空INF字段的PPS响应来拒绝这些较低值,则可以以9600波特率继续,或者重置卡并尝试不同的值。) PPS响应以9600波特率发送,卡的下一个命令以新的波特率发送。
否(或仅当您使用PPS请求更改波特率时)。