![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
在mini2440上裸奔
dddkkf
这个作者很懒,什么都没留下…
展开
-
最小的mini2440初始化代码(二)
从单片机开发到嵌入式开发,有很多相通的地方,也有一些区别。就说这BootLoader吧,做单片机的时候没这个概念,单片机里的BootLoader主要是用于代码升级,而嵌入式的主要是用来做初始化工作的。 首先得了解启动的流程,再谈初始化的事情。mini2440开发板用的是S3C2440芯片,该芯片支持NOR和NAND启动模式,所以开发板有一个开关用于切换这两种启动模式。NOR启动和NADN启原创 2009-03-21 10:09:00 · 872 阅读 · 0 评论 -
友善之臂mini2440开发板的一点感受
购买mini2440的原因,是因为作为一张开发板她也能做得那么漂亮。市面上有很多功能雷同的开发板,能把开发板设计得那么漂亮的也算是比较有创意的,把开发板和触摸屏很漂亮地整合起来,乍一看还真像个产品了。总体来说感觉还是不错的,但还有一些小的不满意的地方。漂亮要付出代价的,LED和小键盘被埋没在触摸屏之下,LED只是用来看的,还可以通过缝隙,艰难地偷窥到亮还是不亮,但小键盘是没法按到了,虽原创 2009-03-21 10:43:00 · 2573 阅读 · 1 评论 -
最小的mini2440初始化代码
;====================================================================; File Name : MiniBoot.s; Function : 初始化Mini2440开发板,使得JTAG可以调试ROM/RAM中的代码; 关闭看门狗,屏蔽中断和子中断,配置存储器; Revision :原创 2009-03-20 22:45:00 · 1435 阅读 · 1 评论 -
最简单的C语言工程,汇编代码
; 最简单的C语言工程; simple.c 只定义了一个空的main函数:int main(void) {}; simple.s 只实现了__user_initial_stackheap函数; 生成ARM920T/DebugRel汇编代码; C代码入口; 初始化RW/ZI区域__main [0xe28f8090] add r8,pc,#0x90 ; #0x原创 2009-03-30 13:22:00 · 1291 阅读 · 0 评论 -
在mini2440上裸奔之C语言
继“最小的mini2440初始化代码 ”的开始,已经为裸奔做好了准备,测试简单的汇编代码当然没有问题。做这个最小代码的主要目的是为了后续代码可以使用C语言,加快开发速度,提高代码可读性。以前习惯了main()是第一条执行的指令,从来没有深入到汇编代码中,看看C编译器还干了些啥。在写完最简单simple.c后,把断点设置在main()的入口,但程序跑起来后,又跳回0x00执行了,这是为什么呢原创 2009-03-30 13:26:00 · 975 阅读 · 0 评论 -
最小的mini2440初始化代码(三)
;====================================================================; File Name : MiniBoot.s; Function : 初始化Mini2440开发板,使得JTAG可以调试ROM/RAM中的代码; 关闭看门狗,屏蔽中断和子中断,配置存储器; Revision : V1原创 2009-03-30 13:52:00 · 1115 阅读 · 0 评论 -
最小的mini2440初始化代码(四)
v1.1增加了对异常的处理。一般的应用都需要处理中断,ARM的中断处理就是跳到0x00开始的向量表,执行相应的代码。这里有几个限制:一是向量表的基址是0x00,地址无法改变;二是B指令的跳转方位是32MB之内;三是0x00大多是ROM,不能随意修改数据。实际应用中,RAM的地址往往不在0x00,也超过32MB,所以增加了异常处理,来解决这两个问题。解决的方案是,在RAM中定义一个终端向量入口地原创 2009-03-30 13:58:00 · 672 阅读 · 0 评论