电子设计毕业设计基于两个单片机串行通信的电子密码锁资料.docx

上传人:b****6 文档编号:5586604 上传时间:2022-12-28 格式:DOCX 页数:55 大小:705.24KB
下载 相关 举报
电子设计毕业设计基于两个单片机串行通信的电子密码锁资料.docx_第1页
第1页 / 共55页
电子设计毕业设计基于两个单片机串行通信的电子密码锁资料.docx_第2页
第2页 / 共55页
电子设计毕业设计基于两个单片机串行通信的电子密码锁资料.docx_第3页
第3页 / 共55页
电子设计毕业设计基于两个单片机串行通信的电子密码锁资料.docx_第4页
第4页 / 共55页
电子设计毕业设计基于两个单片机串行通信的电子密码锁资料.docx_第5页
第5页 / 共55页
点击查看更多>>
下载资源
资源描述

电子设计毕业设计基于两个单片机串行通信的电子密码锁资料.docx

《电子设计毕业设计基于两个单片机串行通信的电子密码锁资料.docx》由会员分享,可在线阅读,更多相关《电子设计毕业设计基于两个单片机串行通信的电子密码锁资料.docx(55页珍藏版)》请在冰豆网上搜索。

电子设计毕业设计基于两个单片机串行通信的电子密码锁资料.docx

电子设计毕业设计基于两个单片机串行通信的电子密码锁资料

1引言1

2系统概述3

3方案选择4

**密码锁功能实现方法选择4

**方案1——基于一个51单片机的电子密码锁设计4

**方案2——基于两个单片机串行通信的电子密码锁4

**语音芯片的选择5

4系统硬件电路的设计7

**系统核心部分——闪电存储型器件AT89S527

**AT89S52具有下列主要性能7

**AT89S52的引脚及功能8

**信号引脚的第二功能9

**串口通信10

**串口通信方式10

**串行通信控制寄存器11

**数据发送与接收11

**语音电路12

**语言芯片ISD254012

**ISD2540典型应用15

**工作模式17

**分段录放音18

**语音控制电路18

**电平转换电路19

**电平转换芯片19

**MAX232芯片20

**连接电路图20

**键盘电路21

**单片机键盘和键盘接口概述21

**单片机键盘接口和键功能的实现22

5系统程序的设计26

**外部单片机发送密码程序的设计26

**键处理的流程图27

**内部单片机程序28

**语音播放调用程序28

6测试结果30

结论31

参考文献32

附录1:

程序33

附录2:

整体电路图41

外文翻译43

致谢59

1引言

自从20世纪70年代问世以后,单片机作为微型计算机一个很重要的分支,应用广泛,发展迅速,已对很多领域产生了重大影响。

尤其是美国Intel公司生产的MCS-51系列单片机,由于其具有集成度高、处理功能强、可靠性好、系统结构简单、价格低廉、易于使用等优点,在我国已经得到广泛使用,并已经在各个技术领域得到了迅猛发展。

单片机不仅在控制外围器件中有着重要的用途,其通信功能在现代控制系统中越来越显得重要。

在众多的连接方案中,当然包括传统串口设备。

由于串行通讯方式具有使用线路少、成本低,特别是在远程传输时可避免多条线路特性的不一致,因而被广泛采用。

串行通信应用在产业自动化设备已有三十多年历史。

在串行通信时,要求通信双方都采用一个标准接口,使不同的设备可以方便地连接起来进行通信。

RS-232-C接口(又称EIARS-232-C)是目前最常用的一种串行通信接口。

它是在1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。

它的全名是“数据终端设备(DTE)和数据通讯设备(DCE)之间串行二进制数据交换接口技术标准”。

该标准规定,采用一个25个脚的DB25连接器,对连接器的每个引脚的信号内容加以规定,还对各种信号的电平加以规定。

RS-232虽然被广泛接受,但数据传输的速度、范围、网络化都存在局限性,因不同需求发展出如RS-422、RS-485等标准接口,RS-422和RS-485通过对数据信号和控制信号使用差动电压从而克服了这些限制,也正是这些改进使得各种串口设备被应用于非常广泛的行业。

目前,串口已经成为各公司很多产品的标准配置。

在通信中,常用串行通信的方式实现下位机数据的采集和上位机对下位机的控制。

由于串行通信是在一根传输线上一位一位地传送信息,所以传输线少,适合远距离传输。

单片机之间的通信采用异步串行通信RS-232接口。

在日常生活和工作中,住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存通常多以加锁的方式来保存。

目前,最常用的锁是20世纪50年代意大利人设计的机械锁,其机构简单、使用方便、价格便宜。

但在使用中暴露了很多缺点:

一是机械锁是靠金属制成的钥匙上的不同齿形与锁芯的配合来工作的。

据统计,每4000把锁中就有两把锁的钥匙齿牙相同或类似,故安全性低。

根据国外的统计资料,装有电子防盗装置的商业区或居民区盗窃犯罪率平均下降30%左右。

二是钥匙一旦丢失,无论谁捡到都可以将锁打开。

三是机械锁的材料大多为黄铜,质地较软,容易损坏。

四是机械锁钥匙易于复制,不适于诸如宾馆等公共场所使用。

出于安全、方便等方面的需要,许多智能锁(如指纹辨别、IC卡识别)已相继问世,但这类产品的特点是针对特定指纹或有效卡,只能适用于保密要求高且仅供个别人使用的箱、柜、房间等。

另外,卡片式的IC卡易丢失,加上其成本一般较高,在一定程度上限制了这类产品的普及和推广。

随着人们生活水平的提高,电子密码防盗锁作为防盗卫士的作用日趋重要。

电子密码防盗锁用密码代替钥匙,不但省去了佩戴钥匙的烦恼,也从根本上解决了普通门锁保密性差的缺点。

如果采用4位密码,则密码组合可达到l0000,每增加l位,密码组合就增加l0倍;同时,在内部的单片机可以显示密码和设置新密码。

本设计是单片机之间的串行通信应用于电子密码锁,同时电子密码锁还具有语音提示的功能,方便了用户的操作,可广泛的应用于新型小区单元门、超市的存储柜、智能取款机等。

 

2系统概述

本设计由语音播放、单片机、键盘、数码显示和电源模块等五部分组成,系统框图如图2-1所示。

其中单片机部分的作用是控制语音播放、键盘和数码显示;语音播方部分用于播放相应提示音;键盘用来输入密码;显示部分用来显示输入的密码;电源模块则为整个电路提供电源。

 

图2-1系统框图

 

3方案选择

由于电子密码锁的种类比较多,因此方案选择在设计中是至关重要的。

正确地选择方案可以减小开发难度,缩短开发周期,降低成本,更快地将产品推向市场。

**密码锁功能实现方法选择

**方案1——基于一个51单片机的电子密码锁设计

只用一个51单片机完成电子密码锁[1]的功能,包括输入密码的比较、显示、设置新密码。

用4×4键盘组成0~9数字键以及确认、取消功能键,用6位7段数码管组成显示电路提示信息,其工作过程如下:

●加电后,显示“888888”。

●输入过程中,如果不小心出现输入错误,可按“取消”键清除屏幕,取消此次输入,此时显示“888888”。

再次输入需要输入所有6位密码。

●当密码输入完毕按下“确认”键时,单片机将输入的密码与设定的密码比较,若密码正确,则发光二极管亮1秒钟(以此表示密码锁打开)。

此种方法实现了简单密码锁的基本功能,但其不能修改密码,而且不适合远距离传输,例如作为新型小区单元门就不宜采用此法,因为单元门离居民用户家中距离较远。

**方案2——基于两个单片机串行通信的电子密码锁

电子号码锁在实际应用中应该有两部分,一部分在外部,有键盘部分和密码显示;另一部分内部,设置密码、显示密码。

使用单片机自身带有的串口可以很方便的实现单片机之间的通信,使输入的密码值传送到主机检验是否是正确的密码。

其工作过程如下:

●加电后,显示“000000”。

●在外部键盘输入密码,数码管显示相应数字。

●输入过程中,如果不小心出现输入错误,可按“取消”键清除屏幕,取消此次输入,此时显示“000000”。

再次输入需要输入所有6位密码。

●当6为输入密码全部输入完毕后,按“确认”键,内部、外部数码管显示同时清零。

●在内部数码管显示外部键盘输入密码,并与预设密码比较,发出密码正确与否的提示音,密码正确的话,放光二极管点亮,表明密码锁打开。

●管理员可以使用内部键盘察看当前密码、修改密码、同时使用内部键盘也可以打开电子密码锁。

也会有相应提示音提示操作。

这种方案,用户可以在内部显示当前密码、设置新密码、打开密码锁,在内部进行的操作有效地提高了密码的可靠性。

串口通信的使用延长了传输距离,并在操作时由相应提示信息,从而在实际生活中有很好的实用性。

所以本设计采用此种方法。

**语音芯片的选择

表3-1普遍的语音芯片

型号

特征

 

TE6310

语音长度:

10sec

采样频率(KHz):

6.4

放音触发:

放音触发

工作电压(V):

4.5~5.5

工作电流(mA):

30

静态电流(uA):

2

 

TE6332

语音长度:

32sec

采样频率(KHz):

4~6.4

MIC前置:

YES

工作电压(V):

2.7~3.3

工作电流(mA):

10

 

ISD1420

语音长度:

20sec

采样频率(KHz):

6.4

放音触发:

边缘/电平

工作电压(V):

4.5~5.5

工作电流(mA):

30

静态电流(uA):

10

 

ISD2540

语音长度:

40sec

采样频率(KHz):

6.4

放音触发:

电平

工作电压(V):

4.5~5.5

工作电流(mA):

30

静态电流(uA):

2

语音芯片[2]就是在人工或者控制器的控制下可以录音和放音的芯片。

目前市场上流行的语音芯片有很多,比较常见和使用较为普遍的语音芯片如表3-1所示。

从性价比的角度考虑,美国的ISD公司的ISD系列语音芯片可谓一枝独秀。

ISD(Informationstoragedevice)系列语音芯片采用具有以下优点[3]:

●采用模拟数据在半导体存储器直接存储的专利技术,即将模拟语音数据直接写入单个存储单元,不需要经过A/D、D/A转换。

●内部集成了大容量的EEPROM,不再需要扩展存储器。

●控制简单,控制引脚与TTL电平兼容。

●集成度高、方便使用。

●能较好地真实再现语音的自然效果,避免了一般固体语音电路因为量化和压缩所造成的量化失真。

它采用直接模拟存储技术(DAST),将原始的语音信号以模拟形式直接存人不挥发存储器中,无须A/D和D/A转换。

这种突破性的EEPROM存储方法同其它的数字存储方式相比,不仅增加了存储容量,而且提高了语音信号存储与还原的保真度。

该芯片内部集成了振荡电路、前置放大器、自动增益控制、抗混叠滤波器、平滑滤波器、输出放大器等物理部件,具有易与微处理器接口、零功率存储、方便的存储与回放模式。

ISD25XX系列语音芯片提供32-120s的录放时间,根据该系统实际需要录制内容的时间长度,选用了ISD2540语音芯片,其录音时间长度为40秒。

 

4系统硬件电路的设计

按照系统设计功能的要求,初步确定设计系统由两大部分组成,分为内外大部分。

外部单片机部分可负责外部键盘号码的采集和显示,而内部单片机部分主要负责密码的设置、显示、判断发送来的外部键盘输入码是否是密码和语音播放功能的实现。

两大部分内部分别有键盘输入电路、数码显示电路,此外为实现语音播放功能在主单片机部分还应有语音播放芯片电路。

主控制芯片使用52系列AT89S52单片机,接口电平转换芯片选用Maxim公司的MAX232,语音芯片采用美国的ISD公司的ISD2540芯片[4]。

 

图4-1电子密码锁电路系统构成框图

**系统核心部分——闪电存储型器件AT89S52

**AT89S52主要性能

AT89S52具有下列主要性能[5]:

●8KB可改编程序Flash存储器(可经受1000次的写入/擦除周期)。

●全静态工作:

0Hz~24MHz。

●三级程序存储器保密。

●128×8字节内部RAM。

●32条可编程I/O线。

●2个16位定时器/计数器。

●6个中断源。

●可编程串行通道。

●片内时钟振荡器。

**AT89S52的引脚及功能

AT89S52单片机的管脚说明如图4-2所示。

 

图4-2AT89S52的管脚

(1)主要电源引脚

①VCC电源端

②GND接地端

(2)外接晶体引脚XTAL1和XTAL2

①XTAL1接外部晶体的一个引脚。

在单片机内部,它是构成片内振荡器的反相放大器的输入端。

当采用外部振荡器时,该引脚接收振荡器的信号,既把此信号直接接到内部时钟发生器的输入端。

②XTAL2接外部晶体的另一个引脚。

在单片机内部,它是上述振荡器的反相放大器的输出端。

采用外部振荡器时,此引脚应悬浮不连接。

(3)控制或与其它电源复用引脚RST、ALE//PROG、/PSEN和/EA/VPP

①RST复位输入端。

当振荡器运行时,在该引脚上出现两个机器周期的高电平将使单片机复位。

②ALE/PROG当访问外部存储器时,ALE(地址锁存允许)的输出用于锁存地址的低位字节。

即使不访问外部存储器,ALE端仍以不变的频率(此频率为振荡器频率的1/6)周期性地出现正脉冲信号。

因此,它可用作对外输出的时钟,或用于定时目的。

然而要注意的是:

每当访问外部数据存储器时,将跳过一个ALE脉冲。

在对Flash存储器编程期间,该引脚还用于输入编程脉冲(/PROG)[6]。

③/PSEN程序存储允许(/PSEN)输出是外部程序存储器的读选通信号。

当AT89S52/LV52由外部程序存储器取指令(或常数)时,每个机器周期两次/PSEN有效(既输出2个脉冲)。

但在此期间内,每当访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

④/EA/VPP外部访问允许端。

要使CPU只访问外部程序存储器(地址为0000H~FFFFH),则/EA端必须保持低电平(接到GND端)。

当/EA端保持高电平(接VSS端)时,CPU则执行内部程序存储器中的程序。

(4)输入/输出引脚P0.0~P0.7、P1.0~P1.7、P2.0~P2.7和P3.0~P3.7

①P0端口(P0.0~P0.7)P0是一个8位漏极开路型双向I/O端口。

作为输出口用时,每位能以吸收电流的方式驱动8个TTL输入,对端口写1时,又可作高阻抗输入端用。

②P1端口(P1.0~P1.7)P1是一个带有内部上拉电阻的8位双向I/O端口。

P1的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。

对端口写1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。

作输入口时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。

③P2端口(P2.0~P2.7)P2是一个带有内部上拉电阻的8位双向I/O端口。

P2的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。

对端口写1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。

P2作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。

④P3端口(P3.0~P3.7)P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。

当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。

作为输入,由于外部下拉为低电平,P3口将输出电流,这是由于上拉的缘故。

**信号引脚的第二功能

由于工艺及标准化等原因,芯片的引脚数目是有限制的,例如MCS-51系列单片机芯片引脚的数目是40条,但单片机为实现其功能所需要的信号数目却远远超过此数,因此就出现了供需问题。

解决这一问题唯一可行的办法是“复用”,即给一些信号引脚赋予双重功能。

如果我们把前述的信号定义为引脚第一功能的话,则根据需要再定义的信号就是它的第二功能。

第二功能信号定义主要集中在P3口线中,另外再加上几个其它信号线。

(1)EPROM存储器程序固化所需要的信号

P3口也可作为AT89S52的一些特殊功能,这些特殊功能见表4-1[7]。

有内部EPROM的单片机芯片(例如87C51),为写入程序需提供专门的编程脉冲和编程电源,它们也是由信号引脚以第二功能的形式提供的,即:

编程脉冲:

30脚(ALE/PROG)

编程电压(25V):

31脚(/EA/VPP)

表4-1P3端口的特殊功能

端口引脚

兼用功能

P3.0

RXD(串行输入口)

P3.1

TXD(串行输出口)

P3.2

/INT0(外部中断0)

P3.3

/INT1(外部中断1)

P3.4

T0(定时器0的外部输入)

P3.5

T1(定时器1的外部输入)

P3.6

/WR(外部数据存储器写选通)

P3.7

/RD(外部数据存储器读选通)

(2)备用电源引入

MCS-51单片机的备用电源也是以信号引脚第二功能的方式由9脚(RST/VPD)引入的。

当电源发生故障,电压降低到下限值时,备用电源经此端向内部RAM提供电压,以保护内部RAM中的信息不丢失。

**串口通信

通信主要有两种方式:

并行通信和串行通信。

并行通信是在传送数据过程中每个字节的各位同时进行传送的通信方式,而串行通信[8]是指每个字节的各位分别进行传送的通信方式。

**串口通信方式

AT89S52串行口可设置四种工作方式[8],可有8位、10位和11位帧格式。

本系统中,AT89S52采用串行口工作于方式1,即每帧10位的异步通信格式:

1位起始位,8位数据位(低位在前),1位停止位。

当SM0=0,SM1=1时,串行口选择方式1。

其帧格式为:

图4-3帧格式图

**串行通信控制寄存器

(1)串行控制寄存器(SCON)

SCON的地址为98H,用于选择串行口的工作方式和指示串行口的工作状态。

各位含义如下:

①SM0、SM1:

串行口工作方式选择位。

②SM2:

多机通信选择位。

③REN:

串行口允许接收位。

‘1’时允许接收,‘0’时禁止接收。

④TI:

串行口发送中断标志位。

在方式1中,于发送停止位之前,由硬件置位。

因此TI=1,表示帧发送结束。

⑤RI:

串行口接收中断标志位。

在方式1中,当接收到停止位时,该位由硬件置位。

RI=1,表示帧接收结束。

(2)串行数据缓冲器(SBUF)

串行数据缓冲器SBUF的地址为99H,用来存放需发送和接收的数据,它由两个独立的寄存器组成,一个是发送缓冲器,另一个是接收缓冲器,它们占用同一地址(99H)。

当执行写SBUF指令时,数据写入到串行口发送缓冲器中,读SBUF就是读串行口接收缓冲器。

(3)电源控制寄存器(PCON)

PCON的地址为87H,该寄存器的最高位(SMOD)是串行口波特率的倍增位,当SMOD=1时,串行口波特率加倍。

系统复位时,SMOD=0。

(4)中断允许寄存器(IE)

在IE中,ES位为串行中断允许控制位。

ES=0时禁止串行中断,ES=1时允许串行中断。

**数据发送与接收

(1)数据发送

在不发送数据时,TXD端保持高电平。

当执行写SBUF的指令时,便启动一次发送过程;发送数据时,先发送一个起始位,该位通知接收端开始接收,也使发送和接收过程同步。

接下来发送8位数据,先发送低位,最后发送的是高电平的停止位。

(2)数据接收

REN=1,CPU允许串行口接收数据,接收数据开始于检测到RXD(P3.0)端发生一个“1”到“0”的跳变。

先接收起始位,然后依次将采样RXD端并将数据移入移位寄存器中。

若满足条件RI=0且SM2=0或接收到停止位,则将前8位数据送入SBUF并置位RI;如果上述条件不满足,则数据丢失。

(3)波特率的设定[9]

串口方式1的波特率是可变的,由定时器T1的溢出率决定:

其中,SMOD为PCON寄存器最高位的值。

溢出率为溢出周期的倒数,假定计数初值为X,则计数溢出周期为

             

其中,fosc为晶振频率。

则波特率计算公式为:

由波特率算出计数初值,以便进行定时器的初始化。

初值X确定如下:

**语音电路

**语言芯片ISD2540

美国ISD公司的2500系列芯片,常见的按录放时间40秒、60秒和120秒分成ISD2540、2560和25120多个品种,该系列产品的电路原理图和控制结构完全相同。

ISD2500系列和1400系列语音电路一样,具有抗断电、音质好,使用方便,无需专用的语音开发系统等相同优点。

它的最大特点在于片内E2PROM容量为240K(1400系列为128K),所以录放时间长;有9个地址输入端(1400系列仅为8个),寻址能力可达512位;最多能分320段;设有OVF(溢出)端,便于多个器件级联。

采用直接模拟存储技术(DAST),将原始的语音信号以模拟形式直接存入半导体存储器中,无须A/D和D/A转换。

这种突破性的EEPROM存储方法同其它的数字存储方式相比,不仅增加了存储容量,而且提高了语音信号存储与还原的保真度。

该芯片内部集成了振荡电路、前置放大器、自动增益控制、抗混叠滤波器、平滑滤波器、输出放大器等物理部件,具有易与微处理器接口、零功率存储、方便的存储与回放模式。

(1)DIP封装图

 

引线端

名称

功能

1-7

A0/M0~A6/M6

地址

8-10

A7~A9

地址

11

AUXIN

辅助输入

12,13

VSSD、VSSA

数字和模拟地

14,15

SP+、SP-

扬声器输出

16,28

VCCA、VCCD

模拟、数字信号电源正极

17,18

MIC、MICREF

麦克风输入和输入参考端

19

AGC

自动增益控制

20,21

ANAIN、OUT

模拟信号输入和输出

22

/OVF

溢出

23

/CE

片选(低电平允许芯片工作)

24

PD

芯片低功耗状态控制

25

/EOM

录放音结束信号输出

26

XCLK

外部时钟

27

/P/R

录/放控制选择

图4-4ISD2540DIP封装图

(2)各引线端功能[10]

表4-2各引线端功能

●地址线:

A0~A6、A8、A9。

共有512种组合状态。

最前面的320个状态作为内部存储器的寻址作用,最后192个状态作为操作模式。

●电源:

VCCA、VCCD。

芯片内部的模拟和数字使用不同的电源总线。

模拟和数字电源最好分别走线。

●地线:

VSSA、VSSD。

芯片内部的模拟和数字也使用不同的地线。

●节电控制:

PD。

本段拉高使芯片停止工作,进入不耗电的节电状态,芯片发生溢出,即/OVF端输出低电平后,要将本端短暂变高复位芯片,才能使之再次工作。

●片选:

CE。

本端变低后,而且PD为低时,允许进行录放操作。

芯片在本端的下降沿锁存地址线和P/-R端的状态。

●录放模式:

P/-R。

本端状态在/CE的下降沿锁存。

高电平选择放音,低电平选择录音。

●信息结尾标志:

EOM。

EOM标志在录音时由芯片自动插入到该信息的结尾。

放音遇到EOM时,本端输出低电平脉冲。

芯片内部会检测到电源电压以维护信息的完整性,当电压低于3.5V时,本端变低,芯片只能放音。

●溢出标志:

OVF。

芯片处于存储空间末尾时,本端输出低电平脉冲表示溢出,之后本端状态跟随CE端的状态,直到PD端变高。

●麦克输入:

MIC。

本端连至片内前置放大器。

片内自动增益控制电路(AGC)将置增益控制在-15dB至24dB。

●麦克参考:

MICREF。

本端是前置放大器的反向输入。

当以差分形式连接话筒时,可减少噪声,提高共模抑制比。

●自动增益控制:

AGC。

AGC动态调整前置增益以补偿话筒输入电平的宽幅变化,使得录制变化很大的音量(从耳语到喧嚣声)时失真都能保持最小。

●模拟输出:

ANAOUT。

前置放大器的输出,前置电压增益取决于AGC端电平。

●模拟输入:

ANAIN。

本端为芯片录音信号输出。

对话筒输入来说ANAOUT端应通过外接电容连至本端。

●喇叭输出:

SP+、SP-。

对输出端级驱动16Ω以上的喇叭。

单端使用时必须在输出端和喇叭之间接耦合电容,而双端输出既不用电容又不能将功率提高至4倍。

录音和节电模式下,他们保持为低电平。

●辅助输入:

AUXIN。

当/CE和P/-R为高,放音不进行,或处于放音溢出状态时,本端的输入信号过内部功放驱动喇叭输出端。

当多个2500芯片级联时,后缀的喇叭输出通过本端连接到本机的输出放大器。

●外部时钟:

XCLK。

本端内部有

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 管理学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1