- 博客(30)
- 收藏
- 关注
原创 一些干扰的记录
2 触摸开机乱跳, 灯闪时触摸就跳-----tvs管 受到光照时电容就跳变,引起触摸跳。1 电流音, 喇叭正负接在一起,开机就听到电流音,受到电池干扰。触摸开机乱跳--------------电容接触到触摸。
2024-07-16 09:31:25 258
原创 串口9600波特率解析数据
uart 通过 io 口中断和 timer 读取: 读取到下降沿中断,然后定时半个周期去读取一次数据(9600: 52)PORTINTEDG |= BIT(EDGE_INT_PORT);
2024-07-16 09:27:52 407
原创 spi 推跑马灯
1 主控spi单次最少是发一个U8 也就是8个bit位,所以软件充分利用 这个u8的每一个bit位组合成一个 灯需要的0码 或者1码。3 开机第一次发送波形的时候有概率的波形中间会被中断一次-----丢弃第一次发送的波形,第一次发送波形的时候,led使能脚不要使能。2 遇到的问题,主频改变的时候数据就不对了,发送spi数据前需要判断当前主频来设置spi的波特率来保持波形。spi 推跑马灯,来电时跑马灯效果 归零码。
2024-07-16 09:23:00 383
原创 归零码解析
if(sendAllData[2]==0) //只有1个数据,发送mic频谱, 其他发送music 和dj命令。if(count==6) // 1.2+0.2=1.4ms结束 1 bit。READ_STASTUS()) //出现低电平 开始计数。if(upCnt>5) //结束出现高 1ms异常 复位。if(count==2) // 发1时 400us时置高。if(count==5) // 发 0 时 1ms时置高。if(downCnt>14) // 大于3ms。if(HH == LL) //接收有效。
2024-07-16 09:20:34 413
原创 优化中科蓝讯电池百分比计算
电量百分比处理,自带的百分比处理非常粗糙,如下bat_level = (sys_cb.vbat - bat_off) / ((4200 - bat_off) / 100);实际使用的时候,后面30%到40%掉的非常快10来分钟就掉完了这里添加了2种百分比计算方法,1 100个百分比各对应一个电压2 添加0,25,50,75,100的电压,其他的自动计算,默认开的是第2种,需要第一种也可以打开,注释掉的地方中间还加了一个是否充电中的判断,没有充电的时候百分比只能下降,不能上升,规避掉百分比跳
2020-12-02 14:58:23 56
原创 中科蓝讯几种测试模式详解
1 DUT模式: FUNC_DUT_ENbt_app_cmd_process中#if FUNC_DUT_EN if (ptr[0] == 'D' && ptr[1] == 'U' && ptr[2] == 'T') { memset(test_buffer,0x00,sizeof(test_buffer)); memcpy(test_buffer,ptr,8); msg_enqueue(EVT_DEAL_S...
2020-12-02 14:40:15 196
原创 Bes 充电盒协议总结
1 开盖(上升沿信号开机) a 充电脚设成3.0 v, 然后延迟160ms b 充电脚设成5v, 然后延时100 ms c充电脚设成3.0 v2 合盖 a 开5v,然后延时3s b 关5v , 然后延时45ms c 发送复位pattern : 0101_0101_0011_0101_010 复位pattern每个bit 5ms; pa...
2020-12-02 14:06:27 957 1
原创 下拉添加通话音量调节 8.1
下拉:添加通话音量调节 8.1vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/volume/VolumeDialogImpl.java false 改成true: addRow(AudioManager.STREAM_VOICE_CALL, R.drawable.ic_volume_voice, R.drawable.ic_volume_voice, ...
2020-11-27 16:18:53 442
原创 刷完机开机显示 即将完成Android更新... 的通知
刷完机开机显示 即将完成Android更新... 的通知 应该是判断到fingerprint 改变了UserController.java: finishUserUnlocked: mInjector.sendPreBootBroadcast->PreBootBroadcaster.java: case MSG_SHOW:
2020-11-27 16:12:44 364
原创 添加讯飞语音唤醒系统并解锁系统
添加在launcher中比较合适,但是launcher需要添加系统权限,需要添加开启和关闭语音唤醒的设置,菜单做在setting里,只是一个改变值,launcher这边接收到去设置mWakeupEnable = 0 != Settings.System.getInt( getApplicationContext().getContentResolver(), Settings.System.IFLYTEK_VOICE_WAKEUP_ENABLE, 0);...
2020-11-25 16:37:32 912
原创 讯飞语音唤醒集成过程
1 讯飞平台注册下载sdk包2 看下sdk包中的demo, 然后跑起来看下效果, 中间主要是导入AS各种报错, 主要集中在修改build.gradle文件,文件如下, 改了好几个地方,记不得了,对比下文件就知道了apply plugin: 'com.android.application'android { compileSdkVersion 28 defaul...
2020-11-25 16:37:06 1063
原创 加速传感器在设置callback时间后,callback时间到会多次触发callback
加速传感器在设置callback时间后,callback时间到会多次触发callback,之前有个项目不会,这个项目会,驱动说是硬件是不一样的,问了mtk,要去改驱动相关的,说了一堆,也没说出个所以然来,于是从中间层入手,系统调用callback的地方去判断一下时间,如果没到设置的时间就不去callback了,代码如下SystemSensorManager.java中 添加变量定义 private static final boolean et_acc_sensor_once=("1"....
2020-08-15 11:18:00 30
原创 android 8.1 240x320分辨率恢复出厂设置 或者fota升级看不到升级动画
动画是其实是有,只是分辨率不对,所以看不到,修改地方如下build/core/Makefileifneq (,$(wildcard $(recovery_resources_common)-$(recovery_density)))recovery_resources_common := $(recovery_resources_common)-$(recovery_density)else#sj#recovery_resources_common := $(recovery_resourc
2020-05-27 17:06:17 322 1
原创 nb-iot 海思 移植onenet平台总结
1 移植onenet平台主要是2个方面,一个是系统接口, 二是网络接口,当然,前期编译通过是个比较漫长的过程,建议是先编译通过再去动接口,前期我是一个一个文件加进去编译的,这样错误不至于太多,编译通过后在实现系统和网络接口 中间有遇到莫名的编译问题,没有指示哪里报错,是malloc之类的接口没有,需要改成已有的接口,错误如下 undefined reference to `_sbrk', `_write', `_lseek', `_rea...
2020-05-26 19:48:00 320
原创 屏蔽状态栏通知,以及控制手机有打过电话,同时控制某些应用一天只能弹出一次状态栏通知
屏蔽状态栏通知,以及控制手机有拨打电话记录,同时控制某些应用一天只能弹出一次状态栏通知。看了下记录这是2013,2014年做的一个功能,应该是4.4的版本,在此记录一下吧,主要是控制一些内置的一些应用在消费者手里之前不要弹通知出来,同时后续一天只能弹一条通知。后面的版本如果修改应该也差不多,看了下这些文件也都有,不过现在看来,还是有些地方可以改进的,就此记录一下,不去改了修改文件frame...
2020-04-16 10:23:27 285
原创 计算机中正负数值在存储器中的存储值
通常做上层应用不太关注这个,正负数在存储中是怎么存储的,其实应该学计算机文化基础的时候就应该有学过这个,只是当时并没有太理解这个东西. 最近在弄nb-iot的kv值存储,发现-100, kv用工具读出来是ff 9c, -300 是FE D4这里先补充几个概念原码:是最简单的机器数表示法。用最高位表示符号位,‘1’表示负号,‘0’表示正号。其他位存放该数的二进制的绝对值。反码:正数的...
2020-04-09 11:46:55 707
原创 android系统层实现录取播放声音的方法
最近有个需求要在mic录取播放的声音,录取的过程并不是直接用mic去录,具体实现原理是通过获取给喇叭的pcm数据,同步填写替换掉mic获取的pcm数据,具体操作就是在给喇叭写数据的地方开一个比较大点的buffer, 循环不停的往里面填写给喇叭的pcm数据,而mic读取数据的地方就一直从这个buffer里去循环获取数据来实现,需要注意的是播放和录取设置的波特率这些参数需要一致。另外实现过程中发...
2020-03-13 14:17:26 782
原创 android 把底层传上来的按键值在传给应用时改为其他的键值
有些按键值上层有定义,但是底层并没有定义,驱动反馈定义以后会有问题,这时候为了方便,底层定义现有的按键,然后需要在framework层把按键值转换一下。起初认为这个应该是在phonewindowmanager.java里去处理,因为通常framework里的按键特殊处理都是在这进行的,心想在这键值替换应该就可以了,通过一顿骚操作,log查看,结果并不任意,log显示phonewindowman...
2020-03-13 14:03:15 555 1
原创 系统camera预览比例和方向的修改
由于执法仪类项目要求摄像头录像录出来的视频要是横屏,正常手机录像是竖屏的和屏幕的比例一致,所以摄像头是横放的,带来的问题就是系统自带的camera app 预览比例不对,是拉伸的,以及方向不对,需要修改1 首先我们先看看方向问题,通过log 和code的查找,发现app 获取预览方向的接口在packages\apps\Camera2\common\src\com\mediatek\came...
2020-03-13 14:02:12 1748 1
原创 蓝牙只让搜到耳机,不让搜到手机,同时不让别人搜到自己 O版本
码字不易,都是原创,转载请注明远处, 多谢蓝牙只让搜到耳机,不让搜到手机,同时不让别人搜到自己 O版本1 蓝牙只让搜到耳机,不让搜到手机和其他蓝牙设备,查看了一下蓝牙的应用层代码,接收搜到蓝牙设备的原理就是接收广播,于是就可以查找广播发出的地方,很容易就发现RemoteDevices.java下面void deviceFoundCallback(byte[] address)发送的,在这我...
2020-03-13 14:01:05 1824 1
原创 wifi信号强度db值修改
第三方软件显示的wifi强度对比高通的机子,显示db值比高通要低10个左右,客户纠结这个,其实信号强度已经是很好了,于是有了把wifi的db值往上提10个db的需求通过自己的demo获取db值,确定调用的接口是在 WificondControl.java的getScanResults 函数里 int signalDb=result.signalMbm / 100; 这个值就是db值,我们只需...
2020-03-13 14:00:31 2155 1
原创 海思nb-iot芯片 hi2115外围硬件调试记录
1 光感: I2C 读取 hx3003 的值2 佩戴光感: IO口中断 判断佩戴3 电池电压: ADC 读取电压值,然后通个分压电阻计算实际的电压值4 IO口控制灯亮灭:et_setGpioOut(PIN_22,ET_GPIO_HIGH);void et_setGpioOut(PIN pin,uint8 hgihtLow){ gpio_claim(pin, ...
2020-02-28 11:19:52 842 3
原创 按键长按事件onKeyLongPress
按键长按事件onKeyLongPress, 今天发现onKeyLongPress app里不响应,网上搜了下要在onKeyDown里调用下event.startTracking();即@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event){ Log.d("sssjjj","onKeyDown="+Inte...
2020-01-09 11:36:34 1771 1
原创 end 键功能的定义
end键除了通话,来电时挂断电话的功能,这些功能都是在phonewindowmanager.java里实现的,如果我们想要修改end键在其它状态下的功能,setting.java中修改Settings.System.END_BUTTON_BEHAVIOR_DEFAULT 这个值,系统默认支持功能是0x01 home键功能, 0x02 sleep功能,也就是灭屏休眠,这个实现也是在phonewin...
2019-12-31 15:13:46 1583
原创 系统节点操作控制外围硬件
系统文件节点操作,有个手电筒功能,其实就是开关一个灯,之前驱动做成闪光灯,这个上层可以通过camera的接口去操作灯,但是带了一个问题就是操作灯以后就不能操作摄像头了,于是就修改为节点操作,节点操作需要注意2个问题,一个是节点文件权限,还有就是selinux权限节点权限无非就是init.rc文件里chmod给权限,selinux权限就需要看log需要给什么权限了,当然还有一种更简单暴力的方法就...
2019-12-31 15:03:50 342 1
原创 老人机launcher 发现按一下数字键第一个icon 会highlight,
老人机launcher 发现按一下数字键第一个icon 会highlight, 而拨号这些功能键则不会,心想应该是launcher哪里处理有问题,在launcher的各个按键处理的地方查找,发现按键处理的地方全都屏蔽掉还是会highlight一下,而highlight处理的地方 FocusIndicatorView.java 的public void onFocusChange(View v, b...
2019-12-31 14:58:18 403 1
原创 intent调起拨号,输入*#*#暗码调不起对应应用问题
今天在Launcher里添加数字按键进拨号发现Intent(Intent.ACTION_DIAL,Uri.parse("tel:" + keycode)) 调起拨号的时候输入*#*#暗码是无效的,必须先删除一次输入,再重新输入才有效, 而正常图标点击进去是不会有这个问题的。 问题应该是和intent有关系,一顿查看代码发现暗码的处理是在 SpecialC...
2019-12-31 14:57:59 730 2
原创 如何查看手机连接过的wifi的密码
有时候需要查看手机连接过的wifi的密码,那么可以通过下面这个文件查看,data/misc/wifi/WifiConfigStore.xml7.1data/misc/wifi/wpa_supplicant.confnetwork={ ssid="TP-LINK_5G" bssid=34:39:68:a9:94:87 psk="addrerfff" key...
2019-12-31 14:00:01 2193 1
原创 android 通话界面的号码输入界面重叠
最近有个老人机项目,屏幕比较小,进入拨号界面是正常的,但是通话界面发现输入号码界面,拨号盘上面的数字和字母重叠了。 拨号app的的键盘在 是dialpadFragement.java, 通话的拨号盘在incallUI 下面的dialpadFragement.java 中, packages\apps\Dialer\InCallUI\src\com\android\incallui, 解决方法...
2019-12-31 13:55:14 347
原创 关于关机情况下去掉power键 + 音量键进入recovery 或 factory mode 的修改
有些客户经常会要要求把关机按键进工厂测试去掉,vendor/mediatek/proprietary/bootable/bootloader/lk/target/et732_lwg_32bsp/include/target/cust_key.h 文件里#define MT65XX_FACTORY_KEY 2这个是定义组合按键的键值的, 改成没有用的按键就ok了, 怎么知道哪...
2019-12-25 17:05:03 64
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人