msm8909 Android6.0杂记

高通MSM8909芯片参考资料免费下载 高通MSM8909芯片参考资料免费下载 MSM8909,高通MSM8909的 原理图及PCB,PCBlayout指南,绝对的干货,不是干货都不分享给你们,资料比较难找,自行下载吧,都放在闯客网技术论坛,还有一个高通芯片资料交流群:813238832,也可以在群上下载资料,群上的大牛比较多,可以讨论交流问题 资料链接:https://bbs.usoftchina.com/thread-199461-... 阅读详情
AI摘要

本文档详述了基于高通MSM8909平台定制Android 6.0系统的步骤,涵盖硬件配置、软件定制等内容,包括新板添加、DDR配置、EMMC与SD卡配置、GPIO/I2C/SPI/SDIO/UART配置等。

高通msm8909 Android6.0 笔记(未完)

一 : 添加新板
二 :DDR配置
三 : EMMC && SD card 配置
四: GPIO/I2C/SPI/SDIO/UART 配置
五 : Lights :背光、摄像机灯光配置
六 : 触摸屏配置
七 : 虚拟按键配置
八 : Connectivity : Bluetooth、Wi-Fi、GNSS配置
九: 传感器(sensor) : 重力传感器、环境光/接近传感器
十: LCD配置
十一: Audio音频配置
十二: Camera配置
十三: Power电源管理配置
十四: Logo 添加
十五: 开机动画(boot animation)
十六: OTA

一添加新板(Add new board)

1: Android 编译自定义(compile customization)

1.1:Android config(1):

在 /android/device/qcom 下创建 msm8909_xxx文件夹,然后拷贝其他文件的配置文件到msm8909_xxx 修改配置

1.2:Android config(2) :配置 msm8909_xxx中的配置文件

    必须配置的(necessary) : AndroidBoard.mk  :  #board makefile
                AndroidProducts.mk : #product makefile
                BoardConfig.mk   :  #board config
                msm8909_xxx.mk    : #target config
    可选择的(optional) :   init.target.rc  : #init resource config
                system.prop    :  #system properties
                recovery.fstab  : #recovery fs table
                fstab.qcom    :  #normal fs table

1.3:Android config(3) :

/device/qcom/common/vendorsetup.sh
add_lunch_combo msm8909_xxx-userdebug

/vendor/qcom/proprietary/common/config/device-vendor.mk
add into project list: PRODUCT_LIST += msm8909_xxx

/device/qcom/msm8909_xxx/msm8909_xxx.mk :asign product name && device:
$(call inherit-product, device/qcom/msm8909/msm8909.mk)
PRODUCT_NAME := msm8909_xxx
PRODUCT_DEVICE := msm8909_xxx

1.4:Android config(4) :

/device/qcom/msm8909_xxx/AndroidBoard.mk : asign kernel default config :
KERNEL_DEFCONGIF := msm8909-xxx_defconfig
/devcie/qcom/msm8909_xxx/AndroidProducts.mk : add product features
RODUCT_MAKEFILES : = \
$(LOCAL_DIR)/msm8909_xxx.mk
/device/qcom/msm8909_xxx/BoardConfig.mk : add board config:
include device/qcom.msm8909/BoardConfig.mk

1.5:Android config(5) : Add board to ./build_8909.sh

android()
{
cd ${TOP_DIR}/LINUX/android
source build/envsetup.sh 
lunch 27     //新板编码号 lunch
mkdir -p ${OUT}/download_images
mkdir -p ${OUT}/collect_elfs
m -j8 2>&1 | tee build_android.log
cd ${TOP_DIR}
}

2: Kernel 配置自定义: 自定义默认配置 :

 in kernel/arch/arm/configs 拷贝其他工程的配置文件并且重命名,此配置文件被用于 AndroidBoard.mk

3:SBL dts 自定义配置:

3.1: 选择那一种DTS ?MTP ? QRD

选择DTS基于硬件设计,包括高通公司默认的 MTP或者QRD设计;

3.2: 应该怎么在代码中选择具体的DTS :

修改 platform_id 在 boot_images/core/boot/secboot3/hw/msm8909/boot_cdt_array.c去匹配新的 platform id 在dts中

3.3: SBL中的平台ID对内核上的DTS有什么影响?

 SBL获取平台ID 和 平台子类型
 SBL写入共享内存
 LK(即为bootloader(littlekernel))获取信息并且找到合适的DTS条目

    boot_images/core/boot/secboot3/hw/msm8909/boot_cdt_array.c:
    0x03,0x0B,0x01,0x00,0x00,0x00
    对于SBL:Byte0 : 0x03    platform_id version
         Byte1 : 0x0B     platform_id type  
                  0x08 : target is a MTP device
                  0x0B : target is a QRD device
         Byte2 : platform_id major platfoem version
         Byte3 : platform_id minor platform version
         Byte4 : paltform_id subtype

    对于DTS :
        qcom,board-id = <platform_id,subtype_id>
                    对于MTP型dts : 
                compatible = "qcom,msm8909-mtp"
                    qcom,board-id = <8 0x100>;// 8 :Byte1 0x08   0x00:Byte4 0x00 
        对于QRD型dts :
                qcom,board-id = <0x1000b 0x100>; //Byte1 0x0B   0x00:Byte4 0x00 

4:启动流:

PBL : 固话在CPU内部,是芯片上电后执行的真正的第一行代码,在正常的启动流成中会加载 SBL1
SBL1: 位于eMMC中,由PLB加载,初始化buses,DDR,clocks,加载QSEE,RPM,APPSBL等
QSEE:创建安全环境
APPSBL:即为bootloader 目前使用LK(little kernel) 初始化设备,设置启动模式,加载kernel
Kernel: 设备以及内核初始化,加载Modem,加载WCN,内核态init进程
Android: 用户态init进程,Zygote启动,Android,Framewoek初始化

二:DDR配置 :

DDR配置文件:boot_images/core/boot/secboot3/scripts/
    jedec_lpddr2_single_channel.xml
    jedec_lpddr3_single_channel.xml
DDR配置参数:
    例如 DDR type、Mode、tRFC、tXSR, check DDR vendor specification:
    <props name="ddr_type" ...> 5 </props>
    <props name="interleaved" ...> 0 </props>
    <props name=“tRFC” ...> 2100 </props>
    <props name="tXSR" ...> 2200 </props>
    CDC(Calibrated Delay Circuit)部分参数请参考文档:ddr_workflow_and_debugging_guide.pdf
DDR参数生成流:
    在配置文件目录下执行
    python cdt_generator.py jedec_lpddr3_single_channel.xml platform_ddr.bin
    生成 platform_ddr.bin boot_cdt_array.c 替换目标文件
    boot_images/core/boot/secboot3/hw/msm8909/boot_cdt_array.c

三:EMMC and SD Card 配置:

EMMC and SD Card 配置: 功能描述、EMMC分区配置、外部SD卡配置、驱动探测函数说明EMMC分区配置 :

2个引导分区(boot area partitions):两个区域在存储的稳定性、可靠性及擦除次数上都远比UDA要好,所以很多chipset上都会使用这两个区域来存放一下关键数据,如boot image,default 配置参数等等,MTK使用UDA来存放boot data,而使用boot area来存放配置参数;Qualcomm则使用Boot 1 来存放boot data,boot 2 来存放配置参数1个RPMB(Replay Protected Memory Block):用于给系统存放一些特殊的需要进行访问授权的数据1个UDA(User Data Area) 用户数据空间:是AP及用户可以进行读写存储的区域,通常其大小为整块EMMC表示大小的93%左右,即4GB的eMMC UDA的区域只有4GB*93%=3809MB

之前说的BOOT1&2、RPMB和UDA区域我们都可以认为他们在物理上是独立的(当然都是存在于同一块die上)。即他们各自的物理起始地址都是0x0

……略

四:GPIO/I2C/SPI/SDIO/UART 配置

……略

五:Lights

5.1 : LED Architecture 见 LED_Architecture 图片

5.2 : 代码结构

    HAL : /hardware/qcom/display/liblight/lights.c
    Kernel : /kernel/drivers/leds/leds-class.c
          /kernel/drivers/leds/led-core.c
          /kernel/drivers/leds/led-triggers.c
    Custom driver file(自定义驱动文件)
        lcd backlight driver:
          /kernel/drivers/pwm/pwm-qpnp.c
          /kernel/drivers/video/msm/mdss/mdss_fb.c
          /kernel/drivers/video/msm/mdss/mdss_fb_panel.c
          /kernel/bootloader/lk/target/msm8909/target_display.c
        camera led flash driver
          /kernel/drivers/leds/leds-msm-gpio-flash.c
          /kernel/drivers/media/platform/msm/camera_v2/sensor/flash/msm_led_trigger.c
          /kernel/drivers/media/platform/msm/camera_v2/sensor/flash/msm_led_flash.c
          /kernel/drivers/media/platform/msm/camera_v2/sensor/flash/msm_led_torch.c

5.3 : 背光: PWM mode、DCS mode、WLED mode

    PWM mode : PMIC输出PWM控制背光芯片
    DCS mode : 通过MIPI配置LCMIC寄存器输出PWM控制背光芯片
    WLED mode: GPIO、I2C等控制背光芯片

5.4 : 修改 bootloader(LK(litte kernel))部分修改:增加LCM供应商提供的(lcd显示驱动接口)文件时,要增加相应的背光配置:

    确认背光模式:本项目是 WLED模式
     /bootable/bootloader/lk/dev/gcdb/display/include/panel_otm1285a_auo_hd_video.h
        static struct backlight otm1285a_auo_hd_video_backlight = {
        1,1,255,100,0,0,  //第一个位 0:PWM mode; 1:WLED mode; 2:DCS mode
        };  

    确认引脚:/bootable/bootloader/lk/target/msm8909/include/target/display.h
        static struct gpio_pin bkl_gpio

    确认占空比 频率:
        PWM mode : /bootable/bootloader/lk/target/msm8909/target_display.c
            #define PWM_DUTY_US 13   //占空比
            #define PWM_PERIOD_US 27  //频率?

        WLED mode :lk/platform/msm_shared/mipi_dsi.c
            static char lcm_pwm_cmd1[] = {
                0x02, 0x00, 0x29, 0xC0,
                0x51, 0x7F, 0xFF, 0xFF,
            };

    在背光入口函数: 修改增加背光芯片驱动控制, 例如GPIO控制
        /bootable/bootloader/lk/target/msm8909/target_display.c
        bkl_gpio.pin_id = 36; //背光控制引脚设定

5.5:kernel部分:增加LCM供应商提供的文件时,需要增加背光配置,参考硬件原理图和背光驱动芯片的PWM工作频率范围,在设备树中添加属性,比如frequecny,bank,gpio等等

    /kernel/arch/arm/boot/dtsi/qom/msm8909-mtp.dtsi
    //改成 pwm 或者 wled 或者 dcs 模式
    &spi_gc9305_qvga_cmd {
        qcom,mdss-spi-bl-pmic-control-type = "bl_ctrl_wled";//WLED mode
        qcom,mdss-spi-bl-pmic-bank-select = <0>; //PWM BANK : 0
        qcom,mdss-dsi-bl-pmic-pwm-frequency = <100>;
        qcom,mdss-dsi-pwm-gpio = <&pm8909_mpps 2 0>;
        qcom,cont-splash-enabled;
        };

    PWM MODEL:
        驱动文件修改: MPP 2 配置为PWM 输出
        /kernel/arch/arm/boot/dtsi/qom/msm8909-pm8909-mtp.dtsi

        mpp@a100 { /* MPP 2 */
        /* Backlight PWM */
            qcom,mode = <1>;        /* Digital output */
            qcom,invert = <0>;      /* Disable invert */
            qcom,src-sel = <4>;     /* DTEST1 */
            qcom,vin-sel = <0>;     /* VPH_PWR */
            qcom,master-en = <1>;       /* Enable MPP */
        };

    驱动文件修改: 配置PWM基础属性:
        /kernel/arch/arm/boot/dtsi/msm-pm8909.dts
            pm8909_pwm: pwm@bc00 {
        compatible = "qcom,qpnp-pwm";//pwm 寄存器地址 偏移量
        reg = <0xbc00 0x100>; //
        reg-names = "qpnp-lpg-channel-base";
        qcom,channel-id = <0>; //pwm通道ID
        qcom,supported-sizes = <6>, <9>;//PWM 占空比
        #pwm-cells = <2>;
        };

    WLED MODE:
        修改DTS文件 : /kernel/arch/arm/boot/dtsi/qom/msm8909-mtp.dtsi
        backlight_1wire:bklt-1wire {
            compatible = "qcom,leds-gpio-bklt";
            status = "disabled";
            qcom,bklt-1wire = <&msm_gpio 15 0>;//36?
            linux,name = "bklt-1wire";
            linux,default-trigger = "bkl-trigger";
        };
    在目录 /kernel/drivers/leds 新增 leds-msm-bklt-wd3138.c
    修改编译配置 /kernel/drivers/leds/Makefile  :  obj-$(CONFIG_LEDS_MSM_GPIO_FLASH) += leds-msm-bklt-wd3138.o
    修改编译配置 /kernel/drivers/leds/Kconfig
    /kernel/arch/arm/config/msm8909-1gb_defconfig  : CONFIG_LEDS_WD3138 = y

六:触摸屏配置

6.1 :编译配置

TP驱动文件
    .c路径 : kernel\drivers\input\touchscreen
    .h路径 : 在.c文件中使用include声明,如果和c文件不处于同一个文件,则对应修改 

kernel\drivers\input\touchscreen\focaltech_touch\focaltech_core.c
kernel\arch\arm\boot\dts\qcom\msm8909-mtp.dtsi



                    挂载  &i2c_1 { /* BLSP1 QUP1 */
                            focaltech@38{                         // i2c设备7位地址
                                compatible = "focaltech,fts"; //匹配驱动文件 compatible
                                reg = <0x38>;                 // i2c设备7位地址
                                interrupt-parent = <&msm_gpio>; //中断属性配置
                                interrupts = <13 0x2>;       //中断属性配置
                                vdd-supply = <&pm8909_l17>;  //电源口配置
                                vcc_i2c-supply = <&pm8909_l6>;  //电源口配置
                                pinctrl-names = "pmx_ts_active","pmx_ts_suspend","pmx_ts_release";
                                pinctrl-0 = <&ts_int_active &ts_reset_active>;
                                pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>;
                                pinctrl-2 = <&ts_release>;
                                reset-gpios = <&msm_gpio 12 0x0>;
                                interrupt-gpios = <&msm_gpio 13 0x2008>;
                                focaltech,panel-coords = <0 0 240 320>;  //驱动文件获取的各项参数
                                focaltech,display-coords = <0 0 240 320>;
                                focaltech,button-map= <139 102 158>;
                                focaltech,no-force-update;
                                focaltech,i2c-pull-up;
                            };
                    };
    编译控制
        kernel\arch\arm\configs\* :CONFIG_TOUCHSCREEN_XXX = y      CONFIG_TOUCHSCREEN_FTS=y
            Kconfig  : kernel\drivers\input\touchscreen\Kconfig
        Makefile : kernel\drivers\input\touchscreen\Makefile

6.2 配置设备树

        配置文件: kernel\arch\arm\boot\dts\qcom\xxx.dtsi  根据编译配置寻找对应的i2c设备挂载文件
        世纪天元手机6.0 kernel\arch\arm\boot\dts\qcom\msm8909-mtp.dtsi
        世纪天元手机5.1 kernel\arch\arm\boot\dts\qcom\msm8909-E8909-mtp.dtsi

6.3 驱动文件

6.3.1 : 驱动文件挂载配置 :驱动文件和设备树匹配,需要在C文件中添加语句

        世纪天元手机6.0  kernel\drivers\input\touchscreen\focaltech_touch\focaltech_core.c
        世纪天元手机5.1  kernel\drivers\input\touchscreen\focaltech_touch\focaltech_core.c

6.4 检验:

查看dts设备是否初始化成功: adb shell cd /sys/bus/i2c/devices 1-0038
查看dts驱动是否初始化成功: adb shell cd /sys/bus/i2c/drivers /ls 1-0038

七 虚拟按键配置

…略

十二 LCD配置

12.1:LK部分配置

12.1.1: 增加屏的初始化文件

增加屏的初始化文件(供应商提供参数,自己按照平台格式添加初始化命令),以ST0281为例 :/bootable/bootloader/lk/dev/gcdb/display/include/panel_gc9305_qvga_spi_cmd.h

12.1.2:修改设置 LCD 屏引脚参数

/bootable/bootloader/lk/target/msm8909/include/target/display.h : 修改设置 LCD 屏引脚参数

12.1.3: 增加本项目LCD屏选项 : /boottable/bootloader/lk/target/msm8909/oem_panel.c

/boottable/bootloader/lk/target/msm8909/oem_panel.c  
        增加头文件 : #include "include/panel_gc9305_qvga_spi_cmd.h"  

    在选择屏幕列表中添加 本项目LCD屏
    enum {
    HX8394D_480P_VIDEO_PANEL,
    ...
    GC9305_QVGA_SPI_CMD_PANEL,
    };


    在panel list中添加 panel_name 和 panel_id
    static struct panel_list supp_panels[] = {
    ...
    {"gc9305_qvga_cmd", GC9305_QVGA_SPI_CMD_PANEL},     
    };

    在 init_panel_data函数中添加 本项目LCD屏幕结构体初始化:                          
    case GC9305_QVGA_SPI_CMD_PANEL:
    panelstruct->paneldata    = &gc9305_qvga_cmd_panel_data;
    panelstruct->panelres     = &gc9305_qvga_cmd_panel_res;
    panelstruct->color        = &gc9305_qvga_cmd_color;
    panelstruct->panelresetseq= &gc9305_qvga_cmd_reset_seq;
    panelstruct->backlightinfo = &gc9305_qvga_cmd_backlight;
    pinfo->spi.panel_cmds   = gc9305_qvga_cmd_on_command;
    pinfo->spi.num_of_panel_cmds= GC9305_QVGA_CMD_ON_COMMAND;
    pan_type = PANEL_TYPE_SPI;
    break;

    选择本项目LCD:
    屏幕的自适应方式配置 oem_panel_select() :
    if((280000 <= lcd_id)&&(lcd_id < 480000))  /* 0.38 */
        panel_id = OTM1285A_AUO_HD_VIDEO_PANEL;
    else
        panel_id = ILI9881C_YUSUN_HD_VIDEO_PANEL;
        panel_id = GC9305_QVGA_SPI_CMD_PANEL;  //根据lcd_ID值范围实现自适应

12.4:Kernel部分配置:

添加屏幕驱动文件: /kernel/arch/arm/boot/dts/qcom/..添加 spi-panel-gc9305-qvga-cmd.dtsi
增加对屏幕的支持: /kernel/arch/arm/boot/dts/qcom/msm8909-mtp.dtsi 文件中增加对屏幕的支持 
        增加头文件  #include "spi-panel-gc9305-qvga-cmd.dtsi"
        设置背光控制模式 :
                    &spi_gc9305_qvga_cmd {
                    qcom,mdss-spi-bl-pmic-control-type = "bl_ctrl_wled";
                    qcom,mdss-spi-bl-pmic-bank-select = <0>;
                    qcom,cont-splash-enabled;
                };

……………………………………………………………………..剩余部分慢慢补充…………………………………………………………………………….

 

Android 7.0 OTA升级(高通) 文档中主要描述 Full OTA 升级和 Incremental OTA 两种升级方式。 阅读详情

相关推荐

高通MSM8909:LCD hx8394d驱动调试

高通平台 MSM8909 LCD驱动 hx8394d panel MIPI

不秃头的程序猿Gabriel的博客 2400

MSM8909处理器、原理图

MSM8909是高通公司骁龙210系列(低端入门手机,299/399的4G手机可能都是骁龙210的天下),2015年第二季度发布,28nm,四核ARM Cortex A7 CPU,最高主频1.1GHz,GPU为 Adreno 304,只是305的低频版,400MHz,带宽19.2GB/s,21.6Gflops。 相关资料和原理图查看,可到http://bbs.16rd.com/topic-MSM

szx940213的博客 1万+

高通 msm8909平台 Android5.1.1 代码-附件资源

高通 msm8909平台 Android5.1.1 代码-附件资源

[高通MSM8909][Android8.1]默认启用第三方输入法

Android原生系统默认的输入法只支持英语输入,而经常有客户要求内置其他语言的输入法,比如中文拼音、韩语、法语等等。为了维护固件的统一性,第三方输入法我一般不会编译到内核中,都是后续通过oem镜像或者静默安装内置的;将输入法安装进系统发现第三方输入法不会默认启用,需要到系统设置的输入法中进行启用。

小小码农 1492

Python在Windows环境下驱动乐视三合一摄像头的深度图像处理实践

本文详细介绍了在Windows系统下,使用Python驱动乐视三合一摄像头进行深度图像处理的完整实践流程。从环境配置、驱动安装、OpenNI与OpenCV库的部署,到深度与彩色数据流的读取、可视化、三维点云转换以及背景移除等应用开发,为开发者提供了从零开始掌握深度摄像头编程的实战指南。

gitlab7runner的博客 232

YOLOv8改进002:添加小目标检测头(小目标检测大量涨点)

YOLOv8 目标检测算法改进之添加小目标检测头,亲测在小目标检测的数据集上有大幅度的涨点效果(mAP直接涨了 0.04 左右)。

m0_46496775的博客 9877

高通210系列-MSM8909 核心板(ARM Cortex-A7架构)

核心板特性 A7架构 4核(4*1.1GHz(A7)) 产品尺寸小,便于客户集成,减少产品体积; 支持4G LTE超高速上网,单板兼容移动/联通/电信2G/3G/4G; 支持2...

counai4985的博客 1709

银河麒麟v10-arm SEALOS离线部署k8s集群(v1.22.8)

示例 如果你想保存一个名为 "my_snapshot" 的 etcd 快照到指定的对象路径你可以使用以下命令: sealos etcd save --backupPath /root --name my_snapshot 如果文件名带时间戳:my_snapshot$(date +"%Y%m%d_%H%M%S") 会生成一个形如 20230913_143045 的时间戳。--restorePath string:指定快照恢复目录(默认为 "/opt/sealos/etcd-restore")。

xjudt的博客 3288

记一个老年机的逆向工程与主线linux移植 (一)—— 信息收集与Bootloader移植

震惊!一男子竟然让主线linux跑在了老年机上,真相竟然是?!

HandsomeHacker的博客 6295

具有I2S输出的多模数字麦克风ICS-43434咪头LR引脚接地或电源WS接LRCLK

ICS-43434 是一款数字 IS 输出底部收音孔麦克风。完整的 ICS-43434 解决方案包括 MEMS 传感器、信号调理、模数转换器、抽取和抗混叠滤波器、电源管理以及行业标准的 24 位 12S 接口。12S 接口允许 ICS-43434 直接连接到数字处理器,例如 DSP 和微控制器,而无需系统中的音频编解码器。

易板 5662

VIO实战前传:手把手教你解读Kalibr双目IMU标定报告与参数应用

本文详细解析Kalibr双目IMU联合标定报告的核心参数与应用方法,涵盖重投影误差分析、IMU误差指标解读、关键变换矩阵原理及VINS-Fusion实战配置。通过手把手教学帮助开发者准确理解标定结果,解决VIO算法落地中的参数配置难题,提升视觉惯性里程计的系统稳定性与精度。

weixin_42699679的博客 331

【高通6模全网通智能模块】MSM8909 ,可支持二次开发

DM8909 是一款基于高通平台、工业级高性能、可运行安卓操作系统的4G智能模块。 四核ARM Cortex-A7处理器架构,最高主频达1.1GHZ;支持533MHz LPDDR3,32-bit位宽。 支持GSM/CDMA/EVDO/WCDMA/TD-SCDMA/LTE-FDD/LTE-TDD等多种制式;支持WiFi 802.11b/g/n, BT4.0LE近距离无线通信,支持GPS/GLONASS/北斗多种制式卫星定位;内部集成高达400MHZ AdrenoTM 304 3D图形处理器,支持多种音频和视频

qq_39954559的博客 3599

大学物理第二章 质点动力学详解

大学物理第二章 质点动力学概念详解

weixin_63026364的博客 1万+

[高通MSM8909][Android8.1]刷机或者恢复出厂设置后无法进行网络同步时间

Android原生有设置一个NTP服务器,用于网络同步时间,但是,因为Android是谷歌的,所以设置的NTP服务器也是国外的服务器,所以,国内可能会出现无法访问NTP服务器,导致设备在刷机或者恢复出厂设置之后,即使连上网络也无法自动同步时间的问题;这时候,可以选择更换原生的NTP服务器地址。以前修改xml里面的NTP服务器就能生效了,但是,最近可能更换NTP服务器不太稳定,公司不少设备出现了无法进行网络同步时间的问题,于是就在NTP强制刷新的方法里面加多几个NTP服务器,问题就解决了。

小小码农 2823

复现《水化硅铝酸钙微结构和性能的分子动力学模拟研究》的分子动力学模拟

本文详细复现了杨军博士论文中关于水化硅铝酸钙(C-A-S-H)凝胶的分子动力学模拟方法。研究内容包括:1)基于11Å Tobermorite构建C-A-S-H分子模型,通过缺陷引入和Al掺杂调节Ca/Si比;2)使用ReaxFF力场模拟交联C-A-S-H的结构与力学性能;3)采用ClayFF力场研究纳米孔道中水和离子传输行为。研究提供了完整的LAMMPS输入脚本、Python分析代码和力场参数设置,为水泥基材料纳米尺度模拟提供可复现的技术方案。

huanghm88的专栏 105

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

高通MSM8909芯片数据参考,高通MSM8909设计原理图

高通MSM8909芯片数据参考,高通MSM8909设计原理图 高通MSM8909的处理器、原理图和参数介绍等资料都整理好了,可以到闯客网技术论坛下载,小伙伴不用再去其他地方找了,都很齐全的资料,加群获取资料和技术交流:813238832 资料链接:https://bbs.usoftchina.com/thread-199461-1-1.html 概述 该文档结合了MSM8909芯片组的所有布局指南...

h_5649512的博客 1万+

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

msm8909的摄像头调试记录

安卓 摄像头

weixin_42817573的博客 1244

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

高通MSM8909 CAMERA TUNING 基础

一. 重要概念: 1.色温 所谓色温,简而言之,就是定量地以开尔文温度(K)来表示色彩。英国著名物理学家开尔文认为,假定某一黑体物质,能够将落在其上的所有热量吸收,而没有损失,同时又能够将热量生成的能量全部以“光”的形式释放出来的话,它便会因受到热力的高低而变成不同的颜色,如下图: ...

测试0901-1 1880

[高通MSM8909][Android8.1]虚拟导航栏增加音量加减按钮

文章目录开发平台基本信息问题描述解决方法1. 增加按钮图片资源2.修改配置文件3. 修改配置逻辑4. 延伸说明 开发平台基本信息 芯片: MSM8909 版本: Android 8.1 kernel: msm-3.18 问题描述 没有实体按键的机器,没办法快速调节音量大小,所以,需要在虚拟导航栏的左右两侧各添加一个按钮,一个控制音量增加,一个控制音量减少。 解决方法 效果图如下: 1. 增加按钮图片资源 diff --git a/frameworks/base/packages/SystemUI/res/

小小码农 3575

高通android刷机工具,高通android7.0刷机工具使用介绍

刷机工具安装1. 安装QPST.WIN.2.7 Installer-00448.32. 安装python2.7,并配置其环境变量 刷机方法1.将编译后的刷机文件拷贝到如下目录:SC20_CE_prebuilt_for_QFIL_Android7.1\LINUX\android\out\target\product\msm8909注意保留原来文件夹里的splash.img文件2.运行SC20_CE...

weixin_35133182的博客 1567

msm8909_wk2124_SPI转485

说明:本文档会将为开提供的官方文档的信息摘录过来,并在其基础上对驱动文件进行详细说明!WK2124芯片能够实现将1路SPI转换成4路串口,WK 系列扩展的子通道的 UART 具备如下功能特点:每个子通道 UART 的波特率、字长、校验格式可以独立设置,最高可以提供2Mbps 的通信速率。每个子通道具备收/发独立的 256 级 FIFO,FIFO 的中断可按用户需求进行编程触发点且具备超时中断功能。

klelee的博客 1390

MSM8909 Android7驱动Camera OV5648流程

1、前言 本文将基于Quectel的SC20模块进行OV5648 Camera的点亮,并对其过程进行一个简要介绍,SC20模块是一款基于MSM8909的智能模块,视频输入接口基于MIPI_CSI标准,可以支持两个摄像头,后置摄像头接口最高支持8MP像素的Camera,前置摄像头接口可支持2MP像素的Camera,OV5648 Camera最高像素分辨率为5MP,因此需要采用SC20的后置摄像头接口进行驱动调试。 2、前期准备 在驱动点亮OV5648 Camera之前需要准备好一些基本东西,如下:

hxm2011的博客 2698

msm8909 串口配置

msm8909 串口配置 msm8909-mtp.dtsi &blsp1_uart1 { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&uart_console_sleep>; }; &blsp1_uart2 { status = "okay"; ...

xuecz1230的博客 1926

MSM8909+Android5.1.1之系统烧录

1.安装高通USB驱动图1安装成功后,同时按下设备的音量+和音量-按键,且用USB连接到设备上,在设“设备管理器--->端口”下面看到USB虚拟的端口,如下:图22.安装高通的下载软件QPST图33.用QPST下载系统打开QPST软件,同时按下设备的音量+和音量-按键,然后接入USB线进入下载模式,QPST软件自动检测到端口,如果没有自动识别,点击S...

weixin_30901729的博客 1836

[高通MSM8909][Android7.1]电信卡信号优化

文章目录开发平台基本信息问题描述解决方法电信卡信号优化 开发平台基本信息 芯片: MSM8909 版本: Android 7.1 kernel: msm-3.18 问题描述 我们有一款设备出口到海外,用的是澳大利亚的芯片模块,在经过测试部测试验证的时候,发现使用电信卡的时候,信号跳动得很频繁,而且经常会跌落至完全没信号;芯片供应商给了信号优化补丁之后,再测试就相对正常很多。 解决方法 电信卡信号优化 --- a/frameworks/base/telephony/java/android/telephon

小小码农 2485
上一篇: msm8909之LCD移植简述
下一篇: msm8909矩阵按键驱动笔记
Ma浩然
博客等级 码龄9年 1万+粉丝 462原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ma浩然

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值