添加收藏夹  设为首页  深圳服务热线:13692101218  13751165337
51电子网联系电话:13692101218
位置:首页 > IC型号导航 > 首字符C型号页 > 首字符C的型号第625页 > CY7C63221A > CY7C63221A PDF资料 > CY7C63221A PDF资料2第9页
的enCoRe
USB
CY7C63221/31A
调用子程序( CALL )指令将程序计数器和标志的程序堆栈,并增加了PSP的两个。
从子程序(RET)指令的返回恢复程序计数器,而不是标志,从程序堆栈和递减
PSP的两个。
6.5
8 - bit数据堆栈指针( DSP )
数据堆栈指针( DSP)支持使用临时存放数据栈PUSH和POP指令。一推
指令将预减的DSP ,然后将数据写入由DSP寻址的存储器位置。一个POP指令将读取
从由DSP ,然后后增量DSP的寻址的存储器位置的数据。
在复位时,数据堆栈指针将被设置为零。 PUSH指令时, DSP等于零将在顶部写入数据
数据RAM (地址为0xFF ) 。这将数据写入预留一个FIFO USB端点0。在非USB存储区域
应用程序,这工作得很好,是没有问题的。
对于USB应用程序,固件应该将DSP到合适的位置,以避免与内存专用内存冲突
到USB FIFO中。由于只有80个字节的可用RAM (除端点的FIFO )的DSP应该在0x00设置
和0x4Fh 。为USB端点的内存要求示于第8.2节。例如,装配说明
设置DSP以20小时(得到32个字节用于程序和数据的堆栈组合)如下所示:
MOV A , 20H
;移动20进制到累加器(必须是D8H以内,以避免USB的FIFO )
SWAP A, DSP ;交换累加器的值到DSP寄存器
6.6
地址模式
微控制器支持那些需要数据操作数指令3寻址模式:数据,直接和索引。
6.6.1
数据
在“数据”地址模式指的是数据操作数,实际上是编码在该指令中的常数。作为一个例子,考虑
加载一个与不变的0x30指令:
MOV A ,30H
该指令将需要2字节的代码,其中第一字节识别与数据操作数作为该“ MOV A ”指令
第二个字节。该指令的第二个字节将是不断的“ 0xE8h ” 。常量可如果之前提到的名字
“ EQU ”语句分配常数的名称。例如,下面的代码是等效于所示的示例
以上:
DSPINIT : EQU 30H
MOV A , DSPINIT
6.6.2
直接
“直接”地址模式时使用的数据操作数是存储在SRAM中的变量。在这种情况下,一个字节的地址
变量被编码在指令。作为一个例子,考虑加载内存地址的内容的指令
位置0x10h :
MOV A , [ 10H ]
在正常使用的情况,变量名都用“ EQU ”的语句,提高了可读性分配给变量的地址
汇编程序源代码。作为一个例子,下面的代码等价于上面所示的例子中:
按钮: EQU 10H
MOV A , [按钮]
6.6.3
索引
“索引”地址模式允许固件操作存储在SRAM中的数据阵列。数据操作数的地址是
编码的指令和“ X”的内容的恒定的和注册。在正常使用中,该常数将是
数据的阵列和X寄存器的“基”地址将包含一个索引,指示哪些元素的数组实际上是
解决:
数组: EQU 10H
MOV X, 3
MOV A , [X +阵列]
这将具有装载A与SRAM的“阵列”开始于地址0x10h的第四个元素的影响。第四
元素会在地址0x13h 。
文件编号: 38-08028牧师* B
第9页的50

深圳市碧威特网络技术有限公司