VHDL交通灯课程设计.doc
《VHDL交通灯课程设计.doc》由会员分享,可在线阅读,更多相关《VHDL交通灯课程设计.doc(21页珍藏版)》请在咨信网上搜索。
目录 引言 0 1.系统的设计要求 1 2.系统分析 1 2.1 系统构成 1 2.2 系统实现过程 2 3.具体模块设计 2 3.1消抖模块 2 3.2 交通灯模块 2 3.3 交通灯时长设置模块 3 3.8 整体结构电路图 4 4.程序设计 4 4.1消抖模块源代码 4 4.2 交通灯时长设置模块 5 4.3 交通灯模块 6 4.4 顶层文件源代码 9 5.运行结果与分析 11 6.结束语 12 参考文献 13 引言 不同的城市存在着不同的城市问题,但其中有一个共同的问题就是城市交通。在交叉路口如何解决混合交通流中的相互影响,就是解决问题的关键所在!随着我国经济的稳步发展,人民生活水平的日渐提高,越来越多的汽车进入寻常百姓的家庭,再加上政府大力地发展公交、出租车行业,道路上的车辆越来越多,使得城市的交通成为了一个主要的问题。严重的拥堵现象,逐渐恶化的城市环境,都给广大市民带来了许多困扰。要解决这些问题不仅要求道路越来越宽阔,而且更需要有新的交通管理模式出台。 实现路口交通灯系统的控制方法很多,可以用标准逻辑器件、可编程序控制器PLC、单片机等方案来实现。但是这些控制方法的功能修改及调试都需要硬件电路的支持,在一定程度上增加了功能修改及系统调试的困难。交通系统未来的发展趋势就是要提高通行能力,加强环境保护,开展智能化运输和环保专项技术的研究,并且要做到以人为本,重点开展交通安全技术的研究,在这个过程中要确定经济合理的目标,促进新材料的广泛应用和开发。 EDA 技术是用于电子产品设计中比较先进的技术,可以代替设计者完成电子系统设计中的大部分工作,而且可以直接从程序中修改错误及系统功能而不需要硬件电路的支持,既缩短了研发周期,又大大节约了成本,受到了电子工程师的青睐。 1. 系统的设计要求 为了满足步行街的要求,此交通灯须具备以下功能: 1.正常情况下保证主干道的畅通。 2. 当步行街道上的行人要穿过主干道时,通过设置的按钮来发出请求。 3. 当有人按下此按钮时,主干道变为黄灯,设置计数器时间为X秒。 4. X秒过后,主干道变为红灯,计数器继续计时(计时时间为Y秒),在Y秒内若有人再次按按钮,计数器不重新计时。 5. 步行街绿灯闪烁时间为Y1秒,(Y-Y1)秒后主干道变为绿灯,车辆通行。且咬保证车辆通行一定时间(Z秒)。在此时间内,行人按按钮无效。Z秒过后,若有人再按下按钮,又出现(3)中的状态。 计数器的计时时间长短X~Y~Z可以任意设定。 2.系统分析 2.1 系统构成 行人按下红灯按钮 消抖模块 设置人行道绿灯时长 消抖模块 交通灯模块 计数器模块 状态机模块 设置交通灯时长模块 控制模块 消抖模块 设置马路红灯后按键的无效时间 步行街自助式交通灯控制器控制器分为3个模块:消抖模块,交通灯模块,交通灯时长设置模块。 2.2 系统实现过程 最初状态是人行道红灯,马路绿灯。当有行人按下按钮时,马路的红灯变为黄灯,持续一个时钟周期的时间。然后马路的黄灯变为绿灯,此时人行道的红灯也变为绿灯,然后持续HUMAN_TIME个时钟的周期的时间。然后人行灯的绿灯变为闪烁的绿灯,持续2个时钟的周期的时间,然后人行道的闪烁的绿灯变为红灯,此时马路的红灯也变为绿灯。然后在VEHICLE_TIME个时钟周期内人行道为红灯,马路为绿灯状态保持不变且行人按键无效。 状态如下: 状态 主干道信号灯 步行街信号灯 主干道 步行街道 R红 G绿 Y黄 R红 G绿 S0 0 1 0 1 0 通行 禁行 S1 0 0 1 1 0 车停靠 禁行 S2 1 0 0 0 1 禁行 通行 S3 1 0 0 0 禁行 通行(绿灯闪烁 S4 0 1 0 1 0 通行 禁行 3.具体模块设计 3.1消抖模块 消抖模块DITHER如图2所示,使用硬件消抖原理。 3.2 交通灯模块 交通灯模块LIGHT如图3所示,根据输入GHUMAN_TIME,GHUMAN_CLKT和GVEHICLE_TIME的值,进行减计数,然后根据值判断状态机的状态。 3.3 交通灯时长设置模块 交通灯时长设置模块COUNTER如图4所示,根据设置按键人按键设置人行道绿灯时长和按键屏蔽时长。 图2 DITHER模块 图3 LIGHT模块 图4 COUNTER模块 3.8 整体结构电路图 图5 整体结构电路图 4.程序设计 4.1消抖模块源代码 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; ENTITY DITHER IS PORT(UPIN: IN STD_LOGIC; DOWNIN: IN STD_LOGIC; KEYOUT: OUT STD_LOGIC ); END DITHER; ARCHITECTURE BEHAVE OF DITHER IS SIGNAL OUT1: STD_LOGIC; SIGNAL OUT2: STD_LOGIC; BEGIN OUT1<=NOT( OUT2 AND UPIN ); OUT2<=NOT( OUT1 AND DOWNIN ); KEYOUT<=OUT1; END BEHAVE; 4.2 交通灯时长设置模块 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; ENTITY COUNT IS PORT(CLK: IN STD_LOGIC; CLEAR: IN STD_LOGIC; CLKADD: IN STD_LOGIC; CLKSUB: IN STD_LOGIC; PRE_SET: IN STD_LOGIC; HUMAN_SET: IN STD_LOGIC; RST: IN STD_LOGIC; GHUMAN_TIME: OUT INTEGER RANGE 31 DOWNTO 0; GHUMAN_CLKT: OUT INTEGER RANGE 31 DOWNTO 0; GVEHICLE_TIME: OUT INTEGER RANGE 31 DOWNTO 0); END COUNT; ARCHITECTURE BEHAVE OF COUNT IS SIGNAL HUMAN_TIME: INTEGER RANGE 31 DOWNTO 0; SIGNAL VEHICLE_TIME: INTEGER RANGE 31 DOWNTO 0; SIGNAL SSTATE: STD_LOGIC_VECTOR(3 DOWNTO 0); SIGNAL SCLK: STD_LOGIC; SIGNAL DSCLK: STD_LOGIC; BEGIN SSTATE<="0000" WHEN PRE_SET='0' ELSE HUMAN_SET & CLEAR & CLKADD & CLKSUB; SCLK<=CLKADD OR CLKSUB OR CLEAR; PROCESS (CLK) BEGIN IF(CLK' EVENT AND CLK='1')THEN DSCLK<=SCLK; END IF; END PROCESS; PROCESS(RST,CLEAR,DSCLK) BEGIN IF(RST='1')THEN VEHICLE_TIME<=8; ELSIF(DSCLK' EVENT AND DSCLK='1')THEN CASE SSTATE IS WHEN "0100" => VEHICLE_TIME<= 0; WHEN "0101" => VEHICLE_TIME<= 0; WHEN "0110" => VEHICLE_TIME<= 0; WHEN "0111" => VEHICLE_TIME<= 0; WHEN "0001" => VEHICLE_TIME<= VEHICLE_TIME-1; WHEN "0010" => VEHICLE_TIME<= VEHICLE_TIME+1; WHEN OTHERS => VEHICLE_TIME<= VEHICLE_TIME; END CASE; END IF; END PROCESS; PROCESS (CLEAR,DSCLK) BEGIN IF(RST='1')THEN HUMAN_TIME<=4; ELSIF (DSCLK' EVENT AND DSCLK ='1')THEN CASE SSTATE IS WHEN "1100" => HUMAN_TIME<=0; WHEN "1101" => HUMAN_TIME<=0; WHEN "1110" => HUMAN_TIME<=0; WHEN "1111" => HUMAN_TIME<=0; WHEN "1001" => HUMAN_TIME<=HUMAN_TIME-1; WHEN "1010" => HUMAN_TIME<=HUMAN_TIME+1; WHEN OTHERS => HUMAN_TIME<=HUMAN_TIME; END CASE; END IF; END PROCESS; PROCESS(PRE_SET,RST) BEGIN IF(RST='1')THEN GHUMAN_TIME<=5; GHUMAN_CLKT<=7; GVEHICLE_TIME<=15; ELSIF(PRE_SET' EVENT AND PRE_SET='0')THEN GHUMAN_TIME<=HUMAN_TIME+1; GHUMAN_CLKT<=HUMAN_TIME+3; GVEHICLE_TIME<=HUMAN_TIME+VEHICLE_TIME+3; END IF; END PROCESS; END BEHAVE; 4.3 交通灯模块 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; ENTITY LIGHT IS PORT(SRED: OUT STD_LOGIC; ERED: OUT STD_LOGIC; SGREEN: OUT STD_LOGIC; EYELLOW: OUT STD_LOGIC; EGREEN: OUT STD_LOGIC; GT_SET: IN STD_LOGIC; GHUMAN_TIME: IN INTEGER RANGE 31 DOWNTO 0; GHUMAN_CLKT: IN INTEGER RANGE 31 DOWNTO 0; GVEHICLE_TIME: IN INTEGER RANGE 31 DOWNTO 0; REQUEST: IN STD_LOGIC; CLK: IN STD_LOGIC; RST: IN STD_LOGIC); END LIGHT; ARCHITECTURE BEHAVE OF LIGHT IS TYPE IN_STATES IS (ST0,ST1,ST2,ST3,ST4); SIGNAL CURRENT_STATE: IN_STATES; SIGNAL NEXT_STATE: IN_STATES; SIGNAL START: STD_LOGIC; SIGNAL SIG: INTEGER RANGE 31 DOWNTO 0; BEGIN PROCESS(CURRENT_STATE,RST) BEGIN IF(RST='1' OR CURRENT_STATE=ST0)THEN START<='0'; ELSE START<='1'; END IF; END PROCESS; A:PROCESS(START,CLK,RST) BEGIN IF(RST='1')THEN SIG<=0; ELSIF(CLK' EVENT AND CLK='1')THEN IF(START='1')THEN IF(SIG=GVEHICLE_TIME)THEN SIG<=0; ELSE SIG<=SIG+1; END IF; ELSE SIG<=0; END IF; END IF; END PROCESS A; PROCESS(RST,CLK) BEGIN IF(RST='1')THEN CURRENT_STATE<=ST0; ELSIF (CLK'EVENT AND CLK='1')THEN CURRENT_STATE<=NEXT_STATE; END IF; END PROCESS; PROCESS(CLK,CURRENT_STATE,REQUEST) BEGIN CASE CURRENT_STATE IS WHEN ST0=> ERED<='0';EGREEN<='1';EYELLOW<='0';SRED<='1';SGREEN<='0'; IF(REQUEST='1' AND GT_SET='0')THEN NEXT_STATE<=ST1; ELSE NEXT_STATE<=ST0; END IF; WHEN ST1=> ERED<='0';EGREEN<='0';EYELLOW<='1';SRED<='1';SGREEN<='0'; IF (SIG=1)THEN NEXT_STATE<=ST2; ELSE NEXT_STATE<=ST1; END IF; WHEN ST2=> ERED<='1';EGREEN<='0';EYELLOW<='0';SRED<='0';SGREEN<='1'; IF(SIG=GHUMAN_TIME)THEN NEXT_STATE<=ST3; ELSE NEXT_STATE<=ST2; END IF; WHEN ST3=> ERED<='1';EGREEN<='0';EYELLOW<='0';SRED<='0';SGREEN<=NOT CLK; IF(SIG=GHUMAN_CLKT)THEN NEXT_STATE<=ST4; ELSE NEXT_STATE<=ST3; END IF; WHEN ST4=> ERED<='0';EGREEN<='1';EYELLOW<='0';SRED<='1';SGREEN<='0'; IF(SIG=GHUMAN_CLKT)THEN NEXT_STATE<=ST0; ELSE NEXT_STATE<=ST4; END IF; WHEN OTHERS=> ERED<='0';EGREEN<='1';EYELLOW<='0';SRED<='1';SGREEN<='0';NEXT_STATE<=ST3; END CASE; END PROCESS; END BEHAVE; 4.4 顶层文件源代码 Library ieee; Use ieee.std_logic_1164.all; Use ieee.std_logic_unsigned.all; Entity TrafficLight is Port(clk:in std_logic; clear:in std_logic; rclear:in std_logic; clkADD:in std_logic; rclkADD:in std_logic; clkSUB:in std_logic; rclkSUB:in std_logic; pre_set:in std_logic; human_set:in std_logic; rst:in std_logic; request:in std_logic; rrequest:in std_logic; clk_ls:in std_logic; sred,sgreen:out std_logic; ered,eyellow,egreen:out std_logic); End; Architecture behave of TrafficLight is ponent DITHER is PORT ( UPIN: IN STD_LOGIC; DOWNIN: IN STD_LOGIC; KEYOUT: OUT STD_LOGIC ); End ponent; ponent COUNT is PORT(CLK: IN STD_LOGIC; CLEAR: IN STD_LOGIC; CLKADD: IN STD_LOGIC; CLKSUB: IN STD_LOGIC; PRE_SET: IN STD_LOGIC; HUMAN_SET: IN STD_LOGIC; RST: IN STD_LOGIC; GHUMAN_TIME: OUT INTEGER RANGE 31 DOWNTO 0; GHUMAN_CLKT: OUT INTEGER RANGE 31 DOWNTO 0; GVEHICLE_TIME: OUT INTEGER RANGE 31 DOWNTO 0); End ponent; ponent LIGHT is PORT(SRED: OUT STD_LOGIC; ERED: OUT STD_LOGIC; SGREEN: OUT STD_LOGIC; EYELLOW: OUT STD_LOGIC; EGREEN: OUT STD_LOGIC; GT_SET: IN STD_LOGIC; GHUMAN_TIME: IN INTEGER RANGE 31 DOWNTO 0; GHUMAN_CLKT: IN INTEGER RANGE 31 DOWNTO 0; GVEHICLE_TIME: IN INTEGER RANGE 31 DOWNTO 0; REQUEST: IN STD_LOGIC; CLK: IN STD_LOGIC; RST: IN STD_LOGIC); End ponent; Signal TEMP_GHUMAN_TIME: INTEGER RANGE 31 DOWNTO 0; Signal TEMP_GHUMAN_CLKT: INTEGER RANGE 31 DOWNTO 0; Signal TEMP_GVEHICLE_TIME: INTEGER RANGE 31 DOWNTO 0; Signal TEMP_CLEAR,TEMP_CLKADD,TEMP_CLKSUB,TEMP_REQUEST:std_logic; Begin U1:DITHER port map(clear,rclear,TEMP_CLEAR); U2:DITHER port map(clkADD,rclkADD,TEMP_CLKADD); U3:DITHER port map(clkSUB,rclkSUB,TEMP_CLKSUB); U4:DITHER port map(request,rrequest,TEMP_REQUEST); U5:COUNT port map(CLK,TEMP_CLEAR,TEMP_CLKADD,TEMP_CLKSUB,PRE_SET,HUMAN_SET,RST,TEMP_GHUMAN_TIME,TEMP_GHUMAN_CLKT,TEMP_GVEHICLE_TIME); U6:LIGHT port map(SRED,ERED,SGREEN,EYELLOW,EGREEN,PRE_SET,TEMP_GHUMAN_TIME,TEMP_GHUMAN_CLKT,TEMP_GVEHICLE_TIME,TEMP_REQUEST,CLK_LS,RST); End behave; 5.运行结果与分析 (1)消抖模块仿真波形图: 图6 消抖模块仿真波形图 按键弹起为高电平,按下为低电平。当按键按下时,UPIN变为低电DOWNIN变为高电平,并产生抖动。输出的KEYOUT信号消除抖动。 (2)交通灯模块仿真波形图: 图7交通灯模块仿真波形图 给CLK一个时钟信号,在某一时刻开始赋给RST一个高电平,所有值恢复默认。再给REQUEST赋值一个高电平,然后状态机开始工作,EYELLOW(马路的黄灯)变为高电平,持续一个时钟周期的时间。然后EGREEN(马路的绿灯)变为高电平,此时SGREEN(人行道的绿灯)变为高电平,然后持续HUMAN_TIME个时钟的周期的时间。然后SGREEN(人行灯的绿灯)变为N,持续2个时钟的周期的时间,然后SRED(人行道的红灯)变为高电平,此时ERED(马路的绿灯)变为高电平。然后在VEHICLE_TIME个时钟周期内SRED(人行道红灯)保持高电平,EGREEN(马路的绿灯)保持为高电平。在此过程中,再次给REQUEST高电平对交通灯的电位没有影响。 (3)交通灯时长设置模块仿真波形图: 图8交通灯时长设置模块仿真波形图 给CLK一个时钟信号,在某一时刻给RST一个高电平复位,然后GHUMAN_CLK,GHUMAN_TIME和GVEHICLE_TIME回复默认值。然后再在某一时刻给PRE_SET一个低电平给GHUMAN_CLK,GHUMAN_TIME和 GVEHICLE_TIME赋值, GVEHICLE_TIME的值减1。然后再在某一时刻同时给PRE_SET赋低电平,给HUMAN_SET赋高电平,然后GHUMAN_TIME的值加1,GVEHICLE_TIME的值加1。 (4)顶层文件模块仿真波形图: 图12顶层文件仿真波形图 6.结束语 通过这次课程设计,在收获知识的同时,还收获了阅历,收获了成熟,在此过程中,我们通过查找大量资料,请教老师,以及不懈的努力,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。更重要的是,在实验课上,我们学会了很多学习的方法。而这是日后最实用的,真的是受益匪浅。要面对社会的挑战,只有不断的学习、实践,再学习、再实践。而且,这对于我们的将来也有很大的帮助。以后,不管有多苦,我想我们都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情。 参考文献 [1].侯伯亭,顾新. VHDL 硬件描述语言与数字逻辑电路设计. 西安:西安电子科技大学出版社,1999. [2].EDA技术与VHDL。潘松,黄继业编著。——4版。——北京:清华大学出版社,2013.4 [3].王金明 .数字系统设计VHDL 北京:电子工业出版设,2010。13- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VHDL 交通灯 课程设计
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文