学习ARM开发(22)

关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个程序输出打印内容,这样在打印机上就会乱得不得了,同时有两份以上的文件交错地打印在一张纸上。像不可剥夺的资源,就一定要关闭中断,让它占有这个资源。在ARM里,没有像x86那样有清除中断指令CLI。那么在ARM里是怎么样实现关中断和开中断的呢?下面就来看...
阅读(3304) 评论(0)

学习ARM开发(21)

OS任务切换源程序分析       先要声明任务指针,因为后面需要使用。       //任务指针.volatile TASK_TCB* volatile g_pCurrentTask = NULL; volatile TASK_TCB* volatile g_pCurrentTask1 = NULL;volatile TASK_TCB* volatile g_pCurrent...
阅读(3184) 评论(0)

学习ARM开发(20)

OS的任务切换有了前面的Tick中断,那么基本的任务切换条件已经是“万事俱备,只欠东风”了。不过,这个“东风”也是很难搞得懂的,只有不断地通过实践才会找到合适的方法。现在我就需要去找这个东风了,就是解决不同的任务切换的问题。从简单到复杂,这是任何事物的认识过程,也是行之有效的方法。绝对不要一上来就搞一个很复杂的,因为人的理解能力还是有限的。最简单的任务切换,就是我需要实现的:只需要实现两个任务...
阅读(3249) 评论(0)

学习ARM开发(19)

使用TICK中断经过许多天的努力,总算可以使用中断了,但为了让RTOS可以使用定时中断,那么在S3C44B0里有什么样的中断可以实现呢?在S3C44B0里有两种方法可以实现这样中断,一种是通过定时器中断,一种是通RTC的TICK定时中断。由于S3C44B0片内已经有提供给RTOS的中断,就应使用它作为RTOS的中断,这样可以使时间片跟RTC时钟是时间同步。RTOS调度任务是通过设置时间片中断实...
阅读(3122) 评论(0)

学习ARM开发(18)

上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中断是否打开的。 这几个寄存器如下:1. 程序状态寄存器(CPSR).这个寄存器里有两位可以控制是否响应FIQ或IRQ中断的设置。如果把这两位全部置1,就全部不响应中断了。后面会用到这两位来关中断的,在RTOS里就需要使用到这两位关中断作为临界区。2...
阅读(3210) 评论(0)

学习ARM开发(17)

因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序,然后不断地调试。在这个程序之前,先要深入去了解ARM的中断方式,知道它有7种工作方式。下面先看初始化的代码是怎么样初始化不同模式栈的。/*  IRQMODE。  */    orr     r1,r0,#0x12|0xc0msr     cpsr,r1 ...
阅读(3171) 评论(0)

学习ARM开发(16)

ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采用中断比以往的查询方式占用更少的CPU时间,让系统提供更好性能。那么中断在S3C44B0中是怎么样的呢?在开发ARM程序中是怎么样进行响应的呢?这就是我需要学习的东西。查询S3C44B0的手册,发现它有7种工作模式,每种工作模式是不一样的。其中最常用的...
阅读(3666) 评论(0)

学习ARM开发(15)

使用GCC来开发ARM,就一定遇到编译器的问题。比如遇到编译C代码各种警告和错误。像我昨天就遇到了几个警告,那么就来看看这几个警告是什么引导的呢?警告如下:armlib/memory.c: 91 warning: cast increases required alignment of target type这个警告是什么意思呢?从字面上来看,就是类型转换时,引起目标类型的存储方式排列...
阅读(5800) 评论(1)

学习ARM开发(14)

由于在LINUX下开发还是比较麻烦,那么在WINDOWS下有没有更加方便简单的开发方法呢?答案是肯定的。当然不是选择ADS这样的开发工具,因为它成本太贵。就算使用盗版,也不会觉得心安理得,那么就要采用其它方案了。目前只有选择GCC的开发工具。经过不断地努力,总找到合适的ARM开发工具。它就是WINARM,采用它来开发,就大提高了工作效率,使写起代码来更加方便,编译更加快速,出错更容易修改,并且比较...
阅读(3289) 评论(0)

提供S3C44B0开发解决方案

提供S3C44B0的软件开发包。有如下特点:1.  方便,简单。由于采用WINDOWS操作系统开发,变得非常方便和简单。2. 便宜。由于采用GNU的ARM-ELF工具,免费使用,成本最便宜。3. 大量代码已经调试好,代码规范,详细的注释。4. 提供详细技术支持。价格面议。QQ: 9073204  请注明“S3C44B0的软件开发包”。EMAIL:ccaimouse@...
阅读(2804) 评论(0)

学习ARM开发(13)

由于UBOOT大部份源程序已经修改好,目前就是修改网络部份了。由于网络设计,是采用了16位数据线的方式,还有RTL8019AS采用了9346的存储器,这样的设计都带来了很大的麻烦。因为是全新的东西,没有任何经验,也没有相应的仪器。所以开发这个RTL8019AS的网络驱动,就成为了一个很大的问题。无论有多难,都要去面对的。要写RTL8019AS的驱动,首先的问题,就是找到S3C44B0访问RTL...
阅读(3011) 评论(0)
    个人资料
    • 访问:5606854次
    • 积分:73290
    • 等级:
    • 排名:第25名
    • 原创:1589篇
    • 转载:61篇
    • 译文:11篇
    • 评论:2088条
    文章存档
    最新评论