干货分享:Air700ECQ的硬件设计,第一部分
一、绪论
Air700ECQ是一款基于移芯EC716E平台设计的LTE Cat 1无线通信模组。支持移动双模FDD-LTE/TDD-LTE的4G远距离无线传输技术。以极小封装,极高性价比,满足IoT行业的数传应用需求。例如共享应用场景,定位器场景,DTU数传场景等。
图表 1:功能框图
二、综述
表格 1:模块型号列表
型号 |
Air700ECQ |
LTE-TDD |
B34/B38/B39/B40/B41 |
LTE-FDD |
B3/B8 |
IO 电平 |
1.8V |
模块尺寸 |
13.45mm*10.5mm*1.7mm(+-0.15mm) |
封装 |
LGA |
备注 |
4G LTE 移动版 |
2.1 主要性能
表格 2:模块主要性能
特征 |
说明 |
CPU |
|
Flash |
|
RAM |
|
支持频段 |
|
发射功率 |
|
供电 |
|
LTE 特性 |
最大上行速率 4Mbps,最大下行速率 6Mbps
最大上行速率 2Mbps,最大下行速率 8Mbps |
网路协议特性 |
|
USIM 卡接口 |
|
USB 接口 串口 |
|
MAIN_UART:
AUX_UART:
DBG_UART:
|
|
I2C |
|
SPI |
|
天线接口 |
|
温度范围 |
|
RoHS |
|
物理特性 |
|
封装 |
|
三、应用接口
模块采用LGA封装,50个SMT焊盘管脚,以下章节将详细阐述Air700ECQ各接口的功能
3.1 管脚描述
图表 2:Air700ECQ 管脚排列图(正视图)
表格 3:管脚描述
电源
串口
USB 接口 |
|||||
管脚名 |
管脚号 |
IO |
描述 |
电气特性 |
备注 |
VBUS |
6 |
DI |
USB 插入唤醒 |
建议不超过 5.5V |
内部电阻分压 |
USB_DP |
7 |
IO |
USB 数据差分信号 |
90 欧姆差分主控控制 |
|
USB_DM |
8 |
IO |
USB 数据差分信号 |
90 欧姆差分主控控制 |
|
USIM 接口 |
|||||
管脚名 |
管脚号 |
IO |
描述 |
电气特性 |
备注 |
SIM_RST |
10 |
DO |
USIM 卡接口复位信号 |
1.8V/3.3V |
|
SIM_CLK |
11 |
DO |
USIM 卡接口时钟信号 |
1.8V/3.3V |
|
SIM_DAT |
12 |
IO |
USIM 卡接数据信号 |
1.8V/3.3V |
|
SIM_VDD |
13 |
PO |
USIM 卡接电源信号 |
1.8V/3.3V |
|
SIM_DET |
48 |
DI |
USIM 卡插入检测 |
1.8V |
模数转换 ADC 接口
管脚名 |
管脚号 |
IO |
描述 |
电气特性 |
备注 |
ADC0 |
34 |
AI |
模数转换ADC 通道 0 |
量程 0~3.3V |
若超量程需要外部电阻分压 |
ADC1 |
35 |
AI |
模数转换ADC 通道 1 |
量程 0~3.3V |
若超量程需要外部电阻分压 |
I2C 接口 |
|||||
管脚名 |
管脚号 |
IO |
描述 |
电气特性 |
备注 |
I2C0_SDA |
33 |
OD |
I2C 接口数据信号 |
DC 电平:VDD_EXT |
不用则悬空 |
I2C0_SCL |
49 |
OD |
I2C 接口时钟信号 |
DC 电平:VDD_EXT |
不用则悬空 |
I2C1_SDA |
38 |
OD |
I2C 接口数据信号 |
DC 电平:VDD_EXT |
不用则悬空 |
I2C1_SCL |
37 |
OD |
I2C 接口时钟信号 |
DC 电平:VDD_EXT |
不用则悬空 |
天线接口
LED 指示灯接口
管脚名 |
管脚号 |
IO |
描述 |
电气特性 |
备注 |
|
NET_STATUS |
27 |
0 |
网络状态指示灯 |
DC 电平:LDO_AON |
不用则悬空 |
|
通用 GPIO |
||||||
管脚名 |
管脚号 |
IO |
描述 |
电气特性 |
备注 |
|
GPIO1 |
30 |
IO |
通用GPIO |
DC 电平:VDD_EXT |
不用则悬空 |
|
GPIO2 |
39 |
IO |
通用GPIO |
DC 电平:VDD_EXT |
不用则悬空 |
|
GPIO3 |
40 |
IO |
通用GPIO |
DC 电平:VDD_EXT |
不用则悬空 |
|
AGPIO5 |
41 |
IO |
通用GPIO |
DC 电平:LDO_AON |
不用则悬空 |
|
其他 IO 口 |
||||||
管脚名 |
管脚号 |
IO |
描述 |
电气特性 |
备注 |
|
AGPIOWU1 |
29 |
DI |
外部输入中断 |
DC 电平:LDO_AON |
Opencpu 二次开发用 |
|
WUKUP0 |
26 |
DI |
外部输入中断 |
DC 电平:LDO_AON |
Opencpu 二次开发用 |
*注:
- 二次开发 GPIO 复用功能详见对应《_GPIO_table》
- LDOAON 为芯片内部部分 GPIO 供电电源,由此电源供电的 IO 口休眠状态下能够保持。
- 所有 GPIO 和 wakeuppad 都支持双边沿中断;
可以复用为 wakeup 的 io,休眠以及唤醒状态下都能使用;其余 io 唤醒状态下可用,休眠状态下不能使用;
wakeup io 可以唤醒休眠,其余 GPIO 都不可以。
表格 4:IO 参数定义
类型 |
描述 |
IO |
Input/Output |
DI |
Digital Input |
DO |
Digital Output |
PI |
Power Input |
PO |
Power Output |
AI |
Analog Input |
AO |
Analog Output |
OD |
Open Drain Output |
3.2 工作模式
下表简要的叙述了接下来几章提到的各种工作模式。
表格 5:工作模式
模式 |
描述 |
|
正常工作 |
ACTIVE |
连接正常工作。有数据或者语音或者短信交互。此模式下,模块功耗取决于环境信号的强弱,动态DTX控制以及射频工作频率。 |
IDLE SLEEP1 SLEEP2 HIBERNATE OFF |
MCU 内核时钟关闭,系统中断随时可以唤醒模块。模块注册上网络,没有数据,语音和短信交互。进入和退出IDLE模式均由系统自动管理 休眠模式下。外设均会被关闭,大部分IO处于掉电状态,仅有AGPIO能够保持电平,功耗极大降低。通过AT+CSCLK=1或者AT+CSCLK=2进入此模式 在休眠模式基础上,关闭SRAM, 仅保持64KB SRAM(ASMB)区域存储必要信息。功耗进一步降低, 在此模式下DeepSleep Timer仍然然可以运行。通过 WAKUP管脚可以唤醒,但是软件需要重新初始化。AT版本不支持此休眠模式 在休眠模式基础上,进一步关闭64KB SRAM(ASMB)区域, 功耗最低。在此模式下DeepSleep Timer仍然然可以运行。通过WAKUP管脚可以唤醒,但是软件需要重新初始化。AT版本不支持此休眠模式 此模式下PMU停止给基带和射频供电,软件停止工作,串口不通,但VBAT管脚 依然通电 |
|
休眠模式 |
||
深度休眠模式 |
||
超深度休眠模式 |
||
关机模式 |
注意:
- 当模块进入休眠模式或深度休眠模式后,部分GPIO 会处于掉电关闭状态,掉电 IO 口均无法响应中断,无法唤醒模块退出休眠模式。休眠掉电GPIO 口请参考
- 模块进入休眠状态后只能通过以下管脚中断唤醒退出休眠模式。
管脚名 |
序号 |
功能 |
描述 |
PWRKEY |
1 |
开机关机 |
通拉低开机管脚触发中断 |
MAIN_TXD/RXD |
14,15 |
主串口 |
通过给串口发数据唤醒模块 |
MAIN_DTR |
50 |
模块唤醒管脚 |
拉低触发中断唤醒 |
VBUS |
6 |
USB 插入唤醒 |
USB插入,或拉高触发 |
3.3 电源供电
管脚名 |
管脚号 |
描述 |
VBAT |
18,19 |
模块基带电源,供电范围3.3V~4.3V |
3.3.1 模块电源工作特性
在模块应用设计中,电源设计是很重要的一部分。由于LTE射频工作时最大峰值电流高达1.5A,在最大发射功率时会有约700mA的持续工作电流,电源必须能够提供足够的电流,不然有可能会引起供电电压的跌落甚至模块直接掉电重启。
3.3.2 减小电压跌落
模块电源VBAT电压输入范围为3.3V~4.3V,但是模块在射频发射时通常会在VBAT电源上产生电源电压跌落现象,这是由于电源或者走线路径上的阻抗导致,一般难以避免。因此在设计上要特别注意模块的电源设计,在VBAT输入端,建议并联一个低ESR(ESR=0.7Ω)的100uF的钽电容,以及100nF、33pF、10pF滤波电容,VBAT输入端参考电路如图4所示。并且建议VBAT的PCB走线尽量短且足够宽,减小VBAT走线的等效阻抗,确保在最大发射功率时大电流下不会产生太大的电压跌落。建议VBAT走线宽度不少于1mm,并且走线越长,线宽越宽。
3.3.3 供电参考电路
电源设计对模块的供电至关重要,必须选择能够提供至少1A电流能力的电源。若输入电压跟模块的供电电压的压差小于2V,建议选择LDO作为供电电源。若输入输出之间存在的压差大于2V,则推荐使用开关电源转换器以提高电源转换效率。
LDO供电:
下图是5V供电的参考设计,采用了Micrel公司的LDO,型号为MIC29302WU。它的输出电压是4.16V,负载电流峰值到3A。为确保输出电源的稳定,建议在输出端预留一个稳压管,并且靠近模块VBAT管脚摆放。建议选择反向击穿电压为5.1V,耗散功率为1W以上的稳压管。
图表4:供电输入参考设计 图表 6:DCDC 供电输入参考设计
DC-DC 供电:
下图是 DC-DC 开关电源的参考设计,采用的是杰华特公司的 JW5359M 开关电源芯片,它的最大输出电流是 2A,输入电压范围 3.7V~18V。注意 C25 的选型要根据输入电压来选择合适的耐压值。
3.3.4 开关机
开机
管脚名 |
类型 |
序号 |
描述 |
PWRKEY |
DI |
1 |
模块开机/关机控制脚 |
在VBAT供电后,可以通过如下两种方式来触发Air700ECQ开机:
- 按键开机: PWRKEY管脚通过轻触按键连接到地,按键按下1秒以上实现开机。
- 上电开机:将PWRKEY管脚直接短接到地,VBAT上电后就可以实现开机。
PWRKEY 管脚开机
VBAT上电后,可以通过PWRKEY管脚启动模块,把PWRKEY管脚拉低1秒以上之后模块会进入开机流程,软件会检测VBAT管脚电压,若VBAT管脚电压大于软件设置的开机电压(3.3V),会继续开机动作直至系统开机完成;否则,会停止执行开机动作,系统会关机,开机成功后PWRKEY管脚可以释放。可以通过检测VDD_EXT管脚的电平来判别模块是否开机。推荐使用开集驱动电路来控制PWRKEY管脚。下图为参考电路:
图表 5:开集驱动参考开机电路
另一种控制PWRKEY管脚的方法是直接使用一个按钮开关。按钮附近需放置一个TVS管用以ESD保护。下图为参考电路:
图表 6:按键开机参考电路
3.4 上电开机
将模块的PWRKEY 直接接地可以实现上电自动开机功能。需要注意,在上电开机模式下,将无法关机,只要 VBAT 管脚的电压大于开机电压即使软件调用关机接口,模块仍然会再开机起来。另外,在此模式下,要想成功开机起来 VBAT 管脚电压仍然要大于软件设定的开机电压值(3.3V),如果不满足,模块会关闭,就会出现反复开关机的情况。
对于用电池供电的应用场景不建议用 PWRKEY 接地的上电自动开机方式。
3.4.2 关机
以下的方式可以关闭模块:
- 正常关机:使用PWRKEY管脚关机
- 正常关机:通过AT指令AT+CPOWD关机
- 低压自动关机:模块检测到低电压时关机,可以通过AT指令AT+CBC 来设置低电压的门限值;
PWRKEY 管脚关机
PWRKEY 管脚拉低 1.5s 以上时间,模块会执行关机动作。
关机过程中,模块需要注销网络,注销时间与当前网络状态有关,经测定用时约2s~12s,因此建议延长
12s后再进行断电或重启,以确保在完全断电之前让软件保存好重要数据。时序图如下:
低电压自动关机
模块在运行状态时当 VBAT 管脚电压低于软件设定的关机电压时(默认设置 3.3V),软件会执行关机动作关闭模块,以防低电压状态下运行出现各种异常。
复位
管脚名 |
类型 |
序号 |
电压域 |
描述 |
RESET_N |
DI |
16 |
- |
模块复位输入,低有效;无需外部上拉 |
RESET_N 引脚可用于使模块复位。 拉低RESET_N 引脚 100ms 以上可使模块复位。 RESET_N 信号对干扰比较敏感, 因此建议在模块接口板上的走线应尽量的短,且需包地处理。
参考电路:
注意:
1. 复位功能建议仅在AT+CPOWD 和PWRKEY 关机失败后使用。
3.5. 串口
模块提供了三个通用异步收发器:主串口 MAIN_UART、AUX_UART、DBG_UART。
3.5.1. MAIN_UART
表格 6:MAIN_UART 管脚定义
3.5. 串口
模块提供了三个通用异步收发器:主串口 MAIN_UART、AUX_UART、DBG_UART。
3.5.1. MAIN_UART
表格 6:MAIN_UART 管脚定义
管脚名 |
类型 |
序号 |
电压域 |
描述 |
MAIN _TXD |
DO |
14 |
VDD_EXT |
MAIN_UART 发送数据 |
MAIN _RXD |
DI |
15 |
VDD_EXT |
MAIN_UART 接收数据 |
管脚
主串口 MAIN_UART 用来进行 AT 指令通讯。MAIN_UART 支持固定波特率, 不支持自适应波特率
MAIN_UART 在休眠状态下保持的功能,能够唤醒模块
MAIN_UART 的特点如下:
8个数据位,无奇偶校验,一个停止位。
用以AT命令传送,数传等。
支持波特率如下:600,1200,2400,4800,14400,9600,19200,38400,57600,115200,230400,460800,921600bps
注意:
MAIN_UART 在开机过程中短时会输出固定调试信息
3.5.2. AUX_UART
表格 7:AUX_UART 管脚定义
名
管脚名 |
类型 |
序号 |
电压域 |
描述 |
AUX_TXD |
DO |
31 |
VDD_EXT |
AUX_UART 发送数据 |
AUX_RXD |
DI |
32 |
VDD_EXT |
AUX_UART 接收数据 |
AUX_UART为辅助串口,不支持AT指令交互,用于某些外设通信,如对接GNSS定位模块等。
AUX_UART休眠后会关闭,无法通过给AUX_UART发送数据进行唤醒。
3.5.3. DBG_UART
管脚名 |
类型 |
序号 |
电压域 |
描述 |
DBG_TXD |
DO |
3 |
VDD_EXT |
调试串口,输出 AP log, |
DBG_RXD |
DI |
2 |
VDD_EXT |
调试串口,接收调试指令 |
型
DBG_UART 用来软件调试时输出 AP trace,建议预留测试点。
DBG_UART 在开机过程中短时会输出固定调试信息。
DBG_TX、DBG_RX 默认功能为系统底层日志口,进行模块硬件设计时,在剩余功能引脚充足的前提
下,避免使用 DBG_TX 和 DBG_RX。
如果将此引脚复用为其他功能,则无法从 DBG_TX 和 DBG_RX 抓取系统日志。
在某些场景下,如果模块出现异常,无法抓到问题日志,只能通过硬件改版,引出 DBG_TX、
DBG_RX,抓取日志再进行分析。
包括但不限于以下两种场景:
1、低功耗场景:
在低功耗场景下,USB 无法使用,只能通过 DBG_TX、DBG_RX 来抓取日志。
2、非低功耗场景:
模块接入 USB 时,工作正常,未接入 USB 时,工作异常的情况,只能通过 DBG_TX、DBG_RX 来抓取
日志。
3.5.4. 串口连接方式
串口的连接方式较为灵活,如下是三种常用的连接方式。
三线制的串口请参考如下的连接方式:
图表 7:串口三线制连接方式示意图
3.5.5. 串口电压转换
Air700ECQ 模块的串口电平为 1.8V,能够满足大部分外设,主控的串口直接需求,但是如果要和 3.3V
或者以上的 MCU 或其他串口外设通信,那就必须要加电平转换电路:
注意
如果低功耗需求上拉不能用vdd-ext,要用agpio或者外部ldo做上拉
此电平转换电路不适用波特率高于460800 bps的应用。
D2 必须选用低导通压降的肖特基二极管。
肖特基二极管以及 NPN 三极管的推荐型号如下:
物料名称 |
型号 |
厂商 |
描述 |
肖特基二极管 |
RB521S-30 |
江苏长电 |
Schottky Diode;30V;200mA;SOD523;1.6*0.8*0.6mm |
PSB521S-30 |
上海智晶 |
Schottky Diode;30V;200mA;SOD523;1.6*0.8*0.6mm |
|
LRB521S- 30T1G |
LRC |
Schottky Diode;30V;200mA;SOD523;1.6*0.8*0.6mm |
|
PSBD521S-30 |
Prisemi |
Schottky Diode;30V;200mA;SOD523;1.6*0.8*0.6mm |
|
NPN 三极管 |
MMBT3904 |
江苏长电 |
Transistor;NPN;40V;200mA;SOT23;1.1mm;ROHS |
MMBT3904 |
上海智晶 |
Transistor;NPN;40V;200mA;SOT23;1.1mm;ROHS |
|
LMBT3904LT1G |
LRC |
Transistor;NPN;40V;200mA;SOT23;1.1mm;ROHS |
对于波特率高于 460800bps 的应用,可以通过外加电平转换芯片来实现电压转换,参考电路如下:
此电路采用的是电平转换芯片是 TI 的 TXS0108E, 8 位双向电压电平转换器,适用于漏极开路和推挽
应用,最大支持速率:
推挽:110Mbps
开漏:1.2Mbps
3.6. USB 接口
Air700ECQ 的 USB 符合 USB2.0 规范,支持高速(480Mbps)、全速(12Mbps)模式和低速(1.2Mbps)
模式。USB 接口可用于 AT 命令传送,数据传输,软件调试和软件升级。
表格 8:USB 管脚定义
管脚名 |
类型 |
序号 |
描述 |
USB_DP |
IO |
7 |
USB 差分信号正,走线需控制 90 欧姆差分阻抗 |
USB_DM |
IO |
8 |
USB 差分信号负,走线需控制 90 欧姆差分阻抗 |
VBUS |
DI |
6 |
USB 插入唤醒,模块内部电阻分压。(非必须) |
USB接口参考设计电路如下:
图表 8:USB 接口参考设计
注意事项如下:
1. USB 走线需要严格按照差分线控制,做到平行和等长;
2. USB 走线的阻抗需要控制到差分 90 欧姆;
3. 需要尽可能的减少 USB 走线的 stubs,减少信号反射;USB 信号的测试点最好直接放在走线上以
减少 stub;
4. 尽可能的减少 USB 走线的过孔数量;
5. 在靠近 USB 连接器或者测试点的地方添加 TVS 保护管,由于 USB 的速率较高,需要注意 TVS 管
的选型,保证选用的 TVS 保护管的寄生电容小于 1pF
6. VBUS 作为 USB 插入唤醒作用,并不直接参与 USB 插入检测,非必须,在不需要 USB 插入唤醒的
场景也可以不接
3.7. USB 下载模式
管脚名 |
类型 |
序号 |
电压域 |
描述 |
BOOT |
DI |
25 |
在开机之前上拉到 VDD_EXT,模块会强行进入 USB 下载模式,BOOT 须留测试点,方便后续升级软件 |
Air700ECQ 模块进入 USB 下载模式:
1. 在开机之前,把 BOOT 上拉到 VDD_EXT
2. 给模块上电,POWKEY 拉低,开机
3. 成功进入下载模式后,PC 端会虚拟出单个串口。
管脚名 |
类型 |
序号 |
电压域 |
描述 |
I2C0_SCL |
IO |
49 |
VDD_EXT |
I2C 时钟信号,用作 I2C 时需外加 1.8V 上拉 |
I2C0_SDA |
IO |
33 |
VDD_EXT |
I2C 数据信号,用作 I2C 时需外加 1.8V 上拉 |
I2C1_SCL |
IO |
37 |
VDD_EXT |
I2C 时钟信号,用作 I2C 时需外加 1.8V 上拉 |
I2C1_SDA |
IO |
38 |
VDD_EXT |
I2C 数据信号,用作 I2C 时需外加 1.8V 上拉 |
3.8 I2C
Air700ECQ 可支持两路 I2C 接口:
兼容 Philips I2C 标准协议
支持 Fast mode (400Kbps)和 Slow mode(100Kbps)
只支持 master 模式,不支持 slaver 模式
可通过软件来配置内部的上拉电阻,1.8K 或者 20K
理论上最多可支持 127 个从设备
I2C 的参考电路如下:
Air700ECQ 的 I2C 接口电压固定 1.8V,能够满足大部分外设的直接需求,但是如果要和 3.3V 或者以上 电平的外设通信,那就必须要加电平转换电路:
电平转换用的 NMOS 管必须选用结电容小于 50pF 的型号,推荐型号如下:
物料名称 |
型号 |
厂商 |
描述 |
NMOS |
BSS138 |
江苏长电 |
N 沟道,50V,0.22A,SOT-23,ROHS |
BSS138 |
UMW(友台半导体) |
N 沟道,50V,0.3A,SOT-23,ROHS |
3.9. SIM 卡接口
Air700ECQ 支持 1 路 SIM 卡接口,支持 ETSI 和 IMT-2000 卡规范,支持 1.8V 和 3.0V USIM 卡。SIM 接口
下表介绍了 SIM 接口的管脚定义。
表格 9:SIM 卡接口管脚定义
接口 |
管脚名 |
序号 |
描述 |
SIM |
SIM_VDD |
13 |
SIM 卡供电电源,最大供电电流 10mA。 模块可以自动识别 1.8V 或者 3V(U)SIM 卡。 |
SIM_RST |
10 |
SIM 卡复位信号 |
|
SIM_DAT |
12 |
SIM 卡数据信号 |
|
SIM_CLK |
11 |
SIM 卡时钟信号 |
3.9.1. SIM 接口参考电路
下图是 SIM 接口的参考电路,使用 6pin 的 SIM 卡座。
图表 9:使用 6pin SIM 卡座参考电路图(SIM)
在SIM卡接口的电路设计中,为了确保SIM卡的良好的功能性能和不被损坏,在电路设计中建议遵循以下设计
原则:
1. SIM卡座与模块距离摆件不能太远,越近越好,尽量保证SIM卡信号线布线不超过20cm。
2. SIM卡信号线布线远离RF线和VBAT电源线。
3. 为了防止可能存在的USIM_CLK信号对USIM_DATA信号的串扰,两者布线不要太靠近,在两条走线之间增
加地屏蔽。且对USIM_RST_N信号也需要地保护。
4. 为了保证良好的ESD保护,建议加TVS管,并靠近SIM卡座摆放。选择的ESD器件寄生电容不大于50pF。在
模块和SIM卡之间也可以串联22欧姆的电阻用以抑制杂散EMI,增强ESD防护。SIM卡的外围电路必须尽量靠近SIM卡座。
本篇文章先分享到这里,接下来我们分享第二部分。
干货分享:Air700ECQ的硬件设计,第一部分的更多相关文章
- 【干货分享】Google 的设计准则,素材和资源
在谷歌,他们说, “专注于用户,所有其它的就会水到渠成 ”.他们遵循设计原则,寻求建立让用户惊喜的用户体验.谷歌一直挑战自己,为他们的用户创造一种视觉语言,综合优秀设计的经典原则和创新.谷歌设计规范是 ...
- 干货分享,FPGA硬件系统的设计技巧
PGA的硬件设计不同于DSP和ARM系统,比较灵活和自由.只要设计好专用管脚的电路,通用I/O的连接可以自己定义.因此,FPGA的电路设计中会有一些特殊的技巧可以参考. 1. FPGA管脚兼容性设计 ...
- 逆向实用干货分享,Hook技术第一讲,之Hook Windows API
逆向实用干货分享,Hook技术第一讲,之Hook Windows API 作者:IBinary出处:http://www.cnblogs.com/iBinary/版权所有,欢迎保留原文链接进行转载:) ...
- Android之 看“马达”如何贯通Android系统 (从硬件设计 --> 驱动 --> HAL --> JNI --> Framework --> Application)
在Android 2.3(Gingerbread) 系统的时候,我写过一篇关于“Android 震动马达系统“的文章,当时的Linux内核还是2.6版本的.写那篇文章的目的,是想彻底的了解从硬件到驱动 ...
- ref:【干货分享】PHP漏洞挖掘——进阶篇
ref:http://blog.nsfocus.net/php-vulnerability-mining/ [干货分享]PHP漏洞挖掘——进阶篇 王陶然 从常见的PHP风险点告诉你如何进行PH ...
- 最强最全干货分享:Android开发书籍、教程、工具等
最全干货分享,本文收集整理了Android开发所需的书籍.教程.工具.资讯和周刊各种资源,它们能让你在Android开发之旅的各个阶段都受益. 入门<Learning Android(中文版)& ...
- iOS - GitHub干货分享(APP引导页的高度集成 - DHGuidePageHUD - ②)
距上一篇博客"APP引导页的高度集成 - DHGuidePageHUD - ①"的发布有一段时间了, 后来又在SDK中补充了一些新的内容进去但是一直没来得及跟大家分享, 今天来跟大 ...
- Linux内核设计第一周 ——从汇编语言出发理解计算机工作原理
Linux内核设计第一周 ——从汇编语言出发理解计算机工作原理 作者:宋宸宁(20135315) 一.实验过程 图1 编写songchenning5315.c文件 图2 将c文件汇编成32位机器语言 ...
- 【干货分享】Node.js 中文资料导航
这篇文章与大家分享一批高质量的的 Node.js 中文资料.Node.js 是一个基于 Chrome JavaScript 运行时建立的一个平台, 用来方便地搭建快速的, 易于扩展的网络应用 Node ...
- 干货分享:MySQL之化险为夷的【钻石】抢购风暴【转载】
转自: 干货分享:MySQL之化险为夷的[钻石]抢购风暴 - Vanos_韩尛哲 - 博客园http://www.cnblogs.com/Vanos-lcp/p/5642097.html 抢购钻石不稀 ...
随机推荐
- 使用 python flask 框架实现一个简单的抽奖系统
Flask 实现一个简易的抽奖系统 项目前置知识 目前 python主流的框架: Django .flask .Tornado 简介: 1.框架 框架? 为什莫使用框架? (前置知识讲解比较冗杂,望谅 ...
- 6.2K star!推荐一款开源混沌工程测试平台:Chaos Mesh
1.Chaos Mesh 介绍 Chaos Mesh是一个开源的混沌工程平台,旨在帮助用户在生产环境中测试.验证和优化其应用程序的可靠性和稳定性.通过引入故障注入和混沌工程原则,Chaos Mesh可 ...
- 分库分表后全局唯一ID的四种生成策略对比
分库分表之后,ID主键如何处理? 当业务量大的时候,数据库中数据量过大,就要进行分库分表了,那么分库分表之后,必然将面临一个问题,那就是ID怎么生成?因为要分成多个表之后,如果还是使用每个表的自增长I ...
- win10找不到无线网络报错:Windows无法自动将IP协议堆栈绑定到网络适配器
win10找不到无线网络报错:Windows无法自动将IP协议堆栈绑定到网络适配器 问题描述: 今天启动电脑,忽然发现连不上WIFI了,但可以拨号连接有线网.大致情况如下: 上图是修复后的结果,在未修 ...
- Windows 11 上搭建 Linux 桌面系统
为什么做这个事呢?首先dev 环境方面肯定Linux是主流,然后因为后面要跑CV应用,肯定还是要看看效果啥的,最好有个桌面系统. 1. 首先在windows 里安装 WSL, 要用 wsl2 版本 2 ...
- 解决elementUI 表格el-table设置高度之后合计行不显示
问题:elementUI el-table 设置了高度height 和合计行 show-summary 之后,合计行无法正常显示 一.问题分析 根据调试,发现该问题应该属于组件bug,表格主体中给 f ...
- Angular 18+ 高级教程 – Getting Started
前言 这篇主要是教大家如何快速搭建一个 Angular 项目,纯用于学习. Before Starting 开始前,我们需要知道几个小知识. 1. Angular Compilation 游览器支持的 ...
- 使用MessagePipe实现进程间通信
1.MessagePipe介绍 可以用于.NET和Unity上面的高性能的内存/分布式消息传递管道.适用于发布/订阅模式.CQRS的中介模式.Prism中的EventAggregator.IPC(进程 ...
- window使用VNC远程ubuntu16.04
首先保证在同一局域网下 一.设置Ubuntu 16.04 允许进行远程控制 首先在ubuntu下找到下图图标 将[允许其他人查看您的桌面]这一项勾上,然后在安全那项,勾选[要求远程用户输入此密码],并 ...
- dotnet 的LINQ使用
// LINQ (Language Integrated Qyery) 语言集成查询 -- 用来查询的一些操作类库 // 1. LINQ to Objects 主要负责对象的查询 // 2. LINQ ...