找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2983|回复: 0
打印 上一主题 下一主题
收起左侧

03年电赛智能电动车制作资料及单片机汇编语言源程序

[复制链接]
跳转到指定楼层
楼主
这是一个智能电动车制作资料及源程序,
03年全国大学生电子设计竞赛试题。很大参考价值

一只置于轨道中间,两只置于轨道外侧,当小车脱离轨道时,即当置于中间的一只光电开关脱离轨道时,等待外面任一只检测到黑线后,做出相应的转向调整,直到中间的光电开关重新检测到黑线(即回到轨道)再恢复正向行驶。现场实测表明,虽然小车在寻迹过程中有一定的左右摇摆(因为所购小车的内部结构决定了光电开光之间的距离到达不了精确计算值1厘米),但只要控制好行驶速度就可保证车身基本上接近于沿靠轨道行驶。

方案三、采用一只红外传感器置于小车右侧并与小车前进方向呈一固定角度。
基于对C点后行车地图中光源及障碍物尺寸、位置的分析,我们采用了从C点出发即获得光源对行车方向的控制,在向光源行驶的过程之中检查障碍物并做出相应的反应,这样不仅只使用一只红外传感器就实现了避障,而且避免因小车自然转弯而导致的盲目方向控制,同时为后面以最简单直接的路线和在最短时间内驶入车库创造了机会。

智能小车应以准确、智能见优,采用方案三。

4.寻找光源方案分析与比较
方案三、利用多只光源定位器。
在方案二所得数据的基础上,结合光敏电阻的敏感性,只用三到五只光敏电阻就可以达到目的,只是因其对光非常敏感,所以必需为每只光敏电阻加上黑色隔离板。虽然制作有一定难度,但其能见长度和相对简明的控制措施显示了很大的优越性。

综合考虑以上方案,方案三更具准确性和独创性,故我们采用方案三。






   由于本次实验需要捍接的器件较多,各器件对于电源电流的需要极大,我们先以双电源开始调试,发现所有的开关器件很难稳定地给单片机送正确值,只有当更换新电池或小车刚刚启动时才会很准确,经过思考,这都是开关元件消耗电量很大的原因,一旦电池电量不足其工作将会萎靡不振,于是我们将所有开关器件划成一个部分,由一块电池专门供电。
    在前轮PWM驱动转向电路运行中,我们发现,电机只给一个转向力,但保持长期转向时,电机的转动由于受到强行制动而处于一种相对静止的状态,导致PWM驱动电路产生大量的热量,我们既利用软件使其尽量减少长期单向转动状态,又在硬件上,在PWM驱动板上涂上了一层散热胶,即使发热,也不会烧坏PWM驱动电路。
    在安装上避障用光电开关之后,其与其它所有开关元件共用同一电源,在运行时发现三个用于寻迹用的开关元件不能全部正常工作了,据分析,避障用光电开关由于探测距离远,功率大,很可能影响其他元件改用单一电源供电后,小车正常工作。
    在所有电源开启后,系统即进入6秒钟倒计时状态,6秒钟倒计时完毕之后,有时后轮电机不能正常启动。经分析,这是属于正常情况,因为其启动需要克服很大的惯性,而其电源又不能在瞬间提供很大的电流,所以就没有动静。此时,关掉单片机电源,再重新打开后即可进入正常状态去正常运行。

单片机源程序如下:
  1. ORG     0000H
  2. LJMP    MAIN

  3. ORG     0003H
  4. LJMP    MINE_BOMB

  5. ORG     000BH
  6. LJMP    TIMER

  7. ORG     0013H
  8. LJMP    HUOER

  9. ORG     001BH
  10. LJMP    SPEED

  11. ;**************************************************
  12. ORG     0030H
  13. ;**************************************************
  14. MINE_BOMB:
  15.         PUSH    A
  16.         PUSH    PSW

  17.         INC     3AH

  18.         MOV     A,40H
  19.         MOV     3BH,A

  20.         MOV     A,41H
  21.         MOV     3CH,A

  22.         CLR    20H.3
  23.         SETB   P3.4
  24.         SETB   P3.5

  25.         POP     PSW
  26.         POP     A
  27. RETI

  28. ;**************************************************
  29. TIMER:
  30.         PUSH    A
  31.         PUSH    PSW

  32.         MOV       TL0,#0F0H
  33.         MOV       TH0,#0D8H

  34.         INC       37H
  35.         MOV       A,37H

  36.         CJNE      A,#100,TIMEREND
  37. ;is 1second

  38. IS_HUN:
  39.         MOV       37H,#0
  40.         ;            IS C_MINE,STOP AND THAN  XUAN
  41.         JB       20H.0,QI_LAI        ;THIS TIME,THE CAR IS WAITTING IN THE END,
  42.         DEC      39H
  43.         MOV      A,39H
  44.         CJNE     A,#0H,TIMEREND
  45.         SETB     20H.0
  46.         LJMP     TIMEREND

  47. QI_LAI:
  48.         JB       20H.1,WAKE_UP
  49.         DEC      38H
  50.         CPL      P3.4
  51.         MOV      A,38H
  52.         CJNE     A,#0H,WAKE_UP
  53.         SETB     20H.1
  54.         CLR      P3.4
  55.         SETB     TR1
  56.         MOV      5AH,#23

  57. WAKE_UP:
  58.         INC       43H
  59.         MOV       A,43H
  60.         CJNE      A,#30,GOGOGO_DOWN
  61.         MOV       A,42H
  62.         JZ        GOGOGO_DOWN
  63.         LJMP      HOME
  64. GOGOGO_DOWN:
  65.         MOV       A,43H
  66.         CJNE      A,#60,TIMEREND
  67.         MOV       43H,#0

  68.         INC       42H
  69.         MOV       A,42H
  70.         CJNE      A,#60,TIMEREND
  71.         MOV       42H,#0


  72. TIMEREND:
  73.         POP     PSW
  74.         POP     A

  75. RETI

  76. ;**************************************************
  77. HUOER:
  78.         PUSH    A
  79.         PUSH    PSW

  80.         MOV     A,3FH
  81.         CLR     C
  82.         ADD     A,#64    ;加上6.3毫米
  83.         CJNE    A,#100,CHECK_CM
  84. CHECK_CM:
  85.         JC      ADD_CM
  86.         SUBB    A,#100    ;大于10个毫米了,要作调整
  87.         MOV     3FH,A
  88.         INC     41H

  89. ADD_CM:                   ;厘米上要加2
  90.         INC     41H
  91.         INC     41H

  92.         MOV     A,41H
  93.         CJNE    A,#100,CHECK_M
  94. CHECK_M:
  95.         JC      HUOER_END
  96.         SUBB    A,#100    ;大于一米了,要调整一下
  97.         MOV     41H,A
  98.         INC     40H

  99.         ;查看是否是两米了,是的话就算到了B区
  100.         MOV     A,40H
  101.         CJNE    A,#2,HUOER_END
  102.         MOV     36H,#0BH

  103. HUOER_END:
  104.         POP     PSW
  105.         POP     A
  106. RETI

  107. ;**************************************************
  108. SPEED:
  109.         PUSH    A
  110.         PUSH    PSW

  111.         MOV       TL1,#0B0H
  112.         MOV       TH1,#03CH

  113.         INC       5BH
  114.         MOV       A,5BH

  115.         CJNE      A,5AH,SPEED_NO_EQUAL   ; 5A中放了速度值,比5A大,刚置为停,小则行
  116.         CLR       P3.0                   ; 等于5A了,置为停
  117.         LJMP      SP_END

  118. SPEED_NO_EQUAL:                          ; 不是5A

  119.         JC       IS_GOGOGO               ; 小于5A,则向前走
  120.         CJNE     A,#40,SP_BIG_TOTAL      ; 是不是比总脉冲值大
  121.         SETB     P3.0
  122.         MOV      5BH,#0H
  123.         LJMP     SP_END
  124. IS_GOGOGO:                               ;是行,就置行
  125.         SETB     P3.0
  126.         LJMP     SP_END

  127. SP_BIG_TOTAL:                            ; 大于5A,不是40
  128.         CLR      P3.0
  129.         JC       SP_END                  ;比40小则是停,就不管
  130.         MOV      5AH,#0H
  131. SP_END:

  132.         POP     PSW
  133.         POP     A
  134. RETI

  135. ;**************************************************
  136. ;**************************************************


  137. MAIN:
  138.         MOV     SP,#5FH
  139.         LCALL   INIT
  140.     ;   LJMP    HOME;\\\\\\\\\

  141. SIX_SECOND:
  142.         JB      20H.0,GO_MINE_ZEON
  143.         MOV     R1,#39H
  144.         LCALL   SETCODEALL
  145.         LCALL   OUT
  146.         LJMP    SIX_SECOND

  147. GO_MINE_ZEON:
  148.         SETB     TR1
  149.         LJMP     MINE_WAY
  150. RET

  151. ;**************************************************
  152. ;**************************************************

  153. INIT:
  154.      MOV        R1,#36H
  155.      MOV        R2,#34
  156. INIT_LOOP:
  157.      MOV        @R1,#0
  158.      INC        R1
  159.      DJNZ       R2,INIT_LOOP

  160.      MOV        20H,#0H
  161.      SETB       20H.1
  162.      SETB       20H.3


  163.      MOV        39H,#6H      ;倒计时654321
  164.      MOV        38H,#5H      ;倒计时54321
  165.      MOV        5AH,#24      ;用于车速控制

  166.      MOV        36H,#0AH

  167.      MOV        P3,#0CH
  168.      MOV        P2,#0H


  169. INT_ZONE:
  170.      LCALL      SET_INT

  171. RET
  172. ;**************************************************
  173. SET_INT:
  174.      MOV       TMOD,#01H
  175.      MOV       TL0,#0F0H
  176.      MOV       TH0,#0D8H

  177.      MOV       TL1,#0B0H
  178.      MOV       TH1,#03CH
  179.      SETB      TR0
  180.      CLR       TR1

  181.      SETB      EA
  182.      SETB      ET0
  183.      SETB      ET1
  184.      SETB      EX0
  185.      SETB      IT0

  186.      SETB      EX1
  187.      SETB      IT1

  188. RET
  189. ;**************************************************

  190. SETCODEALL:;6543210
  191.         MOV     R0,#30H
  192.         MOV     R2,#6
  193. SETCODEALL_LOOP:
  194.         MOV     A,@R1
  195.         MOV     DPTR,#TAB
  196.         MOVC    A,@A+DPTR
  197.         MOV     @R0,A
  198.         INC     R0
  199.         DJNZ    R2,SETCODEALL_LOOP
  200. RET

  201. ;**************************************************
  202. ;**************************************************

  203. MINE_WAY:
  204.         LCALL TRACK

  205.         JB    20H.3,MINE_WAY
  206.         MOV     C,P3.2           ;下面有雷,就是低
  207.         JC    MINE_WAY

  208.         ;下面是关小灯和蜂鸣器
  209.         CLR     P3.4
  210.         CLR     P3.5

  211.         ;看看长度是否超过4米
  212.         MOV     A,40H
  213.         CJNE    A,#4H,PASS_C
  214.         LJMP    C_POINT

  215. PASS_C:
  216.         JNC     C_POINT

  217.         ;下面调用一般雷的处理方法,再返回主程序
  218.         LCALL   NORMAL_MINE
  219.         LJMP    MINE_WAY

  220.         ;下面是到达C点了
  221. C_POINT:
  222.         CLR     20H.1
  223.         LCALL   FIVE_SECOND
  224.         SETB    20H.3
  225.         SETB    TR1
  226.         MOV     5AH,#23
  227.         LJMP    BOLK

  228. RET

  229. ;****************************************************

  230. TRACK:
  231.       MOV       A,P0
  232.       ANL       A,#07H
  233.       CJNE      A,#7H,SET_TURN
  234.       LJMP      LIGHT_END
  235. SET_TURN:
  236.       CJNE      A,#3H,LIGHT_NEXT
  237. RIGHT_LIGHT:         ;  看右边的光敏元件
  238.       CLR       P2.7        ;这时就要向右转弯了
  239.       SETB      P2.6
  240.       LCALL     TURN_DELAY
  241.       CLR       P2.6
  242.       RET
  243. LIGHT_NEXT:          ; 左转了
  244.       CJNE      A,#06H,LIGHT_END
  245.       SETB      P2.7
  246.       SETB      P2.6
  247.       LCALL     TURN_DELAY
  248.       CLR       P2.6
  249.       RET

  250. LIGHT_END:
  251.       CLR   P2.6
  252. RET
  253. ;****************************************************

  254. TURN_DELAY:
  255.       MOV        5AH,#26
  256.       MOV        C, P0.1
  257.       JC         TURN_DELAY

  258.       MOV        A,36H
  259.       
  260.       CJNE       A,#0AH,IS_ZONE_B
  261.       MOV        5AH,#24
  262.       LJMP       TURN_DELAY_END

  263. IS_ZONE_B:
  264.       MOV        5AH,#20
  265. TURN_DELAY_END:

  266. RET

  267. ;****************************************************

  268. NORMAL_MINE:
  269.       CLR        TR1
  270.       CLR        P2.6

  271.       ;以下是保存雷长度
  272.       MOV       A,3CH
  273.       ADD       A,#53H
  274.       MOV       R0,A

  275.       CLR       C
  276.       MOV       A,41H
  277.       ADD       A,#100
  278.       SUBB      A,3CH
  279.       CJNE      A,#100,NORMAL_MINE_LENGTH
  280. NORMAL_MINE_LENGTH:
  281.       JC        NO_CHANGE
  282.       SUBB      A,#100
  283. NO_CHANGE:
  284.       MOV       @R0,A


  285.       ;以下是计算中点距起点的距离
  286.       MOV       B,#2H
  287.       DIV       AB

  288.       ADD       A,3CH
  289.       CJNE      A,#100,SET_CENTER
  290. SET_CENTER:
  291.       JC        NO_P_WAY
  292.       SUBB      A,#100
  293.       INC       3BH
  294. NO_P_WAY:
  295.       MOV       3CH,A

  296.       ;保存中点距离
  297.       MOV       A,3AH
  298.       DEC       A
  299.       MOV       B,#2H
  300.       MUL       AB

  301.       MOV       R0,48H
  302.       ADD       A,R0

  303.       MOV       R0,A
  304.       MOV       A,3BH
  305.       MOV       @R0,A

  306.       INC       R0
  307.       MOV       A,3CH
  308.       MOV       @R0,A



  309.       CLR        P3.0
  310.       CLR        P3.1
  311.       CLR        P2.6

  312.       CLR        TR1

  313.       ;以下是延时显示程序
  314.       LCALL      DELAY_MINE2
  315.       CLR        P3.1
  316.       SETB       P3.0
  317.       SETB       TR1
  318.       SETB       20H.3

  319. RET

  320. ;****************************************************
  321. DELAY_MINE1:
  322.       MOV       R6,#2H
  323. DELAY_LOOP_MINE1:
  324.       LCALL      DELAY
  325.       DJNZ       R6,DELAY_LOOP_MINE1
  326. RET

  327. ;****************************************************
  328. ;****************************************************
  329. DELAY_MINE2:
  330.       LCALL     SET_CODE_MINE
  331.       MOV       R5,#03H
  332. DELAY_LOOP_MINE_F:
  333.       MOV       R6,#08FH
  334.       DELAY_LOOP_MINE2:
  335.            LCALL      OUT
  336.            DJNZ       R6,DELAY_LOOP_MINE2
  337.       DJNZ     R5,DELAY_LOOP_MINE_F
  338. RET

  339. ;****************************************************

  340. SET_CODE_MINE:
  341.       MOV     A,3BH
  342.       MOV     B,#0AH
  343.       DIV     AB
  344.       MOV     44H,A
  345.       MOV     45H,B

  346.       MOV     A,3CH
  347.       MOV     B,#0AH
  348.       DIV     AB
  349.       MOV     46H,A
  350.       MOV     47H,B

  351.       LCALL   SET_CODE
  352. RET


  353. ;****************************************************

  354. FIVE_SECOND:
  355.          CLR        TR1
  356.          CLR        P2.6
  357.          SETB       P3.1
  358.          SETB       P3.0
  359.          LCALL      DELAY_MINE1
  360.          CLR        P3.0
  361.          CLR        P3.1
  362.          CLR        P2.6

  363.          SETB       P3.5
  364.          SETB       P3.4
  365.          CLR        TR1

  366. STOP_AT_C:
  367.         MOV     R1,#38H
  368.         LCALL   SETCODEALL
  369.         JB      20H.1,C_WAKE_LE
  370.         LCALL   OUT
  371.         LJMP    STOP_AT_C

  372. C_WAKE_LE:
  373.         SETB    TR1

  374. RET

  375. ;****************************************************
  376. ;****************************************************

  377. BOLK:
  378.         SETB    TR1
  379.         MOV     5AH,#20
  380.         

  381.         MOV     R5,#05H
  382. FIRST_TURN_RIGHT1:
  383.         MOV      R6,#0FFH
  384. FIRST_TURN_RIGHT2:
  385.         LCALL     DELAY        
  386.         DJNZ      R6,FIRST_TURN_RIGHT2        
  387.         DJNZ      R5,FIRST_TURN_RIGHT1
  388.                
  389.         

  390. SEEK_LAMP:
  391.         LCALL   TURN_TO_LAMP
  392.         MOV     C,P0.1
  393.         JNC     HOME
  394.         JB      20H.6,SEEK_LAMP

  395.         MOV     C,P0.6
  396.         JC      SEEK_LAMP
  397. AV:     LCALL   AVOID_WHITE_BOLK
  398.         MOV     C,P0.6
  399.         JNC     AV
  400.         SETB    20H.6

  401.         LJMP    SEEK_LAMP

  402. RET

  403. ;******************************************************

  404. TURN_TO_LAMP:
  405.         MOV  C,P0.3
  406.         JNC  LOOK_RIGHT
  407.         LCALL  TURN_LEFT_MIDDLE
  408.         RET
  409. LOOK_RIGHT:
  410.         MOV     C,P0.5
  411.         MOV     R6,#4FH
  412. FORWARDLIGHT:
  413.         LCALL   DELAY
  414.         DJNZ    R6,FORWARDLIGHT
  415.         JNC     TURN_TO_LAMP_END
  416.         LCALL   TURN_RIGHT_MIDDLE
  417.         RET

  418. TURN_TO_LAMP_END:
  419. RET

  420. ;******************************************************

  421. ;******************************************************
  422. AVOID_WHITE_BOLK:
  423.          SETB    P2.7
  424.          SETB    P2.6
  425.          MOV     5AH,#30
  426.          MOV    R6,#3FH
  427. AVOID_LOOP:
  428.          LCALL  DELAY
  429.          DJNZ   R6,AVOID_LOOP

  430.          MOV     C,P0.6
  431.          JNC     AVOID_WHITE_BOLK
  432.          MOV     5AH,#23
  433.          CLR     P2.6
  434. RET
  435. ;******************************************************

  436. TURN_RIGHT_MIDDLE:
  437.          MOV      5AH,#30
  438. TURN_RIGHT_MIDDLE_START:
  439.          CLR    P2.7
  440.          SETB   P2.6
  441.          MOV    C,P0.3
  442.          JNC    TURN_RIGHT_MIDDLE_START
  443.          CLR    P2.6
  444.          MOV    5AH,#23
  445. RET

  446. ;******************************************************

  447. TURN_LEFT_MIDDLE:
  448.           MOV    5AH,#30
  449. TURN_LEFT_MIDDLE_START:
  450.          SETB   P2.7
  451.          SETB   P2.6
  452.           MOV    C,P0.5
  453.          JNC    TURN_RIGHT_MIDDLE_START
  454.          CLR    P2.6
  455.          MOV    5AH,#23H
  456. RET

  457. ;******************************************************

  458. DELAY:
  459.         MOV     R7,#0FFH
  460. DELAY_LOOP:
  461.         DJNZ    R7,DELAY_LOOP
  462. RET

  463. ;******************************************************



  464. ;****************************************************

  465. HOME:
  466.         MOV     IE,#0H
  467.         MOV     IE,#0H

  468.         CLR     P2.6
  469.         CLR     P3.0

  470. HOME_WAIT:
  471.         CLR     P2.6
  472.         CLR     P3.0
  473.         SETB    P3.4
  474.         LCALL   KEY_QUERY     ; 查询键盘
  475.         LCALL   TIP_SET_CODE  ; 设置显示值
  476.          MOV     R1,#44H
  477.          LCALL   SET_CODE
  478.         LCALL   OUT           ; LED 输出
  479.         LJMP    HOME_WAIT
  480. RET

  481. ;******************************************************

  482. KEY_QUERY:
  483.         LCALL   KEY
  484.         JNC    KEY_QUERY_END
  485.         LCALL   KEY
  486.         JNC      KEY_QUERY_END
  487.         LCALL   DEAL_KEY
  488. KEY_WA:
  489.         LCALL   KEY
  490.         JC      KEY_WA
  491. KEY_QUERY_END:
  492. RET


  493. RET

  494. ;******************************************************

  495. TIP_SET_CODE:

  496.         MOV  A,59H
  497.         JZ   SET_TIME

  498.         MOV     R0,#46H
  499.         MOV     B,#02H
  500.         MUL     AB

  501.         ADD     A,R0
  502.         MOV     R0,A
  503. SET_NUM:
  504.         MOV     A,@R0
  505.         MOV     B,#0AH
  506.         DIV     AB
  507.         MOV     44H,A
  508.         MOV     45H,B

  509.         INC     R0
  510.         MOV     B,#0AH
  511.         MOV     A,@R0
  512.         DIV     AB
  513.         MOV     46H,A
  514.         MOV     47H,B
  515.         RET

  516. SET_TIME:
  517.         MOV     R0,#42H
  518.         LJMP    SET_NUM

  519. RET

  520. ;*****************************************************

  521. OUT:
  522.         MOV     R0,#30H
  523.         MOV     R2,#6H
  524.         MOV     R4,#0H
  525. LOOP:
  526.         MOV     A,@R0
  527.         LCALL   OUTPUT
  528.         INC     R0
  529.         INC     R4
  530.         DJNZ    R2,LOOP
  531. RET

  532. ;*******************************************************

  533. OUTPUT: ;在A中是要显示的数据,R4中是要显示的位
  534.         MOV     R3,#8H
  535.         CLR     P1.3

  536. OUT_LOOP:
  537.         RLC     A
  538.         MOV     P1.2,C
  539.         CLR     P1.4
  540.         NOP
  541.         NOP
  542.         NOP
  543.         SETB    P1.4
  544.         NOP
  545.         NOP
  546.         NOP
  547.         DJNZ    R3,OUT_LOOP
  548. OUT_LOOP_END:
  549.         MOV     P1,R4
  550.         SETB    P1.3
  551.         LCALL   DELAY
  552.         CLR     P1.3
  553. RET

  554. ;******************************************************

  555. SET_CODE:
  556.         MOV     R0,#44H
  557.         MOV     R1,#30H
  558.         MOV     R2,#4H
  559. SET_CODE_LOOP:
  560.         MOV     A,@R0
  561.         MOV     DPTR,#TAB
  562.         MOVC    A,@A+DPTR
  563.         MOV     @R1,A
  564.         INC     R0
  565.         INC     R1
  566.         DJNZ    R2,SET_CODE_LOOP

  567.         ;以下是显示是第几个雷
  568.         MOV     A,3AH
  569.         MOV     DPTR,#TAB
  570.         MOVC    A,@A+DPTR
  571.         MOV     35H,A
  572.         ;以下是使一个LED为暗
  573.         MOV     34H,#0H
  574. RET

  575. ;******************************************************

  576. TAB:   DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H

  577. ;*****************************************************
  578. KEY:
  579.         MOV     58H,#0FEH;
  580.         MOV     R1,#4H
  581. KEY_LOOP:
  582.         MOV     P1,58H
  583.         MOV     A,P1
  584.         CJNE    A,58H,KEY_NEXT1
  585. ……………………

  586. …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码


所有资料51hei提供下载:
大赛用智能电动车制作源程序.rar (124.43 KB, 下载次数: 14)




评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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