嵌入式
chiooo
这个作者很懒,什么都没留下…
展开
-
dsi_set_cmdq 用法
编辑框1有如下内容 B9 FF 83 79 B1 44 18 18 31 51 90 D0 EE 通过按钮转换为如下格式,输出到编辑框2里 a[0] = 00043902; //这个参数里面的4为第一行内容的个数 a[1] = 7983FFB9; //第一行内容,倒序输出 dsi_set_cmdq(&a, 2, 1); //括号里的数字2是a[]的个数 a[0] = 00093902;转载 2016-07-13 11:38:52 · 4636 阅读 · 1 评论 -
最开初c标准规定sizeof只能编译时求值,后来c99又补充规定sizeof可以运行时求值
转自: http://www.cnblogs.com/bigbigtree/p/3580585.htmlC\C++ sizeof 陷阱&&总结今天使用动态数组,本来想通过sizeof 获取动态数据,结果出现了错误。先对自己做个测试,能做出下面这个题目,并做出合理解释,可以不用往下看了。double* (*a)[3][6];coutsiz转载 2015-09-29 14:51:12 · 1004 阅读 · 0 评论 -
MTK KERNEL根据项目来定义宏区分CODE
ifneq ($(CONFIG_ARCH_MTK_PROJECT),)ARCH_MTK_PROJECT_XXX := $(subst ",,$(CONFIG_ARCH_MTK_PROJECT))ifeq ($(ARCH_MTK_PROJECT_XXX),S5)KBUILD_CFLAGS += -DLCM_S5_XXX#ccflags-y += -DLCM_XXX 这种修改方法不行,具体没有原创 2015-09-10 18:26:00 · 1017 阅读 · 0 评论 -
EMC单片机宏定义学习手记
// 作者: Etual // 联系: E-mail:Etual@163.com QQ:506042111 // 版本: V1.1// 日期: 2007-11-10// 这篇拙作发表在 21ic 有幸得到斑竹的赏析加入了精华,实在感到荣幸。 // http://bbs.21i转载 2015-07-24 14:33:37 · 879 阅读 · 0 评论 -
自己用的EMC汇编编程风格
想确立一下编程序的风格,这样有个规范,做起来比较方便和快捷。1) 每一个程序块都有一个统一的入口和一个统一定出口,这样做到好处是程序成一个块状结构,整个程序块可以整个的删除或者移动,而不会影响上下关联程序之间,这样做有点像C语言的结构化程序和C++的类,打个比方而已,其实没有可比性。坏处,暂时个人的理解来说,除了增加几行废代码之外,没有其他,不过如果程序比较长,大量用这类出口结尾的语句的话,显转载 2015-07-24 14:12:01 · 771 阅读 · 0 评论 -
背光配置文件
frameworks/base/core/res/res/values/config.xml原创 2015-08-28 16:23:28 · 3896 阅读 · 0 评论 -
pscp FTP拷贝命令
pscp -l name -pw passwd name@192.168.1.xx:/home/name /…/out/target/product/L5/*.txt .\原创 2015-06-08 19:13:51 · 783 阅读 · 0 评论 -
发现的jlink RTT 的一个优点
在用SWO的时候发现要抓取上电瞬间的LOG,如果涉及到和其他控制器交互,则SWO很不方便,无法抓取到上电瞬间的LOG。采用RTT就没有这种问题,LOG保存到BUFFER里,你RTT CLIENT连接上的时候就会从BUFFER里读取打印出来。只要你BUFFER没满,LOG就可以一直保存。原创 2015-06-24 15:17:06 · 2934 阅读 · 0 评论 -
AUDIO驱动点检表
AUDIO驱动点检表备注:以下都以MT6753,ANDROID 5.1版本为基础。1.驱动配置部分1.1 耳机部分配置文件: accdet_custom_def.h耳机MIC模式配置:默认 :#define ACCDET_MIC_MODE (6)更改为:#define ACCDET_MIC_MODE (1) 模式1,这个是由硬件电路决定的原创 2015-05-21 11:26:20 · 2459 阅读 · 0 评论 -
智能功放 ACS 保护
之前微跌会出现智能功放 ACS 保护触发, 三份LOG都是如此, 按照正常的代码流程, 在打开SPEAKER时如果检测到 ACS 保护, 会去重新冷启动智能功放(重新初始化),从LOG中看,代码流程进去了,但是FAE给的代码有问题,有个判断条件写反了,导致进去后并没有做重新初始化的动作。 软件改善措施:判断条件改正即可。原创 2015-09-17 14:49:16 · 646 阅读 · 0 评论 -
EMC
您查询的关键词是:义隆延时 以下是该网页在北京时间 2015年09月10日 07:42:35 的快照;如果打开速度慢,可以尝试快速版;如果想保存快照,可以添加到搜藏;如果想更新或删除快照,可以投诉快照。百度和网页 http://www.tuicool.com/articles/FvqYFz 的作者无关,不对其内容负责。百度快照谨为网络故障时之索引,不代表被搜索网站的即时页面。转载 2015-09-23 15:35:55 · 1376 阅读 · 0 评论 -
ATPCS, AAPCS
转自百度百科:http://baike.baidu.com/link?url=8pnn2Uo93z7NOtmHbxtLLnbZAVbKMm5IRH1tfndIGcpY5PyhuqXseDeQLyW73FNm2WLJMbtMvHIroVkIJVlHAKATPCS即ARM-THUMB procedure call standard(ARM-Thumb过程调用标准)的简称。转载 2015-12-29 14:16:52 · 1265 阅读 · 0 评论 -
让数码管比段生成器去见鬼吧
转自: http://www.amobbs.com/thread-5496865-1-1.html 经常看到一些工程师或网友在编写数码管程序时,花费很多时间在制作那个数字的对照表,甚至 有什么数码管笔段生成器的软件出现,其实数码管定义很简单,只要知道那个7段的定义,不需要 半秒钟,笔段对照比较就知道生产,也不需要什么数码管比段生成器方法如下: /* af| g |b e|转载 2016-05-18 17:42:43 · 2146 阅读 · 2 评论 -
MTK 开启DISP LOG
需要执行如下命令: adb shell “echo dbg_log:1 > /d/dispsys”原创 2016-03-25 15:10:03 · 687 阅读 · 0 评论 -
FTC334K 触摸开关
http://wenku.baidu.com/link?url=ZwMDpDmqBaUtlN7BwZKVLu-UtoLQT2gn9NDGZYyx_PCgOm_QvnW6FIywWEgSPl7v0JfzqRvlrWX50nHFStjI31jx6HcIb4k_t5C-PCYKm7e原创 2016-03-16 14:37:20 · 1861 阅读 · 0 评论 -
杂谈PID控制算法——第一篇:三个量
转自: http://www.cnblogs.com/cj695/p/3274798.html杂谈PID控制算法——第一篇:三个量电赛训练了大半个暑假,人渐渐开始进入到了疲倦期。既然这样那就好好休息下自己也好吧。休息也不能光休息,乘机把平常写过的一些东西好好整理也好。从第一次训练开始我们就接触到了一个新的名词——PID控制理论。接触这个理论时间还是挺早的。大二某天晚转载 2015-12-08 17:40:12 · 2232 阅读 · 0 评论 -
Q定标问题
http://wenku.baidu.com/link?url=ra0YZW4kj3cMV1omjviudYl4wvLod18YX0tEOENa_89QkDReokoTcaIi84sqt0KohrPP6ikJnlYQDj5mUNzSo8Q8XTKFvfJbmJ1PprukROi#转载 2015-12-23 15:43:17 · 1292 阅读 · 0 评论 -
sqrt原型
#include double sqrt(double x);float sqrtf(float x);long double sqrtl(long double x);原创 2016-01-06 14:12:13 · 1622 阅读 · 0 评论 -
[转] 定位Oops的具体代码行
[转] 定位Oops的具体代码行来自Linus Torvalds的讨论: [url]https://groups.google.com/group/linux.kernel/browse_thread/thread/b70bffe9015a8c41/ed9c0a0cfcd31111[/url] 又,[url]http://kerneltrap.org/Linux/Further_Oop转载 2015-12-21 11:30:22 · 694 阅读 · 0 评论 -
在FLASH中固定位置存入数据
方法二:先在程序中定义一个const 类型的常量数组,并指定其存储位置(方便找到写入、读取位置),这样编译器就会分配你指定的空间将常量数组存入FLASH中。当你做擦除。读写操作时,只要在这个常量数组所在的地址范围就好。 const uint8_t table[10] __at(0x08010000) = {0x55} ; MDK3.03A开始就支持关键字 __at() 。 需转载 2015-12-30 15:15:40 · 6038 阅读 · 1 评论 -
基于Matlab中FDATool工具箱的滤波器设计及相关文件的生成
基于Matlab中FDATool工具箱的滤波器设计及相关文件的生成一、摘要 除了采用编程的方法实现滤波器之外,Matlab中自带工具箱FDATool也能很方便快速的实现滤波器的设计。另外FPGA、DSP等实现数字滤波器算法时,经常要用到滤波器系数,采用FDATool工具箱也能快速的得到滤波器系数。二、实验平台 Matlab7.1三、实现步骤3.1转载 2015-04-10 16:14:01 · 2464 阅读 · 0 评论 -
mtk android 4.4 audio framework 代码分析(未完成)
mtk android 4.4 audio framework 代码分析(未完成)2/28/2015 3:01:24 PM 关于 audio_policy.conf 文件这个文件 mediatek/config/$project 下, 在 audiomtkpolicymanager.cpp 中解析, 解析出如下信息: 1) ATTACHED_OUTPUT_DEVICES_TAG "attache原创 2015-02-28 15:35:12 · 2790 阅读 · 0 评论 -
如何查看和修改分区
如何查看和修改分区配置分区信息: E:\code\doov6592KK\mediatek\build\tools\ptgen\MT6592PRELOADER Raw data 256 EMMC_BOOT_1 N Y AUTO N N BOOTLOADERSMBR Raw data 512 EMMC_USER N Y MBR Y N Y原创 2015-02-28 14:16:09 · 2170 阅读 · 0 评论 -
在编译阶段打印提示信息
在编译阶段打印提示信息假设程序中有如下的语句:int a;#ifdefin _Da=1;#endif假设工程中有很多文件,不清楚_D到底有没有定义,当然也不希望在程序执行的时候,通过看执行结果的方式来查看_D有没有定义。那么,有没有可能在#ifdef和#endif语句间插入特殊的编译指令,在预编译阶段或编译阶段通过打印提示信息来断定_D的定义情况呢?答案是肯定的。 解决方案一:#pragm原创 2015-02-28 14:03:23 · 1233 阅读 · 0 评论 -
android 5.0 ioctl
CONFIG_64BIT 是配置内核是否支持 64位, mtk android 5.0默认是打开64位支持的。需要注意的是打开64位支持后,注意下面这个宏 CONFIG_COMPAT 打开会才能兼容32位 app 的IOCTL, ioctl 映射到 compat_ioctl , 64位的 ioctl 默认映射到 unblock_ioctl原创 2015-01-30 11:36:00 · 1311 阅读 · 0 评论 -
MTK 如何menuconfig
MTK 如何menuconfig保证kernel new 过,将 /out/.config 拷贝到kernel文件夹,TARGET_PRODUCT=projectnamemakeO=outmenuconfig/∗如果出现../mediatek/build/kernel/Makefile找不到的错误,请用TARGETPRODUCT={project name} make O=out menuco原创 2015-02-28 14:04:48 · 826 阅读 · 0 评论 -
指纹识别调试记录
指纹识别调试记录因为按压式指纹识别都没有量产,原厂代码仍在调试阶段,拿到的是不完善版本。配置GPIO. 涉及到6个GPIO: spi_cs , clk,mo ,mi, rst, INT. 飞线浪费了很多时间。还有一个是这个芯片有2个电源,1.8V和3.3V,DATASHEET上原理图上是要接上3.3V的。实际拿到的模组是不能接的,接了无法采集到图像。FAE的说法是模组背面有个电阻,没焊接的话就不用原创 2015-02-28 14:20:08 · 3240 阅读 · 0 评论 -
量测一下手按下TP到INT 信号发生的时间
量测一下手按下TP到INT 信号发生的时间可以量测一下手按下TP到INT 信号发生的时间:一般不超过50ms,第一个中断信号和第二个中断信号一般也不会超过30ms 测量方法:将INT pin飞线引出,接到示波器一个探针,另外一个探针接在TP面板上的铜箔或硬币,手接触铜箔或硬币产生正弦波,INT 出现脉冲,可以看出2波形时间差 这可以断定IC(硬件+固件) 响应的快慢原创 2015-02-28 13:47:26 · 1891 阅读 · 1 评论 -
Linux内核驱动加载顺序
【问题】 背光驱动初始化先于LCD驱动初始化,导致LCD驱动初始化时出现闪屏的现象。 【解决过程】 1 mach-xxx.c中platform devices列表如下 /* platform devices */ static struct platform_device *athena_evt_platform_devices[] __initdata = { //转载 2015-02-10 17:34:47 · 2035 阅读 · 0 评论 -
mediaserver 异常挂掉引起的一个BUG
mediaserver 异常挂掉引起的一个BUG具体问题: 由于CAMERA的问题,导致Mediaservice 挂掉,audioflinger, audiopolicyservice 也一起被杀掉了。KERNEL HIFI并没有关掉。处理方法: AudioService 中有注册audioflinger, audiopolicyservice DIE 掉的回调函数, 具体就是这个priva原创 2015-02-28 13:39:34 · 7428 阅读 · 0 评论 -
查看触摸屏报点率
查看触摸屏报点率getevent -r |grep “eventx”相应代码在 system/core/toolbox/getevent.c usage:static void usage(int argc, char *argv[]){ fprintf(stderr, "Usage: %s [-t] [-n] [-s switchmask] [-S] [-v [mask]]原创 2015-02-28 13:46:12 · 6566 阅读 · 0 评论 -
MTK 单独启用REF MIC
MTK 单独启用REF MICmain + ref: setMIC1Mode(false); setMIC2Mode(false); retval = mixer_ctl_set_enum_by_string(mixer_get_ctl_by_name(mMixer, "Audio_MicSource1_Setting"), "ADC2"); //K2 add ASS原创 2015-02-28 09:55:50 · 2329 阅读 · 0 评论 -
Android uevent
Android uevent一、Android uevent架构 Android很多事件都是通过uevent跟kernel来异步通信的。其中类UEventObserver是核心。 UEventObserver接收kernel的uevent信息的抽象类。 1、server层代码 1)battery server: f转载 2015-04-01 16:22:26 · 556 阅读 · 0 评论 -
耳机插入上层处理流程分析
耳机插入上层处理流程分析备注:本文主要分析 KERNEL以上的部分, KERNEL的处理见另外的文章。1. WiredAccessoryManager其构造函数中, NEW 了一个mObserver = new WiredAccessoryObserver(); 这个类继承自 UEventObserver, 当KERNEL 检测到耳机状态发生变化时,会回调此类的方法: @Override原创 2015-04-01 16:21:32 · 2707 阅读 · 0 评论 -
PF_NETLINK应用实例NETLINK_KOBJECT_UEVENT具体实现--udev实现原理
PF_NETLINK应用实例NETLINK_KOBJECT_UEVENT具体实现--udev实现原理 相对于linux来说,udev还是一个新事物。然而,尽管它03年才出现,尽管它很低调(J),但它无疑已经成为linux下不可或缺的组件了。udev是什么?它是如何实现的?最近研究Linux设备管理时,花了一些时间去研究udev的实现。 udev是什么?u 是指转载 2015-03-24 17:17:22 · 448 阅读 · 0 评论 -
mtk-accdet学习文档
硬件和框图Headset accdet常用宏: 在accdet.c和accdet_custome.h为了实现一些功能有用到很多宏开关,把目前相应的宏开关介绍如下 : 1: ACCDET_EINT 是否启用了外部中断来侦测是否有耳机插入和拔出 2: ACCDET_MULTI_KEY_FEATURE 是否支持使用A/D来侦测key,这里要注意的是即使耳机只有一个key若是在89的平台也需打开原创 2015-02-27 17:26:46 · 5960 阅读 · 0 评论 -
MTK LIGHT 代码分析
MTK LIGHT 代码分析项目上需要做些客制化的东西,需要用到light 一块的东西,好久以前看过,但是没有记录下来,这次重新看看,然后记录下来。lightservice startprivate void startCoreServices() { // Manages LEDs and display backlight. mSystemServiceManager.start原创 2015-03-02 17:47:57 · 2210 阅读 · 0 评论 -
MTK 如何用ADB 修改和显示GPIO状态
MTK 如何用ADB 修改和显示GPIO状态原创 2015-02-28 10:54:52 · 5443 阅读 · 1 评论 -
BLE 学习记录
BLE 学习记录ANROID BLE 开发,基于 bluetoothlegatt 分析mBluetoothAdapter = mBluetoothManager.getAdapter(); 得到 手机上蓝牙主机的适配器 mBluetoothAdapterpublic boolean initialize() { // For API level 18 and above, get a r原创 2015-02-28 14:29:48 · 2696 阅读 · 1 评论 -
MTK USB CAMERA (中芯微Z0301调试)
MTK USB CAMERA (中芯微Z0301调试)驱动的部分:难点在于 mtk 不支持原生的 menuconfig, 需要以下方法来配置: 保证kernel new 过, 将 /out/.config 拷贝到kernel文件夹, TARGET_PRODUCT=projectnamemakeO=outmenuconfig/∗如果出现../mediatek/build/kernel/Mak原创 2015-02-28 13:55:24 · 2718 阅读 · 1 评论