软件开发专用术语


稳压电源 特指我们手机外接的电源,因为手机开发中可能没有电池,或者只是板子无法安装电池的情况下,需要从手机板子上接出正负两个电源线,连接到电源上。新同事需要特别注意,使用前,设置好电源的电压,然后正确连接正负极,让周围的同事检查下再用, 因为手机开机的电压必须是3.4V~4.2V,过大了会烧掉板子。还要注意,在板子连接上电源后,不要直接开关电源开关。那样可能对手机主板有瞬间的冲击,而烧坏板子。

UBuntu一种linux 操作系统的发布版本,目前我们就是在这个系统上进行编译android .

FeaturePhone 普通非智能手机的统称

SmartPhone智能手机,例如我们现在做的android 就属于这类手机。

ARM一种处理器的内核。类似于PC的cpu. ,但是一般不是独立的,而是集成在各大嵌入式处理器芯片中的。

RAM 随机存取存储器的统称,存储单元的内容可按需随意取出或存入,断电时数据丢失。例如,PC的内存条。

ROM只读内存(Read-Only Memory)的简称。写入的内存不可改变。通常我们的代码统称为写入ROM.

SDRAMRAM的一种,同步动态随机存储器,和普通静态ram 的区别主要是需要同步时钟信号的支持 。

DDR RAMRAM的一种,同步动态随机存储器, SDRAM的一种。

NAND flash是一种非易失性的存储器,读写内容需要驱动的支持,不能直接运行代码,类似于我们的PC上的硬盘

NOR flash 是一种非易失性的存储器,应用程序可以直接在NOR Flash内运行.不必再把代码读到系统RAM中

MEMORY以上所有存储器的统称。

MCP复合式内存(combo memory),将二种以上内存芯片通过整合与堆栈设计封装在同一个封装。 我们现在mtk android 用的sdram都是和nandflash 一个芯片内的属于MCP 。

BBbaseband ,基带芯片,相对于外围的芯片来说的

AP应用处理器,上面运行android系统。

BP  基带处理器,上面跑的是手机射频通讯模块的代码

android平台AP/BP在一个芯片内部

PMU 电源管理单元,管理整个系统的供电,既有给内部和外部的恒流恒压源等。

PMIC电源管理,同常电源管理单元是一个独立的单元,但可以集成在主芯片内部,MTK android 平台都是独立的一个芯片。

RF 射频。负责发射和接收基站的信号。

POWER KEY电源键,用来开手机。

PCB 板子上硬件的layout(布局)和走线的图。

SCH原理图。驱动同事需要能看懂。

LCD 液晶显示器是 Liquid Crystal Display 的简称,需要驱动芯片的支持才能工作。

LCMLCD显示模组,是指将液晶显示器件,连接件,控制与驱动等外围电路,PCB电路板,背光源,结构件等装配在一起的组件

CHIP芯片

FPC柔性电路板,例如液晶显示器模组和主板之间的连接线。

DOM我们这里指的是就是手机上的按键金属弹片。

BOM(Bill of Material)物料清单,生产一个手机需要的所有元件。

UART通用异步接收/发送装置,UART是一个并行输入成为串行输出的芯片,我们现在都是集成在芯片内部了,我们一般就简称串口。

SD卡 Secure Digital

Memory Card安全数码卡。存储卡的统称。

T 卡 T

flash卡也叫 micro SD 封装比较小手机上常用。

SIM 卡 (Subscriber Identity

Module 客户识别模块)的缩写。用户身份识别卡。

焊盘主板上就是焊接元件用的暴露出来的金属片

测试点 为了软件硬件调试方便预留的焊盘。例如外部接的串口线。

飞线一般板子上是不允许条线,但是由于硬件第一版设计的错误,或者有新的外围芯片需要调试验证,在新板子回来之前,从板子上按需求通过导线连接的做法叫作飞线调试。

数据线 就是usb 线。

下载线就是串口线,我们所用的串口线一端,会有usb 转串口芯片,所以看上去比较大,但可以直接连在电脑的usb 端口上,作为pc的一个虚拟串口。

串口线 下载线

板子P1/ P2硬件画完原理图,第一次从工厂打样回来的称为P1 板(不带外围设备)

P1 调试完成后,硬件根据软件的反馈,修改相应的错误之后发板子,称为P2,然有时也P1.1,P1.2 ,主要根据硬件的规定命名。

整机: 一般客户负责外壳等的开模,修模,完成之后,和我们的板子组装,寄给我们做测的就是整机。回来后我们一般要做一下整机测试。

DataSheet数据手册,一般每个芯片都会有相关的软件硬件相关的说明文档,

调试驱动的同事可以向芯片厂商索取。

Spec 也就是DataSheet

Log 调试的时候会在代码里面加一些信息从串口或者usb口输出到电脑上就可

以看到这些信息,用来跟踪代码跑到哪里了,哪里出错,值是多少 。

NVRAM非易失随机存储器,其实就是用户对手机的一些设置会保存到这块,还有一些系统的校准参数也放这里。里面对内容也不会丢失。

KERNEL 内核,特指我们所用的linux 内核。

内核版本 指linux 内核的版本,我们现在的是2.6.3.2

Android版本 google发布的Android系统版本,目前是2.2.1,后续MTK会升级到2.3

HAL 硬件适配层,会调用kernel 的驱动接口,并为上层提供接口函数。

JNI java native interface ,一般是用c++ 写的,注册给java层调用的接口函数。

像素 像素是屏幕或图像上所能显示的最小单位,也就是显示的一个点

分辨率: 手机的显示的像素点阵是几行几列的,或者拍的照片的像素点阵是几行几列

常用简称如下 :

QCIF 176*144

        QVGA   240*320

        HVGA   320*480

        QQVGA  128*160

        WQVGA  240*400

        VGA     640*480

        XGA    1024*768

        WVGA    480*800

        SXGA    1280*1024

         UXGA    1600*1200

插值 : 我们这里指拍摄的照片实际分辨率较小,为了实现更大分辨率的图像,根据

周围的像素,按照算法来插入一些像素的方法。但图像会因此失真。

4G+2G是指使用的nandflash 4Gbit ,sdram 是2Gbit ( nandflash/,sdram概念见下面)

2G+1G是指使用的nandflash 2Gbit ,sdram 是1Gbit

Image 就是我们编译出来的要下载到手机中的二进制文件。

Call指通话,拨打电话。

Factory mode工厂生产的时候,进行测试的菜单项,软件同事需要保证能全面的测试所有硬件相关的功能。一般是按住音量下键再开机。

Engineer mode工程模式,是用来供给软件 /硬件和射频调试用的一些菜单,可通过*#9646633#*进入。

META modeMTK的射频调试,测试需要使用的工具。

进入方式:pc 上打开Meta连接手机后启动手机。

ADBAndroid Debug Bridge是android sdk里的一个工具, 用这个工具可以直接操作管理android模拟器或者真实的andriod设备,我们可以用它来打log 调试kernel以上的代码, 访问手机内部文件系统,安装软件 等等。具体请上网搜索其强大功能。

DDMS :全称是Dalvik Debug

Monitor Service,它为我们提供例如:为测试设备截屏,针对特定的进程查看正在运行的线程以及堆信息、Logcat、广播状态信息、模拟电话呼叫、接收SMS、虚拟地理坐标等等。做android应用的同事可能用的比较多点。

IMEI(International

Mobile Equipment Identity)是国际移动设备身份码的缩写,国际移动装备辨识码,是由15位数字组成的"电子串号",它与每台手机一一对应,而且该码是全世界唯一的。每一只手机在组装完成后都将被赋予一个全球唯一的一组号码,这个号码从生产到交付使用都将被制造生产的厂商所记录。如果手机没有写IMEI,一些功能无法使用,例如无法上网, 通话设置里无法设置

IMSI:国际移动用户识别码(IMSI:International Mobile Subscriber

IdentificationNumber)是区别移动用户的标志,储存在SIM卡中,可用于区别移动用户的有效信息。其总长度不超过15位,同样使用0~9的数字。其中MCC是移动用户所属国家代号,占3位数字,中国的MCC规定为460;MNC是移动网号码,最多由两位数字组成,用于识别移动用户所归属的移动通信网;MSIN是移动用户识别码,用以识别某一移动通信网中的移动用户。

PIN:个人标识号 (=personal

identification number ),用于保护智能卡免受误用的秘密标识代码

Git:一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。可作为代码版本管理软件。

Gerrit:一种免费、开放源代码的代码审查软件,使用网页界面。利用网页浏览器,同一个团队的软件程序员,可以相互审阅彼此修改后的程序代码,决定是否能够提交,退回或者继续修改。它使用Git作为底层版本控制系统。可作为代码审查工具。

JIRA :Atlassian公司出品的项目与事务跟踪工具,被广泛应用于缺陷跟踪、客户服务、需求收集、流程审批、任务跟踪、项目跟踪和敏捷管理等工作领域。可作为bug和任务的管理工具。