ARM 相关
文章平均质量分 75
大龄ITer
这个作者很懒,什么都没留下…
展开
-
ARM cortex-M3 异常处理分析
一、进入异常之前处理器可能的状态有:1. handler2. 线程,MSP3. 线程,PSP 二、产生异常时:1、 有一个压栈的过程,产生异常时使用PSP,就压入到PSP中,产生异常时使用MSP,就压入到MSP中2、 会根据处理器的模式和使用的堆栈,设置LR的值(当然设置完的LR的值再压栈) 三、异常返回时:根据L原创 2012-04-05 19:59:25 · 2017 阅读 · 0 评论 -
xmodem 协议
1.Xmodem协议是什么? XMODEM协议是一种串口通信中 广泛用到的异步文件传输协议。分为标准Xmodem和1k-Xmodem两种,前者以128字节块的形式传输数据,后者字节块为1k即1024字节,并且 每个块都使用一个校验和过程来进行错误检测。在校验过程中如果接收方关于一个块的校验和与它在发送方的校验和相同时,接收方就向发送方发送一个确认字节 (ACK)。由于Xmodem需要对每个块原创 2012-04-05 21:24:09 · 1046 阅读 · 0 评论 -
cache 浅析
1. CacheCache一词来源于法语,其原意是“藏匿处,隐秘的地方”,而自从被应用于计算机科学之后,就已经成为了英语中的一个计算机体系结构专有名词。Sun Microsystems的前首席科学家Billy Joy,作为BSD unix,csh,vi,NFS,java,TCP/IP等的发明者,他曾经说过,在计算机科学领域,如果没有了cache的发明,其他的一切发明都将失去意义。而正是他,翻译 2012-06-15 17:49:05 · 2253 阅读 · 0 评论 -
arm9 ucos 移植
1、 ucos系统一般运行在svc模式下2、 需要初始化两个栈,IRQ mode,SVCmode,一般先初始化IRQ模式的栈,在初始化SVC模式的栈,因为在初始化svc堆栈后,一般直接跳转到__main,这样我们所谓的用户态代码和ucos代码都运行在svc,这样的好处就是我们可以通过操作cpsr来disable 中断,没有了中断就没有了线程的切换,可以用于保护共享数据。3、 Scat原创 2012-06-15 17:53:35 · 1399 阅读 · 0 评论 -
Zynq cap调试总结
遇到的问题和解决方法1、ramdisk启动之后,必须先ls一下,才能open文件。问题定位方法:gdb,显示栈。问题定位:open函数会调用到内核中的kunmap函数,而kumap函数不能在中断上下文中调用(在kunmap函数中有BUG_ON( in_interrupt ( )) ;) ,而我们 f ilp_open正是在中断上下文中调用的,因此出错。解决方法:启动内核线程,来op原创 2012-09-12 10:27:43 · 1096 阅读 · 0 评论