瑞萨 740 族 8 位单片机:功能特性与使用要点

电子说

1.4w人已加入

描述

瑞萨 740 族 8 位单片机:功能特性与使用要点

引言

在电子设计领域,单片机作为核心控制元件,其性能和功能直接影响着整个系统的表现。瑞萨 740 族 8 位单片机以其独特的指令系统和丰富的功能,在众多应用场景中展现出强大的优势。本文将深入探讨瑞萨 740 族单片机的特点、指令系统以及使用过程中的注意事项,为电子工程师们提供全面的参考。

文件下载:R5F211B1DD#U0.pdf

一、公司信息与产品背景

NEC 电子公司与株式会社瑞萨科技于 2010 年 4 月 1 日进行业务整合,成立了瑞萨电子公司。尽管资料中可能仍保留旧公司名称,但不影响资料的有效性。瑞萨电子公司官网为 http://www.renesas.com ,业务咨询可通过 http://www.renesas.com/inquiry 进行。

二、740 族单片机概述

(一)指令特点

  1. 高效指令群与丰富寻址方式:能有效使用 ROM 区,提高程序执行效率。
  2. 位操作与位测试/转移指令:可对累加器、存储器、I/O 进行位操作,增强了系统的灵活性。
  3. 丰富中断源与处理功能:能及时响应各种外部事件,保证系统的实时性。
  4. 变址寻址功能:对于字节单位处理和表参照功能表现卓越。
  5. 十进制运算功能:无需软件补正,方便进行十进制数据处理。
  6. 存储器与 I/O 运算功能:不经累加器就能进行存储器之间、I/O 之间以及存储器与 I/O 之间的运算。

(二)中央处理器

740 族的 CPU 包含 6 个寄存器,程序计数器(PC)为 16 位,累加器(A)、变址寄存器 X(X)、变址寄存器 Y(Y)、栈指针(S)及处理器状态寄存器(PS)均为 8 位。硬件复位后,除标志位 I 为 1 外,其他寄存器内容不定,需用程序初始化。

  1. 累加器(A):8 位核心寄存器,常用于算术运算、数据传送、暂时存储和条件判断。
  2. 变址寄存器 X(X)和变址寄存器 Y(Y):8 位寄存器,在寻址时可将操作数指定地址与变址寄存器内容相加,用于访问子程序表和存储表,还具备递增、递减、比较和数据传送等功能。
  3. 栈指针(S):8 位寄存器,在中断和调用子程序时,指向保存返回地址的存储器地址。
  4. 程序计数器(PC):由 PCH 和 PCL 组成的 16 位计数器,指向下一个执行指令的地址。使用栈指针或直接更改 PC 内容时,需防止程序流程与 PC 内容不一致。
  5. 处理器状态寄存器(PS):8 位寄存器,包含 5 个表示内部 CPU 运算状态的标志和 3 个决定运行的标志。除中断禁止标志 I 外,复位后值不定,需初始化影响程序执行的标志,尤其是 T 标志和 D 标志。

三、指令系统详解

(一)寻址方式

740 族有 19 种寻址方式,根据指令在程序存储器中的字节数可分为 1 字节指令、2 字节指令和 3 字节指令。第一字节为操作码,第二或第三字节为操作数,变址寄存器 X 与 Y 的内容也会影响寻址。

  1. 立即寻址:将操作数内容指定为运算数据,如 ADC #$A5。
  2. 累加器寻址:直接将累加器内容指定为运算数据,如 ROL A。
  3. 零页寻址:将操作数指向的零页区内(地址 0016 - FF16)的存储器内容指定为运算数据,如 ADC $40。
  4. 零页 X 寻址:将操作数内容和变址寄存器 X 内容相加值所指向的零页区内的存储器内容指定为运算数据,如 ADC $5E, X。
  5. 零页 Y 寻址:将操作数内容和变址寄存器 Y 内容相加值所指向的零页区内的存储器内容指定为运算数据,如 LDX $62, Y。
  6. 绝对寻址:将第一操作数和第二操作数指向的存储器内容指定为运算数据,如 ADC $AD12。
  7. 绝对 X 寻址:将第一操作数和第二操作数表示的数值与变址寄存器 X 内容相加值所指向的存储器内容指定为运算数据,如 ADC $AD12, X。
  8. 绝对 Y 寻址:将第一操作数和第二操作数表示的数值与变址寄存器 Y 内容相加值所指向的存储器内容指定为运算数据,如 ADC $AD12, Y。
  9. 隐含寻址:用一条指令操作寄存器等,如 CLC。
  10. 相对寻址:跳转到程序计数器内容和操作数内容相加值所指向的地址,如 BCC * - 12。
  11. 间接 X 寻址:将操作数内容和变址寄存器 X 内容相加值所指向的零页区内连续 2 个字节的存储器内容作为地址,将该地址的存储器内容指定为操作数据,如 ADC ($1E, X)。
  12. 间接 Y 寻址:将操作数指定的零页区内连续 2 个字节的存储器内容和变址寄存器 Y 内容相加值作为地址,将该地址的存储器内容指定为操作数据,如 ADC ($1E), Y。
  13. 间接绝对寻址:跳转到第一操作数和第二操作数指定的连续 2 个字节的存储器内容所指向的地址,如 JMP ($1400)。
  14. 零页间接绝对寻址:跳转到操作数指定的零页区内连续 2 个字节的存储器内容所指向的地址,如 JMP ($45)。
  15. 专用页寻址:跳转到低 8 位地址为操作数、高 8 位地址为 FF16 的特殊区内的地址,如 JSR $FFC0。
  16. 零页位寻址:用操作码的高 3 位指定第一操作数的内容指向的零页区的存储器的特定位,如 CLB 5, $44。
  17. 累加器位寻址:用操作码高 3 位指定累加器中的位,如 CLB 5, A。
  18. 累加器位相对寻址:用操作码的高 3 位指定累加器的位,根据该位状态跳转到程序计数器内容和操作数内容相加值所指向的地址,如 BBC 5, A, * - 12。
  19. 零页位相对寻址:用操作码的高 3 位指定零页区的存储器的特定位,根据该位状态跳转到程序计数器内容和第二操作数内容相加值所指向的地址,如 BBC 5, $04, * - 12。

(二)指令分类

  1. 数据传送指令:用于在寄存器之间、寄存器与存储器之间以及存储器之间传送数据,如 LDA、STA、TAX 等。
  2. 运算指令:对寄存器或存储器中的数据进行加减运算、逻辑运算、比较、循环和移位,如 ADC、SBC、AND 等。
  3. 位操作指令:对累加器或存储器指定的位置“1”或置“0”,如 CLB、SEB。
  4. 标志设定指令:对 C 标志、D 标志、I 标志、T 标志和 V 标志置“0”或置“1”,如 CLC、SEC、CLD 等。
  5. 跳转、转移和返回指令:改变程序顺序,如 JMP、BRA、RTS 等。
  6. 中断指令:产生软件中断,如 BRK。
  7. 特殊指令:控制振荡和内部时钟,如 WIT、STP。
  8. 其它指令:如 NOP,只进行程序计数器 +1。

四、使用注意事项

(一)输入/输出端口

  1. 待机状态使用:在待机状态下,避免将输入/输出端口的输入电平置为不稳定状态,对于 N 沟道漏极开路的输入/输出端口,需通过电阻上拉或下拉端口。
  2. 位处理指令改写输出数据:使用位处理指令改写输入/输出端口的端口锁存器时,未指定的位的值可能发生变化,因为位处理指令是读 - 改 - 写形式,以字节为单位进行操作。

(二)未使用管脚处理

  1. 输出专用管脚:必须开路。
  2. 输入专用管脚:各管脚需通过 1 - 10kΩ 的电阻连接到 VCC 或 VSS,电压电平对运行模式有影响的管脚需根据模式连接。
  3. 输入/输出端口:设定为输入模式时,通过 1 - 10kΩ 电阻连接到 VCC 或 VSS;设定为输出模式时,在“L”或“H”输出状态置为开路。
  4. A/D 转换电源管脚:不使用 A/D 转换器时,AVSS 连接 VSS,AVCC 连接 VCC。

(三)中断

  1. 中断请求位和允许位设定:按顺序先将中断请求位清“0”,再将中断允许位置“1”,避免执行不需要的中断处理程序。
  2. 更改关联寄存器设定:设定外部中断的有效边沿或切换多个中断源共用同一中断向量的中断源时,按特定步骤设定,防止中断请求位变为“1”。
  3. 中断请求位判断:在将中断请求寄存器的中断请求位清“0”后,立即执行 BBC 或 BBS 指令时,需先执行 1 条指令。

(四)编程

  1. 处理器状态寄存器:预先对影响程序执行的处理器状态寄存器的标志进行初始化,尤其是 T 标志和 D 标志。参照 PS 内容时,执行 PHP 指令后读 (S) + 1 的内容,必要时执行 PLP 指令恢复,执行 PLP 指令后插入 NOP 指令。
  2. BRK 指令:当 BRK 指令和其他中断源是相同的中断向量时,可根据标志 B 的内容判断中断发生源。在下述 2 种状态下执行 BRK 指令,从该中断源中优先级最高的中断源的中断向量地址开始执行中断:中断请求位和中断允许位都为“1”;将标志 I 置“1”后禁止中断。
  3. 十进制运算:进行十进制运算时,通过 SED 指令将 D 标志置“1”,执行 ADC 或 SBC 指令,在其后一条指令之后执行 SEC、CLC 或 CLD 指令。十进制模式下,N、V、Z 标志无效,C 标志可用于判断进位或借位,需在运算前初始化。
  4. JMP 指令:使用 JMP 指令(间接寻址方式)时,不能将低 8 位为“FF16”的地址指定为操作数。
  5. 乘除指令:MUL、DIV 指令不受标志 T 和标志 D 的影响,执行时处理器状态寄存器内容不变。
  6. 端口:不能读端口方向寄存器的值,需使用 LDM、STA 等指令设定方向寄存器。
  7. 指令执行时间:指令的执行时间可通过机器指令一览表中记载的周期数乘内部时钟 φ 的周期得到。

五、总结

瑞萨 740 族 8 位单片机以其丰富的指令系统和强大的功能,为电子工程师提供了广阔的设计空间。在使用过程中,充分了解其特点和注意事项,能够更好地发挥其性能,设计出高效、稳定的电子系统。希望本文能为工程师们在实际应用中提供有益的参考,让我们在电子设计的道路上不断探索和创新。

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分