摘要: 对于复杂的Linux驱动及HAL等程序库,需要使用各种方法对其进行调试,例如,设置断点、逐步跟踪代码、输出调试信息等。Printk函数运行在内核空间,printf函数运行在用户空间。使用printk函数可以很方便地将消息写入日志文件或控制台,但大量使用printk函数操作日志文件或控制台设备文件会严 阅读全文
posted @ 2016-07-07 19:51 BJBLOG 阅读(86) 评论(0) 推荐(0) 编辑
摘要: HAL(硬件抽象层)是建立在linux驱动之上的一套程序库。这套程序库不属于linux内核,而是Linux内核之上的应用层。 加入HAL的主要目的: 1、统一硬件的调用接口。由于HAL标准的调用接口,所以可以利用HAL屏蔽linux驱动复杂、不统一的接口。 2、解决了GPL版权问题。由于linux内 阅读全文
posted @ 2016-07-07 19:50 BJBLOG 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 一、PWM原理:PWM连接到了TOUT1端口。 PWM使用端口F的GPFCON寄存器进行控制。该寄存器在Linux内核中对应的宏是S3C64XX_GPFCON,该宏表示GPFCON寄存器的虚拟地址。GPFCON只用了最高两位(30和31位)来控制PWM。当最高两位为10时,打开PWM。为00时停止P 阅读全文
posted @ 2016-07-07 19:49 BJBLOG 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 第七章 控制发光二极管 作为IO内存是通过各种接口(PCI、USB、蓝牙、以太网等)连接到主机(PC、手机)的硬件(网卡、声卡、摄像头等)主机内存中的映射。Linux提供了多个与IO内存交互的函数,如ioreadl6/ioead32等。Linux内存的管理模块负责同步IO内存与硬件中的数据。每一个连 阅读全文
posted @ 2016-06-05 18:07 BJBLOG 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 第五章 搭建S3C6410开发板的测试环境 1.安装串口调试工具:minicom 开发Linux驱动程序无法像开发Android应用程序一样直接在eclipse中开发。不过通过OK6410开发板可以使用其他方式显示Linux驱动程序输出的调试信息,这就是串口通信。OK6410开发板带了一个串口。可以 阅读全文
posted @ 2016-06-05 18:05 BJBLOG 阅读(85) 评论(0) 推荐(0) 编辑
摘要: 第六章 Linux驱动程序 1.编写Linux驱动程序的步骤 (1)建立Linux驱动骨架(装载和卸载Linux驱动) Linux内核在使用驱动时首先需装载驱动,在装载过程中需要进行一些初始化的工作,例如建立设备文件,分配内存地址空间等。退出Linux系统是,需要卸载Linux驱动。卸载的过程中就是 阅读全文
posted @ 2016-06-05 18:05 BJBLOG 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 第四章 本章主要介绍了如何下载和编译Android源代码和Linux内核源代码。 下载、编译和测试Android源代码: (1)配置Android源代码下载环境: 创建用于存放脚本文件的目录 # mkdir ~/bin # PATH=~/bin:$PATH 下载repo脚本文件 # curl htt 阅读全文
posted @ 2016-04-27 15:35 BJBLOG 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 第二章 搭建Android开发环境 本章主要介绍了Android底层开发所需要的工具:JDK;Eclipse;ADT;CDT;Android SDK;Android NDK;交叉编译环境;Linux内核源代码;Android源代码;用于调试开发板的串口工具minicom。 安装JDK,下载好JDK后 阅读全文
posted @ 2016-04-27 15:34 BJBLOG 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 第三章 为了减小发行包的大小,对源代码进行管理。Android和Linux内核、驱动开发的过程中会涉及到大量的源代码,而这些代码都是由Git管理的,本章即介绍了Git的理论和基本实用方法。 安装Git # apt-get install git # apt-get install git-doc g 阅读全文
posted @ 2016-04-27 15:34 BJBLOG 阅读(78) 评论(0) 推荐(0) 编辑
摘要: 第一章 Android系统与嵌入式开发 从系统移植和驱动开发者的角度来讲,Android底层的开发移植和传统嵌入式系统开发保持了很多的一致,所以要从事Android系统的开发必须了解嵌入式开发的基础知识。本章就嵌入式和Android系统进行了简单的介绍。 Android系统的架构分为四层: 第一层, 阅读全文
posted @ 2016-04-27 15:33 BJBLOG 阅读(84) 评论(0) 推荐(0) 编辑