摘要:其实上层应用篇 很简单 对于BeepActivity.java 可能需要注意一下的就是 包名、类名、方法名的编写一定要与JNI层定义的方法名要一致 不然会提示找不到JNI层的方法的 比如 包名com.under.beep 类名BeepActivity 方法名beepOn BeepActivity....
阅读全文
摘要:对于BEEP的JNI层,并没有采用LED所用的JNI_OnLoad的方法,而是直接使用的是JNI的绑定机制,在JNI中与上层应用相对应函数采用的方式如下 详细信息见JNI官网 : http://docs.oracle.com/javase/7/docs/technotes/guides/jni...
阅读全文
摘要:对于BEEP的HAL层函数与LED的HAL层的函数很相似,就不多说了。 头文件放在/hardware/libhardware/include/hardware/目录下beep_under_hal.h#ifndef ANDROID_BEEP_UNDER_H#define ANDROID_BEEP_U...
阅读全文
摘要:上篇LED的驱动程序编写采用混杂设备的方式,此篇Beep的驱动程序的编写采用platform设备驱动,并对platform的机制做个简单的分析。 先看硬件电路图 通过一个NPN的三极管控制BUZZER,因为BUZZER是直流电压式驱动,需要三级管提供的放大电流才能发声, 所以只要三极管导通,给X...
阅读全文
摘要:本文是对前面驱动--HAL--JNI--APK的一个总结。 上图即是整个流程的一个框架,上层APK通过JNI调用HAL层提供的接口,从而驱使硬件进行相应的操作。 对于上图更为详细的解析: 在APK层通过 static{ System.loadLibrary("ledunders"); ...
阅读全文
摘要:开发板:TQ210OS:Android 4.0.3以下所有内容都是在TQ210开发板上实现,并且很多内容也是天嵌公司提供,我将一些内容进行了删减、替换,然后加入了一些自己的理解,同时也是记录自己学习的旅程。LedUnderActivity.javapackage com.unders.led;imp...
阅读全文
摘要:开发板:TQ210OS:Android 4.0.3以下所有内容都是在TQ210开发板上实现,并且很多内容也是天嵌公司提供,我将一些内容进行了删减、替换,然后加入了一些自己的理解,同时也是记录自己学习的旅程。led_unders_led_jni.c#include //包含jint JNINati...
阅读全文
摘要:开发板:TQ210OS:Android 4.0.3以下所有内容都是在TQ210开发板上实现,并且很多内容也是天嵌公司提供,我将一些内容进行了删减、替换,然后加入了一些自己的理解,同时也是记录自己学习的旅程。HAL层头文件 放在hardware/libhardware/include/hardware...
阅读全文
摘要:开发板:TQ210OS:Android 4.0.3以下所有内容都是在TQ210开发板上实现,并且很多内容也是天嵌公司提供,我将一些内容进行了删减、替换,然后加入了一些自己的理解,同时也是记录自己学习的旅程。废话不多说 先看硬件电路图 很简单 通过NPN三极管控制LED的阴极 NPN三极管的基极给高电...
阅读全文