对于位定时器,AT86RF401使用2个中断。这些中断和复位在程序存储器空间有各自的编程向量。复位和中断向量如表3所列。
对于复位中断处理,最典型和通用的程序设置是:
地址表 编码 注释
$000 jmp RESET ;复位处理
$002 jmp BT_F2_ISR ;位定时器2中断服务程序
$004 jmp BT_F0_ISR ;位定时器0中断服务程序
$006 MAIN:<instr>XXXX;主程序开始
存储器编程:AT86RF401 MCU提供2个程序存储器允许编程/不允许编程锁定位。锁定位保护模式如表4所列。AT86RF401提供2KB(字节)的可反复编程的Flash程序存储器和1Kb(位)的EEPROM数据存储器。存储器可由串行SPI接口编程。当RESETB端接地时,程序存储器和数据存储器可使用串行SPI总线编程。串行接口由SCK、SDI(输入)和SDO(输出)组成。在RESETB被设置为低后,在编程/擦除操作执行前,必须首先执行编程命名能指令。
表3 AT86RF401复位和中断向量
向量编号 | 编程地址 | 源 | 中断定义 |
1 | $000 | 复位、看门狗、按键 | 硬件端、看门狗或按键复位 |
2 | $002 | 位定时器 | 位定时器标志2中断 |
4 | $004 | IO3 | 位定时器标志0中断 |
5 | $006 | TBD | 未使用 |
表4 AT86RF401锁定位保护模式
编程锁定位 | 保护类型 | ||
模式 | LB1 | LB2 | |
1 | 1 | 1 | 无编程锁定<可编程> |
2 | 0 | 1 | EEPROM不可编程 |
3 | 0 | 0 | EEPROM不可编程也不可校验 |
AT86RF401包括一个128B EEPROM。这个存储器利用在I/O存储器中的3个寄存器DEECR、DEEDR、器利用在I/O存储器中的3个寄存器DEECR、DEEDR、DEEAR访问。
串行编程和校验电路如图2所示。串行编程时序波形如图3所示。当写数据到AT86RF401时,数据在CLK的上沿被选通;当从AT86RF401读数据时,数据在CLK的下沿被选通。
三、应用电路
典型的应用电路如图4所示。图4中芯片工作频率为315MHz,如需工作在433.92MHz,则电路中元件参数R1为9.0kΩ,C3为6.5pF,C8为120pF,Y1为18.08MHz。发射天线可印制在PCB上。