浅谈Android下基于Broadcom4330的FM驱动

2014-11-24 13:51:42 · 作者: · 浏览: 3

前段时间调了FM的驱动,今天有空就整理下。


一、我先整理下在底层关于FM驱动的Lib库,首先要想好在底层我们要准备好提供上层的JNI接口。


我目前想到如下几个接口:


1.fm_power_on(); 打开FM;


2.fm_power_off(); 关掉FM;


3.fm_search_freq(int frq, char up); FM自动搜台,并跳到下一个台的位置;


4.fm_get_freq(); FM得到当前电台的频率;


5.fm_set_mute(); 设置FM静音;


6.fm_set_volue(int value); 设置FM的音量大小;


这些函数实现后,编译成动态库(生成.so文件)。


二、在framework/base/core/jni目录下实现一个.cpp文件把lib库调用,实现FM的一些工作,这个jni就会直接给mangerserver,最上面的apk应用会调用Manger层,而manger和mangerserver之间的通信是通过IPC机制实现的。