当前位置:首页>Linux>Linux Camera驱动调试避坑指南:Sensor黑屏排查完全手册(V4L2+MIPI CSI全流程)

Linux Camera驱动调试避坑指南:Sensor黑屏排查完全手册(V4L2+MIPI CSI全流程)

  • 2026-07-02 16:48:18
Linux Camera驱动调试避坑指南:Sensor黑屏排查完全手册(V4L2+MIPI CSI全流程)

linux Camera无法出图,问题可能出在硬件连接、驱动加载、参数配置、数据传输、图像质量任何一个层面。本文整合多个项目中的实战资源,系统化梳理并配合关键命令和日志分析,让你遇到问题不再迷茫!


一、Camera系统完整数据链路

嵌入式Linux Camera系统的典型架构如下:

各层面对应的排查重点

层面
关键组件
排查重点
调试工具
Sensor层
电源/时钟/复位
硬件信号是否正常
万用表、示波器
I2C控制面
I2C总线/寄存器
能否通信、读写ID
i2cdetect、i2cget
MIPI数据面
MIPI D-PHY/CSI
数据是否传输
示波器、逻辑分析仪
驱动层
V4L2 subdev
probe、设备树
dmesg、lsmod
Pipeline层
Media Controller
拓扑链路完整
media-ctl
应用层
/dev/videoX
格式/抓帧/出图
v4l2-ctl

二、常见故障类型总览

Sensor无法出图,问题通常出在以下5个层面:

故障层级
常见表现
排查优先级
硬件连接层
I2C扫描不到地址、完全无响应
最高
驱动加载层
probe失败、无设备节点
参数配置层
链路不通、格式不匹配
数据传输层
有设备但抓不到数据、花屏
图像质量层
偏色、模糊、掉帧

1.1 分层排查总流程

调试心法口诀:先硬件后软件,先简单后复杂,先通信后出图


二、步骤1:硬件连接检查与I2C通信故障排查

一般的平台在开机过程,camera驱动框架都会对sensor进行探测。如果确实存在相应的硬件,将会产生/dev/video节点;如果探测异常,则没有相应的节点。探测过程一般是通过I2C驱动sensor的chipid,在这个过程中遇到最多的就是I2C通信失败

2.1 硬件检查清单

  1. 电源电压正常(AVDD/DVDD/IOVDD)
  2. MCLK时钟有输出
  3. RSTN/PWDN引脚电平正确
  4. I2C上拉电阻焊接(4.7KΩ)
  5. MIPI排线连接牢固、方向正确

2.2 关键命令操作

# 检查I2C总线i2cdetect -l# 扫描I2C设备(以i2c-1为例)i2cdetect -y 1

正常输出示例

     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f00:          -- -- -- -- -- -- -- -- -- -- -- -- --10: -- -- -- -- -- -- -- -- -- -- UU -- -- -- -- --20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

2.3 I2C通信失败8步排查法

症状:i2cdetect全是"--",找不到Sensor地址

详细步骤说明

步骤
检查内容
关键点
第1步
确认Sensor的I2C地址配置
I2C通信地址是7bit,不同平台配置可能存在差异(7bit/8bit)
第2步
确认DTS配置
电源(ldo连接/电压)、reset引脚、pwdn引脚、mclk引脚、i2c引脚
第3步
确认驱动上电时序
按照sensor datasheet的上电流程:配置电源→拉低reset/pwdn→释放复位
第4步
屏蔽掉电函数,测量硬件信号
屏蔽sensor掉电函数使其保持上电,用万用表测量供电/reset/pwdn/mclk/I2C上拉
第5步
确认MCLK幅值
特别注意
:MCLK幅值与IOVDD应一致,幅值很小需检查硬件或软件配置
第6步
分离测试
拆下模组单独测试主板信号,确认正常后再接模组测量
第7步
换件测试
以上条件都满足但仍失败,更新板子/模组进行测试
第8步
再次确认I2C地址
使用i2cdetect命令进行设备探测

调试心法:本来换件测试也可以放到第一步进行的,但是我习惯放到最后,先怀疑自己,再考虑其他~

手动GPIO控制测试

# 如果是GPIO控制问题,手动操作GPIO测试# 以GPIO5为例,设置为输出并拉高echo 5 > /sys/class/gpio/exportecho out > /sys/class/gpio/gpio5/directionecho 1 > /sys/class/gpio/gpio5/value

2.4 能扫描到地址但读ID失败

症状:i2cdetect能看到地址,但i2cget读取失败

排查步骤

  1. 检查I2C地址是否左移:部分Sensor地址需要左移一位
  2. 确认寄存器地址:查阅规格书,确认芯片ID寄存器地址
  3. 检查MCLK质量:用示波器看时钟是否有抖动

验证命令

# 尝试不同的读取方式i2cget -f -y 1 0x10 0x00      # 8位寄存器i2cget -f -y 1 0x10 0x00 w    # 16位寄存器

三、步骤2:驱动加载验证

3.1 驱动检查清单

  1. 驱动编译成功,生成.ko文件
  2. 设备树配置正确
  3. 内核日志无报错
  4. 设备节点正常生成

3.2 关键命令操作

# 1. 加载驱动insmod ov2640.ko# 2. 查看内核日志dmesg | tail -50# 3. 检查设备节点ls -l /dev/video*ls -l /dev/v4l-subdev*# 4. 查看模块是否加载lsmod | grep ov2640

正常日志示例

[  123.456] ov2640 2-0010: Looking at sensor ID register[  123.457] ov2640 2-0010: Detected OV2640 sensor[  123.458] ov2640 2-0010: sensor probed[  123.459] videodev: Linux video capture interface: v2.00

3.3 驱动probe失败排查

症状:insmod后内核日志显示probe失败

错误日志
问题原因
解决方案
of_i2c_register_device failed
设备树节点错误
检查DTS节点语法
chip id mismatch
芯片ID不匹配
确认Sensor型号或修改驱动
gpio request failed
GPIO被占用
更换GPIO或释放占用

排查步骤

  1. 检查compatible属性:设备树中的compatible必须与驱动完全一致
  2. 检查I2C通信:确认probe前I2C已经能正常通信
  3. 检查GPIO配置:复位、休眠引脚是否正确配置

3.4 无设备节点生成排查

症状:驱动加载成功,但/dev/video*不存在

# 1. 完整查看内核日志dmesg | grep -i -A 5 -B 5 "video\|v4l"# 2. 检查media控制器ls -l /dev/media*# 3. 查看媒体拓扑media-ctl -p -d /dev/media0

解决方法

  • 确认内核已开启CONFIG_MEDIA_CONTROLLER
  • 确认内核已开启CONFIG_VIDEO_V4L2
  • 检查驱动中是否正确调用了video_register_device

四、步骤3:参数配置核对

4.1 参数检查清单

  1. MIPI data-lanes配置正确
  2. 像素格式匹配
  3. 分辨率Sensor支持
  4. 媒体拓扑链路完整

4.2 关键命令操作

# 1. 查看完整媒体拓扑media-ctl -p -d /dev/media0# 2. 查看Sensor支持的格式v4l2-ctl -d /dev/v4l-subdev0 --list-formats# 3. 查看Sensor支持的分辨率v4l2-ctl -d /dev/v4l-subdev0 --list-framesizes=UYVY# 4. 配置链路和格式media-ctl -v --set-v4l2 '"ov2640 2-0010":0[fmt:UYVY8_2X8/1280x720]'media-ctl -v --links '"ov2640 2-0010":0 -> "mipi-csi2":0[1]'

正常拓扑示例

Media controller API version 5.10.0Media device information------------------------driver          rkisp1model           rkisp1serialbus infohw revision     0x0driver version  5.10.0Device topology- entity 1: m00_b_ov2640 2-0010 (1 pad, 1 link)type V4L2 subdev subtype Sensor flags 0            device node name /dev/v4l-subdev0    pad0: Source        [fmt:UYVY8_2X8/1280x720 field:none colorspace:srgb]        -> "rkisp1_mipi_mipi_rx0":0 [ENABLED,IMMUTABLE]

4.3 媒体拓扑无Sensor节点排查

症状:media-ctl -p看不到Sensor实体

设备树检查要点

// Sensor端port {    sensor_to_csi: endpoint {        remote-endpoint = <&csi_to_sensor>;  // 必须指向CSI的endpoint        data-lanes = <1 2>;    };};// CSI端port {    csi_to_sensor: endpoint {        remote-endpoint = <&sensor_to_csi>;  // 必须指回Sensor的endpoint    };};

排查步骤

  1. 检查设备树remote-endpoint:Sensor和CSI的endpoint必须互指
  2. 检查驱动注册:确认驱动调用了media_entity_pads_init

4.4 格式配置失败排查

症状:media-ctl设置格式时报错

# 1. 先看Sensor支持哪些格式v4l2-ctl -d /dev/v4l-subdev0 --list-formats# 2. 再看支持哪些分辨率v4l2-ctl -d /dev/v4l-subdev0 --list-framesizes=UYVY# 3. 尝试设置一个肯定支持的格式media-ctl -v --set-v4l2 '"ov2640 2-0010":0[fmt:UYVY8_2X8/640x480]'

五、步骤4:数据传输测试与MIPI故障排查

当I2C可以正常通信后,意味着SoC可以配置Sensor,使其输出图像数据。这个过程也会经常性地遇到接收不到图像数据的情况。

5.1 数据传输检查清单

  1. 链路配置完成
  2. 抓帧命令执行成功
  3. 抓帧文件大小正常
  4. 图像数据有效

5.2 关键命令操作

# 1. 设置视频格式v4l2-ctl -d /dev/video0 --set-fmt-video=width=1280,height=720,pixelformat=UYVY# 2. 查看当前格式v4l2-ctl -d /dev/video0 --get-fmt-video# 3. 尝试流式传输(不保存文件)v4l2-ctl --stream-mmap --stream-count=100# 4. 抓帧保存v4l2-ctl --stream-mmap --stream-count=1 --stream-to=test.yuv# 5. 检查文件大小ls -lh test.yuv

正常输出示例

<<<<<<<<<<<<<<<<<<<<<<<< 30.00 fps<<<<<<<<<<<<<<<<<<<<<<<< 30.00 fps<<<<<<<<<<<<<<<<<<<<<<<< 30.00 fps

5.3 MIPI没有接收到数据7步排查法

症状:v4l2-ctl执行成功,但test.yuv大小为0,或流式传输没有"<<<"输出

详细步骤说明

步骤
检查内容
关键点
第1步
确认Sensor的MIPI引脚有数据输出
测量MIPI引脚,注意复位后的延时,复位后需等待才能配置寄存器
第2步
确认MIPI lane数配置与硬件一致
Sensor寄存器配置的lane数与硬件连接必须一致
第3步
示波器测量MIPI信号
看波形是否正常,符合MIPI协议要求
第4步
确认SOC软件配置与LP状态切换
SoC需要检测LP11→LP01→LP00→SoT状态切换后才进入高速模式;建议配置为非连续时钟模式
第5步
修改Sensor的MIPI寄存器尝试
按照平台的MIPI CSI调试介绍修改寄存器
第6步
先接收RAW数据排除干扰
排除CSI pipeline中其他模块的干扰
第7步
硬件层面检查
阻抗匹配、虚焊、MIPI引脚短路等

实战踩坑经验:和模组厂确认提供的寄存器配置是否正确、是否可以正常出图!确认自己测量没有问题之后,要敢猜疑!

关键知识点:LP状态切换

图像数据在SoC MIPI接收过程中需要检测到各个lane的LP11→LP01→LP00→SoT(Start of Transmission)状态切换后才会切换到高速模式准备接收。

常见配置错误

  • SoC先使能Sensor输出,再配置SoC MIPI
  • SoC MIPI控制器一直在等待MIPI信号切换,而Sensor早已开始输出

解决方案:将Sensor MIPI clk lane配置为非连续时钟模式,每帧图像数据,MIPI clk lane都会有一个完整的LP状态切换。

5.4 有数据但图像花屏/彩条/分屏/错位排查

症状:抓帧文件大小正常,但图像是花的、有彩条、分屏、显示不完整等

排查思路

具体排查步骤

  1. 检查像素格式:确认UYVY/YUYV/VYUY顺序正确
  2. 检查Bayer顺序:如果是RAW数据,确认BGGR/GRBG等顺序
  3. 检查MIPI lane顺序data-lanes = <1 2> vs <2 1>
  4. 检查分辨率对齐:部分平台要求宽度16对齐/32对齐

验证方法

# 尝试不同的像素格式v4l2-ctl --set-fmt-video=pixelformat=YUYVv4l2-ctl --set-fmt-video=pixelformat=VYUY# 尝试不同的分辨率v4l2-ctl --set-fmt-video=width=1920,height=1080v4l2-ctl --set-fmt-video=width=640,height=480

六、步骤5:日志深入分析

6.1 关键日志收集命令

# 1. 完整内核日志dmesg > kernel_log.txt# 2. 只看Camera相关dmesg | grep -i "camera\|ov2640\|v4l\|media" > camera_log.txt# 3. 实时监控日志dmesg -w &# 4. 查看系统日志cat /var/log/syslog | grep -i camera

6.2 常见错误日志及解决方案

错误日志
问题分析
解决方法
i2c i2c-1: sendbytes: NAK
I2C通信失败,Sensor无应答
检查供电、复位、I2C接线
vb2_v4l2_buffer_done: error
缓冲区错误
检查内存配置、DMA传输
mipi csi2: phy error
MIPI PHY层错误
检查MIPI接线、lane配置
isp: frame start timeout
没有接收到帧起始信号
检查Sensor输出、MIPI配置

6.3 高级调试技巧

# 1. 开启驱动调试日志(修改驱动代码)# 在驱动中添加:#define DEBUG#include <linux/printk.h>dev_dbg(&client->dev, "debug message\n");# 2. 查看寄存器值(通过I2C)i2cdump -f -y 1 0x10# 3. 使用ftrace追踪函数调用echo function > /sys/kernel/debug/tracing/current_tracerecho ov2640_* > /sys/kernel/debug/tracing/set_ftrace_filtercat /sys/kernel/debug/tracing/trace

七、核心速查表

7.1 I2C通信8步排查法速查

步骤
检查项
命令/方法
1
确认I2C地址配置
7bit/8bit确认
2
确认DTS配置
检查电源/reset/pwdn/mclk/i2c
3
确认驱动上电时序
对照datasheet
4
屏蔽掉电函数,测量硬件信号
万用表测量
5
确认MCLK幅值
应与IOVDD一致
6
分离测试
先测主板,再接模组
7
换件测试
更新板子/模组
8
再次确认I2C地址
i2cdetect探测

7.2 MIPI接收7步排查法速查

步骤
检查项
关键点
1
确认Sensor的MIPI引脚有数据输出
注意复位后延时
2
确认MIPI lane数配置与硬件一致
寄存器配置vs实际连接
3
示波器测量MIPI信号波形
符合MIPI协议要求
4
确认SOC软件配置与LP状态切换
建议非连续时钟模式
5
修改Sensor的MIPI寄存器尝试
参考平台调试文档
6
先接收RAW数据排除干扰
排除ISP/其他模块干扰
7
硬件层面检查
阻抗匹配、虚焊、短路

7.3 十大避坑要点

编号
避坑要点
说明
1
MIPI排线不要热插拔
断电后再插拔,否则容易烧坏Sensor
2
上电顺序不能错
先供电,再拉低休眠,最后释放复位
3
I2C上拉不能少
4.7KΩ上拉电阻必须焊接,否则通信不稳定
4
设备树compatible要精确
区分大小写,多一个空格都不行
5
GPIO极性要注意
GPIO_ACTIVE_LOW和HIGH搞反会导致Sensor不工作
6
data-lanes要数清楚
Sensor有几根lane就配置几根,多了少了都不行
7
MCLK频率要准确
24MHz就是24MHz,27MHz就是27MHz
8
MCLK幅值要检查
幅值应该与IOVDD一致,过小可能是引脚配置问题
9
像素格式要匹配
UYVY和YUYV虽然只差两个字母,但图像完全不一样
10
日志一定要看
dmesg是最好的调试工具,遇到问题先看日志

八、总结

linux Sensor调试虽然看似复杂,但只要掌握了系统化的排查方法,90%的问题都能快速解决!

核心要点回顾

  1. 分层排查:硬件→驱动→配置→传输→质量
  2. 工具善用:i2cdetect、dmesg、media-ctl、v4l2-ctl
  3. 日志为王:遇到问题先看日志,答案往往就在里面
  4. 耐心细致:每一步都确认正常再往下走,不要跳步
  5. 先怀疑自己:先检查自己的配置,再考虑硬件或模组问题

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-03 11:18:10 HTTP/2.0 GET : https://f.mffb.com.cn/a/494551.html
  2. 运行时间 : 0.102975s [ 吞吐率:9.71req/s ] 内存消耗:4,562.97kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=f18ee8070f3436dc8256563f11c99fc6
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000666s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000647s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000340s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000309s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000545s ]
  6. SELECT * FROM `set` [ RunTime:0.000214s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000617s ]
  8. SELECT * FROM `article` WHERE `id` = 494551 LIMIT 1 [ RunTime:0.000477s ]
  9. UPDATE `article` SET `lasttime` = 1783048691 WHERE `id` = 494551 [ RunTime:0.013353s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 67 LIMIT 1 [ RunTime:0.000305s ]
  11. SELECT * FROM `article` WHERE `id` < 494551 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000503s ]
  12. SELECT * FROM `article` WHERE `id` > 494551 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000765s ]
  13. SELECT * FROM `article` WHERE `id` < 494551 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000968s ]
  14. SELECT * FROM `article` WHERE `id` < 494551 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.000643s ]
  15. SELECT * FROM `article` WHERE `id` < 494551 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.012828s ]
0.104768s