TRF7970A IC Communication Interface




General Introduction
The communication interface to the reader can be configured in two ways:
with a eight line parallel interface (D0:D7) plus DATA_CLK, or
with a three or four wire Serial Peripheral Interface (SPI).
The SPI interface uses traditional Master Out/Slave In (MOSI), Master In/Slave Out (MISO), IRQ, and DATA_CLK lines.
The SPI can be operated with or without using the Slave Select line.
These communication modes are mutually exclusive; that is, only one mode can be used at a time in the application.
When the SPI interface is selected, the unused I/O_2, I/O_1, and I/O_0 pins must be hard-wired as shown in Table 5-9.
At power up, the TRF7970A samples the status of these three pins and then enters one of the possible SPI modes.
The TRF7970A always behaves as the slave device, and the microcontroller (MCU) behaves as the master device.
The MCU initiates all communications with the TRF7970A, and the TRF7970A makes use of the Interrupt Request (IRQ) pin
in both parallel and SPI modes to prompt the MCU for servicing attention.
Communication is initialized by a start condition, which is expected to be followed by an Address/Command word (Adr/Cmd).
The Adr/Cmd word is 8 bits long, and its format is shown in Table 5-10.
The MSB (bit 7) determines if the word is to be used as a command or as an address.
The last two columns of Table 5-10 show the function of the separate bits if either address or command is written.
Data is expected once the address word is sent.
In continuous-address mode (Cont. mode = 1), the first data that follows the address is written (or read) to (from) the given address.
For each additional data, the address is incremented by one.
Continuous mode can be used to write to a block of control registers in a single stream without changing the address;
for example, setup of the predefined standard control registers from the MCU non-volatile memory to the reader.
In non-continuous address mode (simple addressed mode), only one data word is expected after the address.
Address Mode is used to write or read the configuration registers or the FIFO. When writing more than 12 bytes to the FIFO,
the Continuous Address Mode should be set to 1.
The Command Mode is used to enter a command resulting in reader action
(for example, initialize transmission, enable reader, and turn reader on or off).
Examples of expected communications between an MCU and the TRF7970A are shown in the following sections.
The IRQ line is indeed the interrupt back to the MCU to indicate something has occurred. The reading of the IRQ status register is then the pointer to the logic of what to do next. For example, after transmitting out a command sequence to a tag, you will get an IRQ which needs to be serviced by reading the IRQ status register (which clears the IRQ), then most likely you would have an 0x80, telling you that the transmission was successful (we call EOTX (end of transmit) IRQ)...then you would next get an IRQ, which would for example be 0x40, indicating an EORX (end of recieve) has occured, then you would read the FIFO status for # of bytes to clock out, then read the FIFO for the data...you can see in the data sheet the descriptions of the IRQ register and and some examples, too. (see the TRF7970A DS, section 5.9.xx)
The ASK/OOK line in your case most likely can just be pulled to GND or you can connect it to a GPIO on your MCU like we have it shown in the reference schematics. MOD same thing, unless you are using any Mifare Classic tags, then you would need control of the MOD pin for Direct Mode 0, so then it would need to be connected to a GPIO.
Usually we are recommending connecting EN line to a GPIO, with a pulldown (needs to see low to high transition) so you can have control of some of the power modes...EN2 can also be connected to a GPIO or pulled high or low, depending on your need for even lower power consumption.
Correct about I/O_0, I/O_1 and I/O_2 being at GND potential for SPI w/o SS.
If it helps here is a schematic of SPI with SS, which you can modify for your own usage, since you say you want to do without SS. (I/O_3 and I/O_5 are connected in this drawing as well, and this is for Special Direct Mode, which you may or may not need, depending on which tags you are trying to use here - normally not needed, just FYI)
7183.TRF7970A_SPI_MSP430F2370_dongle_sch.pdf

TRF7970A IC Communication Interface的更多相关文章
- USB组合设备 Interface Association Descriptor (IAD)
Communication Device Class,简称CDCUSB Compound Device,USB复合设备USB Composite Device,USB组合设备 摘要USB复合设备 Co ...
- (转)什么是CDC类(Communication Device Class)
全文地址:http://justmei.blog.163.com/blog/static/1160998532010321112522467/ 什么是CDC类 (Communication Devic ...
- Chrysler -- CCD (Chrysler Collision Detection) Data Bus
http://articles.mopar1973man.com/general-cummins/34-engine-system/81-ccd-data-bus CCD (Chrysler Coll ...
- 实验室项目.md
1 嵌入式操作系统 为什么要用嵌入式操作系统 普通的单片机编程:程序(软件)--单片机硬件: 嵌入式操作系统开发:程序(软件)--操作系统--嵌入式硬件(包括单片机等); 我们平时普通所学的单片机编程 ...
- Linux内核配置选项
http://blog.csdn.net/wdsfup/article/details/52302142 http://www.manew.com/blog-166674-12962.html Gen ...
- Smart internet of things services
A method and apparatus enable Internet of Things (IoT) services based on a SMART IoT architecture by ...
- Indexing Sensor Data
In particular embodiments, a method includes, from an indexer in a sensor network, accessing a set o ...
- 深入linux kernel内核配置选项
============================================================================== 深入linux kernel内核配置选项 ...
- Fedora 24中的日志管理
Introduction Log files are files that contain messages about the system, including the kernel, servi ...
随机推荐
- 关于一些对location认识的误区
1. location 的匹配顺序是“先匹配正则,再匹配普通”. 矫正: location 的匹配顺序其实是“先匹配普通,再匹配正则”.我这么说,大家一定会反驳我,因为按“先匹配普通,再匹配正则”解释 ...
- VMW虚拟机生成的文件说明
VMDK(VMWare Virtual Machine Disk Format)是虚拟机VMware创建的虚拟硬格式,文件存在于VMware文件系统中,被称为VMFS(虚拟机文件系统) NVRAM 非 ...
- Java容器---基本概念
1.持有对象 Java容器类类库的用途是“保存对象”,并将其划分为两个不同的概念: (1) Collection: 一个独立元素的序列,这些元素都服从一条或多条规则.List必须按照插入的顺序保存元素 ...
- Loadrunner报错“Too many local variablesAction.c”解决方法
问题描述,在Action.c里定义数组时如果数组长度过长,如char a[1024*1024]运行时即会报错: 意思为:太多的局部变量 问题原因及解决方法如下: 1. VuGen对于局部变量可以分配的 ...
- 给你一个 5L 和 3L 桶,水无限多,怎么到出 4L。
智力题 给你一个 5L 和 3L 桶,水无限多,怎么到出 4L. 思考过程 先将 3L 的桶装满水,倒入 5L 的桶里. 再重新将 3L 的桶装满水,倒入 5L 的桶里,把 5 L 的桶装满后,这样 ...
- linux 使用
1. 请问怎样从文件里读内容到变量 var=(echo $(<aa)) ====>var=($(<aa)) $ var=($(<aa)) $ echo ${var[*]} /h ...
- STL容器 -- Bitset
核心内容:Bitset 是 STL 中的二进制容器, 存放的时 bit 位元素, 每一位只占一个 bit 位, 取值 0 或者 1, 可以像整形元素一样按位与或非, 并且大大优化了时间和空间复杂度. ...
- 洛谷P0248 [NOI2010] 超级钢琴 [RMQ,贪心]
题目传送门 超级钢琴 题目描述 小Z是一个小有名气的钢琴家,最近C博士送给了小Z一架超级钢琴,小Z希望能够用这架钢琴创作出世界上最美妙的音乐. 这架超级钢琴可以弹奏出n个音符,编号为1至n.第i个音符 ...
- python3 爬虫教学之爬取链家二手房(最下面源码) //以更新源码
前言 作为一只小白,刚进入Python爬虫领域,今天尝试一下爬取链家的二手房,之前已经爬取了房天下的了,看看链家有什么不同,马上开始. 一.分析观察爬取网站结构 这里以广州链家二手房为例:http:/ ...
- c++入门笔记
对于有java基础的人来说,学习c++并不难,毕竟c++是java的前身. 何况还熟练掌握了java呢,哈哈. 安装gcc环境,照着菜鸟教程来. 开发工具ide使用vs,eclipse虽然用习惯了,这 ...