注册 登录
查看: 33356|回复: 267

[其他] 【山外多功能调试助手V1.1.5】串口、摄像头、GSM...

  [复制链接]
发表于 2014-8-12 14:55:48 | 显示全部楼层 |阅读模式
炎炎夏日,来一款爽歪歪的调试工具!!!

这是一款专为飞思卡尔开发板而配套的调试工具,同时集成了一些常用的调试功能,目前集成了 串口调试助手摄像头调试助手线性CCD调试助手虚拟示波器GSM调试助手GPS定位系统网络调试助手(TCP服务器、TCP客户端、UDP)等调试功能。

一个工具,同时满足你的多个愿望。
下载地址:http://pan.baidu.com/s/1o76zTXo
教程地址:http://pan.baidu.com/s/1qYBusxe


V1.1.5版本改动如下:
修复不兼容 win10 bug
添加使用教程,在线更新,方便使用
下载地址:http://pan.baidu.com/s/1o76zTXo


V1.1.4版本改动如下:
修复不兼容 win10 bug
下载地址:http://pan.baidu.com/s/1c7G9au


V1.1.3版本改动如下:
紧急修复虚拟示波器部分电脑出现卡住情况。

V1.1.2版本改动如下:
1。增加了记录用户数据功能,例如虚拟示波器上面,用户把字符“波形1”改成“x轴”,下次启动的时候会恢复为"x轴",无需再手动修改。
2。虚拟示波器优化,不会出现数据量过大而卡死的情况。
3。虚拟示波器,自动跟踪时,改成右对齐方式。
4。tcp/udp 助手,回车键改为"\r\n",原先是"\n"

V1.1.1版本改动如下:
修复部分电脑会提示弹窗错误的bug。

V1.1版本改动如下:
串口调试助手和智能车调试助手增加断开重连功能,避免串口线接触不良导致频繁弹串口
修复网络调试助手不支持回车功能的bug
UDP调试工具增加记录目标发送IP和端口,方便后面直接加载
进行性能优化,运行更加流畅



配套简单的使用教程


串口功能支持热拔插,非常稳定!!!(市场上绝大部分的串口助手都不支持热拔插的)
串口调试助手界面。


支持多项发送,适合调试参数时,多个数据分别发送,不需要老是重复写数据。


文件发送,可以把数据放到文件里,然后再用文件发送功能,把数据发送出去



摄像头调试助手,支持 彩色摄像头、灰度摄像头、二值化摄像头。下面是鹰眼二值化摄像头的采集显示:


线性CCD调试助手,支持1到2个线性CCD,支持轨迹记录。可在线分析二值化阈值。


虚拟示波器,调直立的时候经常用。串口支持热拔插的,十分稳定,完全秒杀:Serial_Digital_Scope 。
支持多种数据类型,多达8个通道。


GSM调试助手,学GSM的利器。
把GSM模块接入电脑,就可以通过这GSM调试助手来调试GSM模块。搞透了GSM模块的特性,再来移植到单片机上。
常见的功能已经集成进去,学起来,容易多了。
带编码转换功能,发送中文就非常简单了


GPS定位系统
把GPS模块的信息发送到上位机,就可以定位到相应的地方。通过卫星地图可以判断定位是否准确。


网络调试助手
包括TCP服务器、TCP客户端、UDP 多种功能,








下载地址在开头哦~。~ ~。~








本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

本帖被以下淘专辑推荐:

回复

使用道具 举报

发表于 2015-4-18 10:55:18 | 显示全部楼层
我为了想测试下,用lmage21.cd软件生成了一张120*180的16位真彩图然后用串口发上上位机但山外哥的助手什么都没显示,
发送代码如下:我用串口看了数据没错。全都收到了就是不显示,还是说我缺了什么
                        UART1_SendData(0xfe);
                        UART1_SendData(0x01);
                        UART1_SendData(0xfe);
                  for(i = 0;i<39240;i++)
                        {
                                 UART1_SendData(gImage_heheh[i]);
                        }
                        UART1_SendData(0xfe);
                  UART1_SendData(0x01);
回复 支持 1 反对 0

使用道具 举报

发表于 2014-11-24 12:51:54 | 显示全部楼层
真是个好东西
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2014-8-12 21:15:53 | 显示全部楼层
Flyheart 发表于 2014-8-12 21:14
真不错。想学上位机,也想用QT,不知如何入手

会C++ ,然后买一本QT的书,很快可以上手。
回复 支持 1 反对 0

使用道具 举报

发表于 2014-8-12 15:22:58 | 显示全部楼层
抢沙发~给哥们顶一个
回复 支持 反对

使用道具 举报

发表于 2014-8-12 15:23:16 | 显示全部楼层
再抢个板凳!!!
回复 支持 反对

使用道具 举报

发表于 2014-8-12 15:23:32 | 显示全部楼层
他们去坐凉席吧!!!
回复 支持 反对

使用道具 举报

发表于 2014-8-12 15:24:15 | 显示全部楼层
ii童话Bū说话 发表于 2014-8-12 15:23
他们去坐凉席吧!!!

悄悄地下载了再说
回复 支持 反对

使用道具 举报

发表于 2014-8-12 15:24:48 | 显示全部楼层
汤静云 发表于 2014-8-12 15:24
悄悄地下载了再说

已经下载完毕!
回复 支持 反对

使用道具 举报

发表于 2014-8-12 15:25:09 | 显示全部楼层
虚拟示波器,这功能好啊
回复 支持 反对

使用道具 举报

发表于 2014-8-12 21:00:52 | 显示全部楼层
用什么写的?很强大的说
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-8-12 21:02:03 | 显示全部楼层
Flyheart 发表于 2014-8-12 21:00
用什么写的?很强大的说

用QT实现的
回复 支持 反对

使用道具 举报

发表于 2014-8-12 21:14:11 | 显示全部楼层
山外メ雲ジ 发表于 2014-8-12 21:02
用QT实现的

真不错。想学上位机,也想用QT,不知如何入手
回复 支持 反对

使用道具 举报

发表于 2014-8-13 08:26:44 | 显示全部楼层
相当的给力,支持!!!
回复 支持 反对

使用道具 举报

发表于 2014-8-14 17:38:19 | 显示全部楼层
本帖最后由 Razer_利剑 于 2014-8-14 21:54 编辑

哈哈哈,终于能说话了,大赞一个,哥见多识广,给介绍本QT的入门书呗,或者你学习的时候看的书。多谢!!!强烈支持,非常感谢哥们
回复 支持 反对

使用道具 举报

发表于 2014-8-18 09:54:21 | 显示全部楼层
怎么 写串口协议啊。
回复 支持 反对

使用道具 举报

发表于 2014-8-20 19:51:46 | 显示全部楼层
满怀感激地收下了
回复 支持 反对

使用道具 举报

发表于 2014-8-21 08:34:19 | 显示全部楼层
怎么用啊。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-8-21 15:59:33 | 显示全部楼层
头上两只角 发表于 2014-8-21 08:34
怎么用啊。

里面有说明文档,有使用说明的
回复 支持 反对

使用道具 举报

发表于 2014-8-22 19:47:01 | 显示全部楼层
山外メ雲ジ 发表于 2014-8-21 15:59
里面有说明文档,有使用说明的

不用写  协议吗???
回复 支持 反对

使用道具 举报

发表于 2014-9-5 22:23:34 | 显示全部楼层
请问  你们GSM模块有直接应用在K60上的吗    有的话给个购买链接和资料呗
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-9-5 22:24:40 | 显示全部楼层
WUYE 发表于 2014-9-5 22:23
请问  你们GSM模块有直接应用在K60上的吗    有的话给个购买链接和资料呗

我这边没有GSM模块,GSM模块是串口通信的,绝大部分单片机都可以直接应用
回复 支持 反对

使用道具 举报

发表于 2014-9-7 15:57:28 | 显示全部楼层
这个下位机协议怎么写,有例子吗?这样写对吗?printf("%d%d%d%d%d%d%d%d%d%d",0x03,0xfc,MPU6050_data[0],MPU6050_data[1],MPU6050_data[2],MPU6050_data[3],MPU6050_data[4],MPU6050_data[5],0xfc,0x03);
回复 支持 反对

使用道具 举报

发表于 2014-9-14 22:31:20 | 显示全部楼层
下位机  协议怎么写。。。。。。。。。。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-9-14 22:44:14 | 显示全部楼层
头上两只角 发表于 2014-9-14 22:31
下位机  协议怎么写。。。。。。。。。。。

说明文档有协议说明啊
回复 支持 反对

使用道具 举报

发表于 2014-9-17 13:56:21 | 显示全部楼层
你好,我想问一下,那个调试工具中坐标的那一部分是有什么工具还是就是只用图形函数做出来的啊,我也在写一些简单的上位机,对这一点不太明白,希望您能指点一下啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-9-17 13:57:45 | 显示全部楼层
tielang 发表于 1410933381
你好,我想问一下,那个调试工具中坐标的那一部分是有什么工具还是就是只用图形函数做出来的啊,我也在写一些简单的上位机,对这一点不太明白,希望您能指点一下啊
用QWT实现的
来自PC客户端 来自PC客户端
回复 支持 反对

使用道具 举报

发表于 2014-9-17 14:01:34 | 显示全部楼层

拿在MFC里面怎么实现,您知道吗,还有QT好学吗
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-9-17 14:05:40 | 显示全部楼层
tielang 发表于 1410933694
拿在MFC里面怎么实现,您知道吗,还有QT好学吗
MFC没用过,QT门槛还是比较高的,C#相对比较简单。
来自PC客户端 来自PC客户端
回复 支持 反对

使用道具 举报

发表于 2014-9-23 11:15:45 | 显示全部楼层
山外哥
通信协议的格式为: 通信协议的格式为: [CMD] [CMD] [CMD] [CMD] [CMD] [CMD] [~CMD][[~CMD][ [~CMD][[~CMD][[~CMD][[~CMD][…数据 …][~ CMD] [CMD]][~ CMD] [CMD]][~ CMD] [][~ CMD] [CMD]][~ CMD] [CMD]][~ CMD] [CMD]][~ CMD] [CMD]][~ CMD] [CMD]][~ CMD] [CMD]][~ CMD] [CMD]][~ CMD] [CMD]][~ CMD] [虚拟示波器的 CMDCMDCMD为 3,即一次图像传输的通信协议为: ,即一次图像传输的通信协议为: ,即一次图像传输的通信协议为: ,即一次图像传输的通信协议为: [0x03] 0xFC][[0x03] [0xFC][[0x03] [0xFC][ [0x03] 0xFC][[0x03] [0xFC][[0x03] [0xFC][[0x03] [0xFC][[0x03] [0xFC][[0x03] [0xFC][ [0x03] 0xFC][[0x03] [0xFC][[0x03] [0xFC][…数据 …][0xFC] ][0xFC] ][0xFC] ][0xFC] ][0xFC] ][0xFC] ][0xFC] [0x03][0x03][0x03] [0x03][0x03]
[…数据 …] 是 一次的波形。不同数量和据类型,长度就相假设是 一次的波形。不同数量和据类型,长度就相假设是 一次的波形。不同数量和据类型,长度就相假设是 一次的波形。不同数量和据类型,长度就相假设是 一次的波形。不同数量和据类型,长度就相假设是 一次的波形。不同数量和据类型,长度就相假设是 一次的波形。不同数量和据类型,长度就相假设5个通道, uint8_t uint8_tuint8_tuint8_tuint8_t 类型( unsigned char unsigned charunsigned char unsigned charunsigned char unsigned charunsigned char unsigned char),那么数据就是 ),那么数据就是 ),那么数据就是 ),那么数据就是 5个字节,从左往右是波形 个字节,从左往右是波形 个字节,从左往右是波形 个字节,从左往右是波形 1到波 形 5的波形数据。 的波形数据。
下位机发送 下位机发送 下位机发送 一次波形 一次波形 时,先发送帧头: 时,先发送帧头: 时,先发送帧头: 0x00x0 3,0xF ,0xF C,接着 发送全部波形的数据 发送全部波形的数据 发送全部波形的数据 ,最后发 ,最后发 ,最后发 送帧尾: 0xF0xF C,0x0 ,0x0 3完成一 完成一 次波形 发
根据通信协议,虚拟示波器的下位机代码要改哪里?
  1. //**************************************************************************
  2. /*
  3. *  功能说明:SCI示波器CRC校验
  4. * 内部调用函数
  5. *  参数说明: 无
  6. *  函数返回:无符号结果值
  7. *  修改时间:2013-2-10
  8. */
  9. //**************************************************************************
  10. static unsigned short CRC_CHECK(unsigned char *Buf, unsigned char CRC_CNT)
  11. {
  12.     unsigned short CRC_Temp;
  13.     unsigned char i,j;
  14.     CRC_Temp = 0xffff;

  15.     for (i=0;i<CRC_CNT; i++){
  16.         CRC_Temp ^= Buf[i];
  17.         for (j=0;j<8;j++) {
  18.             if (CRC_Temp & 0x01)
  19.                 CRC_Temp = (CRC_Temp >>1 ) ^ 0xa001;
  20.             else
  21.                 CRC_Temp = CRC_Temp >> 1;
  22.         }
  23.     }
  24.     return(CRC_Temp);
  25. }

  26. //************************************************
  27. //
  28. /*
  29. *  功能说明:SCI示波器发送函数

  30. *  参数说明:
  31. OutData[]  需要发送的数值赋予该数组
  32. *  函数返回:无符号结果值
  33. *  修改时间:2013-2-10
  34. */
  35. //****************************************************
  36. void OutPut_Data(void)
  37. {
  38.     int temp[4] = {0};
  39.     unsigned int temp1[4] = {0};
  40.     unsigned char databuf[10] = {0};
  41.     unsigned char i;
  42.     unsigned short CRC16 = 0;
  43.     for(i=0;i<4;i++)
  44.     {

  45.         temp[i]  = (int)OutData[i];
  46.         temp1[i] = (unsigned int)temp[i];

  47.     }

  48.     for(i=0;i<4;i++)
  49.     {
  50.         databuf[i*2]   = (unsigned char)(temp1[i]%256);
  51.         databuf[i*2+1] = (unsigned char)(temp1[i]/256);
  52.     }

  53.     CRC16 = CRC_CHECK(databuf,8);
  54.     databuf[8] = CRC16%256;
  55.     databuf[9] = CRC16/256;

  56.     for(i=0;i<10;i++)
  57.     {
  58.         uart_putchar (UART4,(char)databuf[i]);
  59.     }
  60. }
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-9-23 11:20:34 | 显示全部楼层
mic 发表于 2014-9-23 11:15
山外哥
通信协议的格式为: 通信协议的格式为: [CMD] [CMD] [CMD] [CMD] [CMD] [CMD] [~CMD][[~CMD][ [~C ...

你可以参考这里的uint8类型,5个通道的 陀螺仪和加速度模块的采集例程

  1. /*!
  2. *     COPYRIGHT NOTICE
  3. *     Copyright (c) 2013,山外科技
  4. *     All rights reserved.
  5. *     技术讨论:山外初学论坛 http://www.vcan123.com
  6. *
  7. *     除注明出处外,以下所有内容版权均属山外科技所有,未经允许,不得用于商业用途,
  8. *     修改内容时必须保留山外科技的版权声明。
  9. *
  10. * @file       main.c
  11. * @brief      山外K60 平台主程序
  12. * @author     山外科技
  13. * @version    v5.0
  14. * @date       2014-06-21
  15. */

  16. #include "common.h"
  17. #include "include.h"

  18. #define XOUT    ADC1_DM0
  19. #define YOUT    ADC0_SE16
  20. #define ZOUT    ADC0_SE17

  21. #define Gyro1   ADC1_SE16
  22. //#define Gyro2   ADC1_DP0
  23. #define Ang     ADC0_SE18

  24. void vcan_sendware(uint8 *wareaddr, uint32 waresize);



  25. /*!
  26. *  @brief      main函数
  27. *  @since      v5.1
  28. *  @note       山外 ADC 实验
  29. */
  30. void main()
  31. {
  32.     uint8 var[5];

  33.     gpio_init(PTA4,GPO,1);


  34.     adc_init(XOUT);
  35.     adc_init(YOUT);
  36.     adc_init(ZOUT);
  37.     //adc_init(Gyro2);         //角加速度  Angular2
  38.     adc_init(Gyro1);         //角加速度  Angular1
  39.     adc_init(Ang);

  40.     while(1)
  41.     {
  42.         var[0] = adc_once   (XOUT, ADC_8bit);
  43.         var[1] = adc_once   (YOUT, ADC_8bit);
  44.         var[2] = adc_once   (ZOUT, ADC_8bit);
  45.         //var[3] = adc_once   (Gyro2, ADC_8bit);
  46.         var[3] = adc_once   (Gyro1, ADC_8bit);
  47.         var[4] = adc_once   (Ang, ADC_8bit);

  48.         vcan_sendware((uint8_t *)var, sizeof(var));
  49.         DELAY_MS(10);

  50.     }
  51. }

  52. //发送图像到上位机显示
  53. //不同的上位机,不同的命令
  54. void vcan_sendware(uint8 *wareaddr, uint32 waresize)
  55. {
  56. #define CMD_WARE     3
  57.     uint8 cmdf[2] = {CMD_WARE, ~CMD_WARE};    //yy_摄像头串口调试 使用的命令
  58.     uint8 cmdr[2] = {~CMD_WARE, CMD_WARE};    //yy_摄像头串口调试 使用的命令

  59.     uart_putbuff(VCAN_PORT, cmdf, sizeof(cmdf));    //先发送命令

  60.     uart_putbuff(VCAN_PORT, wareaddr, waresize); //再发送图像

  61.     uart_putbuff(VCAN_PORT, cmdr, sizeof(cmdr));    //先发送命令
  62. }
回复 支持 反对

使用道具 举报

发表于 2014-10-21 17:28:02 | 显示全部楼层
下课再说
回复 支持 反对

使用道具 举报

发表于 2014-11-1 20:14:06 | 显示全部楼层
山外メ雲ジ 发表于 2014-8-21 15:59
里面有说明文档,有使用说明的

山外兄   有木有AD   的3D库   能不能分享一下。。支持山外
回复 支持 反对

使用道具 举报

发表于 2014-11-2 09:55:11 | 显示全部楼层
山外哥,真的很厉害的说!
回复 支持 反对

使用道具 举报

发表于 2014-11-5 20:36:06 | 显示全部楼层
话说 虚拟示波器能不能用来看 数字摄像头的 同步信号的 波形啊- -
回复 支持 反对

使用道具 举报

发表于 2014-11-12 14:14:10 | 显示全部楼层
xzh1985613 发表于 2014-11-5 20:36
话说 虚拟示波器能不能用来看 数字摄像头的 同步信号的 波形啊- -

采样率不够,还是拿带宽60M以上的示波器看吧
回复 支持 反对

使用道具 举报

发表于 2014-11-18 16:41:05 | 显示全部楼层
山外老师,这个上位机的延时有特别要求吗?不延时我的通讯灯是亮的,要重复按复位键才可以把图形刷出来啊,加了10ms的延时,通讯灯就变暗了,按复位键也没有图像啊.还有我的加速的陀螺仪老师卡死在  #define i2c_write_byte(I2Cn,data)   (I2C_D_REG(I2CN[I2Cn]) = (data));i2c_Wait(I2Cn)  只能单步啊,全速就卡死,肯定是时序有BUG啊,怎么处理啊.看到后求速回复啊.
回复 支持 反对

使用道具 举报

发表于 2014-11-18 16:47:28 | 显示全部楼层
693618760 发表于 2014-11-18 16:41
山外老师,这个上位机的延时有特别要求吗?不延时我的通讯灯是亮的,要重复按复位键才可以把图形刷出来啊, ...

没延时要求的,估计是你的代码有问题,我这边用着稳定。你检查一下通信时序,还有硬件,最好直接用串口助手看看有没有数据出来。

回复 支持 反对

使用道具 举报

发表于 2014-11-18 16:55:43 | 显示全部楼层
pitceixbuj 发表于 2014-11-18 16:47
没延时要求的,估计是你的代码有问题,我这边用着稳定。你检查一下通信时序,还有硬件,最好直接用串口助 ...

我串口上有数据,就是我是用的sin函数产生的数,然后在用示波器来看图的.不加延时狂按复位键可以显示图像,哪里的速率设置的不对吧.
回复 支持 反对

使用道具 举报

发表于 2014-11-18 16:58:31 | 显示全部楼层
693618760 发表于 2014-11-18 16:55
我串口上有数据,就是我是用的sin函数产生的数,然后在用示波器来看图的.不加延时狂按复位键可以显示图像 ...

难道是单片机的发送速度比电脑的处理速度还要快?

你测一下延时,看看最低延时多少。
回复 支持 反对

使用道具 举报

发表于 2014-11-18 18:58:21 | 显示全部楼层
我程序写的不规范,void Pause(void) 它的延时要改一下.
回复 支持 反对

使用道具 举报

发表于 2014-11-19 14:09:26 | 显示全部楼层
山外メ雲ジ 发表于 2014-8-12 21:15
会C++ ,然后买一本QT的书,很快可以上手。

除了用QT还有其他的办法吗?
回复 支持 反对

使用道具 举报

发表于 2014-11-19 14:53:06 | 显示全部楼层
山外メ雲ジ 发表于 2014-8-12 21:15
会C++ ,然后买一本QT的书,很快可以上手。

山外哥,这里面的例程好像不是核心板的例程吧?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2014-11-19 22:09:08 | 显示全部楼层
山外メ雲ジ 发表于 2014-9-5 22:24
我这边没有GSM模块,GSM模块是串口通信的,绝大部分单片机都可以直接应用

山外哥?用这个软件能不能测出K60核心板某个引脚输出的PWM波形呀?我没看懂您的介绍,所以想问下您?
回复 支持 反对

使用道具 举报

发表于 2014-11-20 22:32:22 | 显示全部楼层
您的例程说是只能用在YY_摄像头上呀?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2014-11-21 02:18:22 | 显示全部楼层
山外メ雲ジ 发表于 2014-9-23 11:20
你可以参考这里的uint8类型,5个通道的 陀螺仪和加速度模块的采集例程

山外哥!gpio_init(PTA4,GPO,1);
应该改成
gpio_init(VCAN_PORT,GPO,1);
吧!

回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-21 02:44:06 | 显示全部楼层
ii童话Bū说话 发表于 1416507502
山外哥!gpio_init(PTA4,GPO,1);
应该改成
gpio_init(VCAN_PORT,GPO,1);
吧!
gpio_init(PTA4,GPO,1);


PTA4 管脚是 NMI 管脚,容易触发 NMI 中断。所以初始化为gpio,避免进入 NMI 中断。
来自PC客户端 来自PC客户端
回复 支持 反对

使用道具 举报

发表于 2014-11-21 02:58:30 | 显示全部楼层
呃!好深奥的赶脚!还有PTA4还用设置波特率吗?
PS:貌似山外哥一天24小时都在线的赶脚!夜深了!休息吧!
来自PC客户端 来自PC客户端
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-21 03:20:29 | 显示全部楼层
ii童话Bū说话 发表于 2014-11-21 02:58
呃!好深奥的赶脚!还有PTA4还用设置波特率吗?
PS:貌似山外哥一天24小时都在线的赶脚!夜深了!休息吧 ...

串口肯定要设置波特率啊。
来自安卓客户端来自安卓客户端
回复 支持 反对

使用道具 举报

发表于 2014-11-21 12:49:38 | 显示全部楼层
山外メ雲ジ 发表于 2014-11-21 03:20
串口肯定要设置波特率啊。

下面这个代码!   uart_init (PTA4, 9600);

之前的程序貌似是有这个代码没有PTA4的gpio初始化!
不知道是我记错了!还是山外哥把代码优化了!
回复 支持 反对

使用道具 举报

发表于 2014-11-22 11:36:36 | 显示全部楼层
悄悄地下载了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回列表 返回顶部