linux--2440
文章平均质量分 97
菜鸟-01
这个作者很懒,什么都没留下…
展开
-
06:2440----异常与中断
在这五种异常模式中每个模式都有自己专属的R13 R14寄存器,R13用作SP(栈) R14用作LR(返回地址),LR是用来保存发生异常时的指令地址(可以理解为我们上面说的保存现场,用于我们在处理完中断,之后继续处理我们的程序)SPSR保存的程序状态寄存器:表示发生异常时这个寄存器会用来保存被中断的模式下他的CPSR,就比如我我的程序在系统模式下运行 CPSR是某个值,当发生中断时会进入irq模式,这CPSR_irq就保存系统模式下的CPSR。当某些位被置一时,对应的中断被屏蔽,即不会被处理。原创 2023-12-20 19:14:08 · 205 阅读 · 0 评论 -
05:2440----代码重定义
makefile文件不变这个也就是方法2一个程序,由代码段、只读数据段、数据段、bss段等组成。程序一开始可以烧在Nor Flash上面,运行时代码段仍可以在Nor Flash运行,但对于数据段,就必须把数据段移到SDRAM中,因为只要在SDRAM里面,数据段的变量才能被写操作(CPU无法直接访问NOR FLASH,NOR 不是内存类设备),把程序从一个位置移动到另一个位置,把这个过程就称为重定位。前面的例子,我们只是重定位了数据段,这里我们再尝试重定位整个代码。原创 2023-12-02 20:57:27 · 160 阅读 · 0 评论 -
04:2440---内存控制器
操作GPIO: 我们可以编写程序,让CPU去访问里面的寄存器eg:GPFCON配置寄存器 . 可以设置这个寄存器,把某个引脚设置为输出或者输入;GPFDATA数据寄存器, 可以设置某个引脚发出高低电平.UART一样我们可以写程序让CPU访问某些特定的寄存器.对于CPU来说,我不关心你这些具体的接口,我只是去操作某个寄存器。我CPU把某些值写给某些寄存器,由这些对应的控制器发出特定的波形。所以这个时候我们的内存控制器就来了。原创 2023-11-26 17:13:16 · 541 阅读 · 1 评论 -
03:2440--UART
。原创 2023-11-25 22:33:55 · 265 阅读 · 0 评论 -
02:2440---时钟体系
S3C2440A中的时钟控制逻辑可以产生所需的时钟信号,包括CPU的FCLK、AHB总线外设的HCLK和APB总线外设的PCLK。晶振-----选择器-----PLL锁相环(MPLL和UPLL)具体内容见1------HCLK和PCLK分别挂载在AHB总线和APB总线上面-----在线上面又挂载了许多外设。---是一个控制寄存器,用于控制系统时钟的分频和选择。------挂载在AHB总线上(高速总线)====>挂载了nand flash , LCD控制, USB, 电源管理等外设----136MHZ。原创 2023-11-12 19:18:15 · 139 阅读 · 0 评论 -
01:2440----点灯大师
栈的增长是随着程序的执行自动进行的,而数据的扩展则需要通过brk 系统调用来显式地完成,brk有一个参数来指定数据段的结束地址,它可比当前值大(表示扩展数据段 ),或是比当前值小(表示缩小数据段 )。我们采用的是交叉编译的方法---使用window书写汇编代码-----将汇编代码传给虚拟机-----在虚拟机下将传来的汇编代码编译为bin文件-----在将bin文件传给window-------window烧写bin文件给Linux开发板;配置GPFCON寄存器的[9:8]位为0b01-----输出模式;原创 2023-11-11 15:54:13 · 814 阅读 · 1 评论