1、“.....存储器的操作检测当按照规定的命令序列向存储器发出命令时,其内部的编程或擦除算法就可自动完成编程或擦除操作,但无论是编程或擦除都需要定的操作时间,同时用户还应了解其内部的操作检测机制,以便知道操作是否完成或操作是否正确。常用于检测的状态位有跳变位超时标志位数据查询位和引脚。常用的检测方法有三种第种是判断引脚的状态,在编程或擦除操作过程中,引脚直为低电平,操作完成后变为高电平。第二种是检测跳变位,在编程或擦除时对任何地址进行连续的读操作均引起连续跳变,直至操作结束才停止跳变。第三种方法是使用数据线的和位,位在编程或擦除过程中输出的数是写入该位数据的反码,当操作完成时输出才变为写入该位的数据的状态为时表示操作超时,此时应再读次的状态,若输出仍不是写入的数据,则操作失败,复位存储器。对于第种方法,需要占用系统的口以判断引脚的状态,故较少使用......”。
2、“.....因此,常用第三种方法检测存储器的工作状态。本例采用第三种方法编程检测存储器的工作状态,程序流程如图。检测开始读和重读和操作操作成功图检测存储器状态的流程图存储器的整片擦除示例打开或,新建个项目,并新建个文件,名为,具体内容如下配置,片内,指向的尾地址,堆栈向下生成该段代码完成的功能为配置特殊功能寄存器,将片内的体化的配置为并将用户堆栈设置在片内的中。的地址为,由于的堆栈由高地址向低地址生成,将初始化为,。完成上述操作后,程序跳转到函数执行。保存,并添加到新建的项目。再新建个文件,名为,具体内容如下按整片擦除命令要求写入命令序列,以位方式操作判断擦除操作是否正确完成,在该程序中,首先以位方式进行操作,按整片擦除命令要求写入命令序列,然后判断的状态是否正确。为稳妥起见,在擦除完成之后还应读取存储器的内容与相比较,判断是否相等。若相等则表明擦除操作完全正确......”。
3、“.....读者可自行添加这段代码。注意符号常量,程序中用其标识系统中存储器的起始物理地址,此例假定系统中存储器的起始物理地址为,在系统复位或上电时,位于的存储器的起始物理地址会被映射到,可用此例程进行整片擦除操作。但当中写有应用程序或操作系统时,这些程序在启动并初始化系统后,可能会把存储器映射到其他的地址空间,此时应修改该起始地址,否则就不能正确擦除存储器。保存,并添加到新建的项目,并对该项目进行编译链接,生成可执行的映象文件。在编译链接项目文件时,将链接器程序的入口地址为,。打开或的命令行窗口,执行命令系统中被映射到,存储器被映射到起始地址为处。从,处装入生成的可执行的映象文件,并将指针寄存器修改为运行可执行的映象文件,就可整片擦除系统中的存储器。存储器的编程示例该例程完成向存储器的个单元写入数据,以此为基础,读者可以编写更复杂功能更强的烧写工具。打开或......”。
4、“.....并新建个文件,名为,具体内容与上个例子相同。保存,并添加到新建的项目。再新建个文件,名为,具体内容如下。写入的地址写入的数据保存,并添加到新建的项目,并对该项目进行编译连接,生成可执行的映象文件。在编译连接项目文件时,将连接器程序的入口地址为,。打开或的命令行窗口,执行命令系统中被映射到,存储器被映射到起始地址为处。从,处装入生成的可执行的映象文件,并将指针寄存器修改为运行可执行的映象文件,程序就会将数据烧写入存储器的地址处。对于编写连续烧写存储器多个存储单元的程序,只需循环执行该段代码即可,但应在对每个单元烧写命令发出后进行检测,保证前个单元烧写结束后再进行下个存储单元的烧写当然也可采用延时等待的方法进行连续的烧写。中断接口中断概述中断是计算机的种基本工作方式,几乎所有的都支持中断,支持多达个中断源,中断请求可由内部功能模块和外部引脚信号产生......”。
5、“.....和快速中断请求,。的中断控制器对每个中断源都有个中断悬挂位。用如下四个寄存器控制中断的产生和对中断进行处理中断优先级寄存状态,把口上的数据捕获到扫描单元的移位寄存器上。步骤在状态机的状态,的次跳变,把数据从移位到移位寄存器的高位上,并从输出移位寄存器的低位就是的数据。步骤经过个的时钟可以把整个捕获到的链的移位寄存器上的数据移出,并且把新的数据移入链。步骤在状态机的状态,可以把新的数据锁定到设备的输入或者输出口上,从而完成了次的数据更新。的调试结构个典型的基于调试结构如图所示。主控通常是运行有公司或者第三方提供的调试软件的机。常用的调试软件有中的下的等。通过这些调试软件,可以发送高级的调试命令,比如设置断点读写存储器单步跟踪全速运行等。协议转换器负责转换主控端发出的高级调试命令为底层的和内核通信的命令。主控端和协议转换器之间的介质可以有很多种,比如以太网并口等......”。
6、“.....也可以是第三方厂家自己定义的标准。关于的协议,读者可参考和的相关说明。典型的协议转换器有公司的公司的公司的公司的等。主控协议转换器调试目标机运行有公司或者第三方提供的调试软件的机负责转换主控端发出的高级调试命令为底层的和内核通信的命令以为处理器的开发系统图的调试结构的宏单元主要包括条扫描链和个的控制状态机。与调试协议转换器解释上位机传送过来的命令,通过控制执行。调试协议转换器可以直接作为目标板的的部分,直接执行从宿主机传送过来的调试命令,并回送相应的数据。可以节省专门的仿真器,但是它需要软件,或者是嵌入式操作系统的支持,做不到完全的实时仿真,而仿真是通过硬件和控制的实现的,可以做到实时仿真。内核的扫描链结构内核的扫描链结构,主要包括了条扫描链。有个扫描单元,包括核的所有地址数据总线和输入输出控制信号。这条链上的信号复杂......”。
7、“.....但是它含的信息丰富,可以通过这条链得到内核的所有信息。有个扫描单元,包括核的数据总线和个断点控制信号。这是条很有用的链,通过控制这条链,可以控制核执行指定的指令,从而实现对的内部寄存器协处理器以及外部存储器的读写操作。有个扫描单元,通过控制宏单元,可实现对执行指令的断点观察点的控制。是集成在内核中的嵌入式仿真器,通过对的控制,对中寄存器的读取,可以获得内核的状态,为程序设置断点以及读取通信通道。的长度是位,包括位数据,位的访问中寄存器的地址,个读写控制位。的个主要作用就是可以在的程序中设置软件或者硬件的断点。在中集成了个比较器,比较器负责把处理器取指的地址数据以及些控制信号与中寄存器中设置的数值相比较具体的说应该是进行异或运算,比较的结果用来确定是否输出个的断点信号。在处理器的内核中,有两种断点的设置方式硬件断点和软件断点......”。
8、“.....通过这种方式设置断点,断点数目受中数目的限制在处理器的内核中,只有两组寄存器,最多只能设置两个硬件断点。但是,硬件断点可以在任何地方设置,不受存储器类型的限制。软件断点软件断点的实现比较复杂,需要如下几个步骤。通过设置中的寄存器中相关的数据和为个特殊的位数字的未定义指令,比如。替换中的指令为上面所设置的那个未定义的指令,作为个标志。这样,当系统运行到中所设定的时候,那个事先设置的标志数字将作为个指令被读入处理器的内核。这时,系统所读入的指令的数据刚好和中的数字相吻合,系统就进入了模式。这就是软件断点的工作过程。由此可见,软件断点的数目不受内核的数目的限制,不管系统设置多少软件断点,都仅使用了内核的个资源。但是,软件断点是通过替换系统断点地址的指令实现的,所以,软件断点只能在可写的存储器的地址中设置比如,而不能在比如中设置。总之,在有两个资源的的内核中......”。
9、“.....没有软件断点个硬件断点,任意多个软件断点任意多个软件断点。作为的典型调试手段,除了可以设置的断点以外,还可以对的内核进行控制,从而实现对外围设备的读写比如下载程序到或者空间。通常,在处理器中,对外围设备的访问是通过对扫描链的控制来实现的。中扫描链有个移位寄存器。其中前位和总线上的数据相连,第位是内核的个控制信号。当第位是的时候,表示内核在执行下条指令的时候,是在模式下运行的当第位是的时候,表示内核在执行下条指令的时候,是在模式下运行。在模式下,内核的时钟是依靠状态机产生的信号在模式下,内核的时钟是依靠系统的主时钟信号。因为系统外设的工作频率是和系统的主时钟致的,比如。所以,在模式下,只能执行和处理器内核相关的指令,而所有的对外设的访问指令都不能有效地执行。想要对外部设备比如系统的空间进行访问和操作,必须使的内核工作在系统模式下,而在系统模式下......”。
1、手机端页面文档仅支持阅读 15 页,超过 15 页的文档需使用电脑才能全文阅读。
2、下载的内容跟在线预览是一致的,下载后除PDF外均可任意编辑、修改。
3、所有文档均不包含其他附件,文中所提的附件、附录,在线看不到的下载也不会有。