摘要:
第一个部分中,完全使用ARM汇编来控制LED,完全使用汇编来编写大的系统存在理论可行性(当然现实中也有完全使用汇编实现的操作系统),但是汇编理解起来太困难,编写起来很复杂,太琐碎,所以肯定会想要使用理解性更好的C语言来编写大部分代码,那么哪些代码用汇编编写?哪些用C语言编写呢?从工程实践中可以得出一些结论:1.跟具体硬件紧密相关的功能,对这部分功能,无需保持可移植性。2.对C语言编译后的代码没有信心,或者必须进行特别优化时,必须依靠人工优化代码时。3.相对的是,如果需要保持可移植性,那么必须把平台无关的功能通过底层的部分汇编代码进行隔绝,其他代码通过C语言来编写。功能原理和电路图见第一篇。代码 阅读全文
摘要:
基本概念:1.GPIO--通用IO口,通过芯片针脚来控制或读取外设的数据。2.GPIO口的使用原理,通过设置GPXXCON, GPXXDAT, GPXXPUL等寄存器来设置GPIO口的状态。原理图:跟硬件相关的部分,一定要阅读原理图,然后通过查找SoC的用户手册来查找相应的寄存器设置即可。底板电路图:核心板电路图:可知在OK6410上4个LED灯是通过GPM这一组的GPIO口控制的,分别是GPM0-GPM3四组。然后打开S3C6410X User's Manual,查找GPM相关的寄存器:通过上面内容找到:GPMCON 地址 0x7F008820GPMDAT 地址 0x7F008824 阅读全文