基于单片机的简易计算器设计.docx

上传人:b****6 文档编号:9305572 上传时间:2023-02-04 格式:DOCX 页数:30 大小:66.01KB
下载 相关 举报
基于单片机的简易计算器设计.docx_第1页
第1页 / 共30页
基于单片机的简易计算器设计.docx_第2页
第2页 / 共30页
基于单片机的简易计算器设计.docx_第3页
第3页 / 共30页
基于单片机的简易计算器设计.docx_第4页
第4页 / 共30页
基于单片机的简易计算器设计.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

基于单片机的简易计算器设计.docx

《基于单片机的简易计算器设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的简易计算器设计.docx(30页珍藏版)》请在冰豆网上搜索。

基于单片机的简易计算器设计.docx

基于单片机的简易计算器设计

引言1

第一章设计原理及要求2

1.1设计方案的确定2

1.2系统的设计方案2

1.3系统的设计要求2

第二章硬件模块设计4

2.1单片机AT89C514

2.1.1AT89C51芯片的特点5

2.1.2管脚说明5

2.1.3振荡器特性7

2.1.4芯片擦除7

2.2键盘控制模块7

2.2.1矩阵键盘的工作原理8

2.2.2键盘电路主要器件介绍8

2.3LCD显示模块10

2.3.1显示电路11

2.3.2LCD1602主要技术参数11

2.3.3引脚功能说明11

2.4运算模块(单片机控制)12

第三章软件设计14

3.1功能介绍14

3.2系统流程图14

3.3程序16

第四章系统调试17

4.1软件介绍17

4.1.1KeiluVision2仿真软件简介17

4.1.2protues简介17

4.2软件调试18

4.2.1软件分析及常见故障19

4.2.2仿真结果演示20

4.3硬件调试21

结束语23

参考文献24

附录25

致谢36

引言

计算工具最早诞生于中国,中国古代最早采用的一种计算工具叫筹策,也被叫做算筹。

这种算筹多用竹子制成,也有用木头,兽骨充当材料的,约二百七十枚一束,放在布袋里可随身携带。

另外直到今天仍在使用的珠算盘,是中国古代计算工具领域中的另一项发明,明代时的珠算盘已经与现代的珠算盘几乎相同。

17世纪初,西方国家的计算工具有了较大的发展,英国数学家纳皮尔发明的“纳皮尔算筹”,英国牧师奥却德发明了圆柱型对数计算尺,这种计算尺不仅能做加、减、乘、除、乘方和开方运算,甚至可以计算三角函数、指数函数和对数函数。

这些计算工具不仅带动了计算器的发展,也为现代计算器发展奠定了良好的基础,成为现代社会应用广泛的计算工具。

1642年,年仅19岁的法国伟大科学家帕斯卡引用算盘的原理,发明了第一部机械式计算器,在他的计算器中有一些互相联锁的齿轮,一个转过十位的齿轮会使另一个齿轮转过一位,人们可以像拨电话号码盘那样,把数字拨进去,计算结果就会出现在另一个窗口中,但是它只能做加减运算。

1694年,莱布尼兹在德国将其改进成可以进行乘除的计算。

此后,一直到20世纪50年代末才有电子计算器的出现。

第一章设计原理及要求

1.1设计方案的确定

本设计是以单片机AT89C51为核心的简易计算器设计,要通过芯片AT89C51实现计算器程序运行来完成加、减、乘和除的简单计算功能。

本设计运算模块由AT89C51实现,数据输入模块由4*4矩阵键盘电路实现,输出数据模块由LCD显示电路实现,再外加一个时钟电路和一个复位电路完成整个简易计算器的设计。

1.2系统的设计方案

本设计由以下几部分组成:

AT89C51单片机系统(运算模块)、键盘电路、显示电路、时钟电路和复位电路构成,计算器系统框图如图1-1所示。

图1-1计算器系统框图

1.3系统的设计要求

为了更好地实现系统的功能,硬件电路的设计应该遵循以下原则:

1、优化硬件电路

采用软件设计与硬件设计相结合的方法。

尽管采用软件来实现硬件系统的功能时,也许响应的时间会比单纯使用硬件时长,而且还要占用微处理器(MCU)的时间;但是,用软件实现硬件的功能可以简化硬件结构,提高电路的可靠性。

所以,在设计本系统的时候,在满足可靠性和实时性的前提下,尽可能地通过软件来实现硬件功能。

2、可靠性及抗干扰设计

根据可靠性设计理论,系统所用芯片数量越少,系统的平均无故障时间越长。

而且,所用芯片数量越少,地址和数据总线在电路板上受干扰的可能性也就越小。

因此,系统的设计思想是在满足功能的情况下争取较少数量的芯片。

3、灵活的功能扩展

功能扩展是否灵活是衡量一个系统优劣的重要指标之一。

一次设计往往不能完全考虑到系统的各个方面,系统需要不断完善以及进行功能升级。

进行功能扩展时,应该在原有设计的基础上,通过修改软件程序和少量硬件完成。

对于本系统而言,就是要求在系统硬件不变的情况下,能够通过修改软件程序,完成功能的升级和扩展。

根据提出的系统设计方案,结合以上三条原则,确定了系统硬件的设计。

计算器主要由以下一些功能模块组成:

非编码键盘模块、运算模块(单片机内部)和LCD液晶显示模块等。

该系统的硬件设计采用了模块化的设计方法。

AT89C51单片机、LCD液晶显示屏显示电路和键盘电路是整个电路的核心,它们能实现系统的功能要求。

简易计算器主要包括:

键盘电路、运算电路和输出显示电路。

第二章硬件模块设计

在本设计中主要用到的硬件:

单片机AT89C51、液晶显示屏LCD1602、4*4矩阵键盘。

单片机AT89C51的硬件资源分配:

(1)P3口:

作为输入口,与键盘连接,实现数据的输入;

(2)P0、P2口:

作为输出口(P2口为高位,P0口为低位),控制LCD液晶显示屏显示数据的结果;

(3)P1口和部分P3口:

作为液晶显示屏LCD1602显示输出。

2.1单片机AT89C51

本设计所用单片机采用AT89C51单片机,它兼容于MCS-51系列单片机,而且具有1000次可擦写的FLASHMEMORY,方便于系统的开发以及参数的修改。

尽管它是8位机,但它的处理精度完全满足系统的设计要求。

该种单片机的最高频率可达到24MHz。

在12MHz时,其处理速度完全达到设计要求,AT89C51的实物图及引脚图如图2-1所示。

图2-1单片机AT89C51实物图及引脚图

2.1.1AT89C51芯片的特点

AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机,他的特点如下:

1、与MCS-51兼容

2、1000写/擦循环

3、4K字节可编程闪烁存储器

4、数据保留时间:

10年

5、全静态工作:

0Hz-24Hz

6、三级程序存储器锁定

7、128*8位内部RAM

8、32可编程I/O线

9、两个16位定时器/计数器

10、5个中断源

11、可编程串行通道

12、低功耗的闲置和掉电模式

13、片内振荡器和时钟电路

2.1.2管脚说明

VCC:

供电电压。

GND:

接地。

P0口:

P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。

当P0口的管脚第一次写“1”时,被定义为高阻输入。

P0口能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。

在FLASH编程时,P0口作为原码输入口,当FLASH进行校验时,P0口输出原码,此时P0口外部必须被拉高。

P1口:

P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。

P1口管脚写入“1”后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

在FLASH编程和校验时,P1口作为第八位地址接收。

P2口:

P2口是一个内部提供上拉电阻的8位双向I/O口,P2口缓冲器可接收和输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。

当作为输出时,P2口的管脚被外部拉低,将输出电流,这是由于内部上拉的缘故。

当P2口用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。

在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。

P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3口:

P3口管脚是8个带内部上拉电阻的双向I/O口,可接收和输出4个TTL门电流。

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

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

P3口也可作为AT89C51的一些特殊功能口。

P3口管脚备选功能如下:

P3.0RXD(串行输入口)

P3.1TXD(串行输出口)

P3.2/INT0(外部中断0)

P3.3/INT1(外部中断1)

P3.4T0(记时器0外部输入)

P3.5T1(记时器1外部输入)

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

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

P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:

复位输入。

当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:

当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。

在FLASH编程期间,此引脚用于输入编程脉冲。

在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。

因此它可用作对外部输出的脉冲或用于定时目的。

然而要注意的是:

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

如想禁止ALE的输出可在SFR8EH地址上置0。

此时,ALE只有在执行MOVX时ALE才起作用。

另外,该引脚被略微拉高。

如果微处理器在外部执行状态ALE禁止,置位无效。

/PSEN:

外部程序存储器的选通信号。

在由外部程序存储器取值期间,每个机器周期两次/PSEN有效。

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

/EA/VPP:

当/EA保持低电平时,则在此期间只管外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器,注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此时只管内部程序存储器。

在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

XTAL1:

反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:

来自反向振荡器的输出。

2.1.3振荡器特性

XTAL1和XTAL2分别为反向放大器的输入和输出。

该反向放大器可以配置为片内振荡器。

晶体振荡和陶瓷振荡均可采用。

如采用外部时钟源驱动器件,XTAL2应不接。

输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。

2.1.4芯片擦除

整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms来完成。

在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。

此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下表示静态逻辑,支持两种软件可选的掉电模式。

在闲置模式下,CPU停止工作。

但RAM、定时器、计数器、串口和中断系统仍在工作。

在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。

2.2键盘控制模块

计算器输入数字和其他功能按键要用到很多按键,如果采用独立按键的方式,在这种情况下,编程会很简单,但是会占用大量的I/O口资源,因此在很多情况下都不采用这种方式,而是采用矩阵键盘的方案。

矩阵键盘采用四条I/O线作为行线,四条I/O线作为列线组成键盘,在行线和列线的每个交叉点上设置一个按键。

这样键盘上按键的个数就为4×4个。

这种行列式键盘结构能有效地提高单片机系统中I/O口的利用率。

2.2.1矩阵键盘的工作原理

键盘可分为两类:

编码键盘和非编码键盘。

编码键盘是较多按键(20个以上)和专用驱动芯片的组合;当按下某个按键时,它能够处理按键抖动、连击等问题,直接输出按键的编码,无需系统软件干预。

通用计算机使用的键盘就是编码键盘。

在智能仪器中,使用并行接口芯片8279或串行接口HD7279均可以组成编码键盘,同时还可以兼顾数码管的显示驱动,其相关的接口电路和接口软件均可在芯片资料中得到。

当系统功能比较复杂,按键数量很多时,采用编码键盘可以简化软件设计。

而非编码键盘成本低廉。

从简易和成本角度出发,本设计选用的是非编码键盘。

如图2-2所示。

一般由16个键组成,在单片机中正好可以用一个P口实现16个按键功能,这种形式在单片机系统中也最常用。

其矩阵图所对应的仿真图如图2-3所示。

图2-2矩阵键盘内部电路图图2-3矩阵键盘布局图

2.2.2键盘电路主要器件介绍

为了进一步节省单片机I/O口资源,我们在设计中使用了MM74C922芯片。

MM74C922是一款4*4键盘扫描IC,它可检测到与之相连的4*4键盘的按键输入,并通过数据输出口将按键相应的编码输出。

其引脚图如图2-4所示。

图2-4MM74C922芯片引脚图

MM74C922引脚说明:

(1)Y1-Y4(脚1-脚4):

4*4键盘第一列至第四列。

(2)X1-X4(脚11、10、8、7):

4*4键盘第一行至第四行。

(3)DOA-DOD(DataoutA-D,脚14-17):

按键之BCD码输出,其中DOA为LSB,DOD为MSB。

(4)VCC(脚18):

电源脚,+3V至+15V

(5)GND(脚9):

接地管脚

(6)OSC(Oscillator,脚5):

键盘扫描电路之频率所需外加电容的引脚。

(7)KBM(KeyboardMask,脚6):

内部消除开关弹跳电路所外加电容的引脚。

(8)OE(OutputEnable,脚13):

芯片使能脚,接低电位可使芯片使能。

(9)DA(DataAvailable,脚12):

数据有效输出脚。

任一按键按下时,此脚位会输出高电位,按键释放后此脚又会恢复为低电位。

如图2-5所示,在本设计中,计算器输入键盘的4条行线、4条列线分别连接到MM74C922的X1-X4、Y1-Y4引脚,MM74C922的数据输出口与单片机的P2口相连,MM74C922的DA引脚经过一个非门连接到单片机的/INT0脚,当MM74C922检测到键盘输入时,DA产生高电平,与之相连的/INT0检测到低电平,给单片机一个中断,单片机从P2口的低四位读入键盘上按下的按键值。

图2-5键盘接口电路图

2.3LCD显示模块

本设计采用LCD液晶显示器来显示输入输出数据。

通过D0-D7引脚向LCD写指令字或写数据以使LCD实现不同的功能或显示相应数据。

LCD引脚图如图2-6所示。

图2-6LCD1602引脚图

LCD分为带背光和不带背光两种,基控制器大部分为HD44780,带背光的比不带背光的厚,在实际使用中是否带背光并无多大差别,两者尺寸差别如图2-7所示。

图2-7LCD背光和不带背光的尺寸对比图

2.3.1显示电路

当系统需要显示少量数据时,采用LCD液晶显示屏进行显示是一种经济实用的方法。

P1口作为液晶显示的数据端口,P3.4-P3.6口作为其控制端口,控制LCD液晶显示屏显示输出数据。

显示电路图如图2-8所示。

图2-8LCD液晶显示电路

2.3.2LCD1602主要技术参数

显示容量:

16×2个字符

芯片工作电压:

4.5—5.5V

工作电流:

2.0mA(5.0V)

模块最佳工作电压:

5.0V

字符尺寸:

2.95×4.35(W×H)mm

2.3.3引脚功能说明

LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表2-1所示。

表2-1引脚接口说明表

编号

符号

引脚说明

编号

符号

引脚说明

1

VSS

电源地

9

D2

数据

2

VDD

电源正极

10

D3

数据

3

VL

液晶显示偏压

11

D4

数据

4

RS

数据/命令选择

12

D5

数据

5

R/W

读/写选择

13

D6

数据

6

E

使能信号

14

D7

数据

7

D0

数据

15

BLA

背光源正极

8

D1

数据

16

BLK

背光源负极

第1脚:

VSS为地电源。

第2脚:

VDD接5V正电源。

第3脚:

VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。

第4脚:

RS为寄存器选择,高电平时选择数据寄存器,低电平时选择指令寄存器。

第5脚:

R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。

当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。

第6脚:

E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。

第7~14脚:

D0~D7为8位双向数据线。

第15脚:

背光源正极。

第16脚:

背光源负极。

2.4运算模块(单片机控制)

AT89C51单片机是在一块芯片中集成了CPU、RAM、ROM、定时器/计数器和多功能I/O等一台计算机所需要的基本功能部件。

如果按功能划分,它由如下功能部件组成,即微处理器(CPU)、数据存储器(RAM)、程序存储器(ROM/EPROM)、并行I/O口、串行口、定时器/计数器、中断系统及特殊功能寄存器(SFR)。

单片机是靠程序运行的,并且可以修改。

通过不同的程序实现不同的功能,尤其是一些特殊的功能,通过使用单片机编写的程序可以实现高智能、高效率以及高可靠性!

因此我们采用单片机作为计算器的主要功能部件,可以很快地实现运算功能。

另外系统还包括时钟电路和复位电路。

第三章软件设计

3.1功能介绍

实际运用中人们熟悉的计算器,其功能主要如下:

1、键盘输入;

2、显示数值;

3、加、减、乘、除四则运算;

4、对错误输入和输出的控制及提示。

3.2系统流程图

在软件设计中程序分别要完成键盘输入检测、LCD初始化及显示、算术运算和错误处理及输出等功能。

对主程序进行初始化,其他的程序选择模块式的方式。

首先对每个模块进行调试,当模块调试成功后,逐一地加入主程序中,最后完成整个软件部分的设计。

系统流程图如图3-1所示。

图3-1系统流程图

3.3程序

本设计程序采用C语言编程,程序分为多个模块,由主程序、键值转换和LCD系列程序等模块组成。

具体程序见附录。

第四章系统调试

4.1软件介绍

4.1.1KeiluVision2仿真软件简介

KeiluVision2是德国Keil公司开发的基于Windows平台的单片机集成开发环境,它包含一个高效的编译器、一个项目管理器和一个MAKE工具。

其中KeilC51是一种专门为单片机设计的高效率C语言编译器,符合ANSI标准,生成的程序代码运行速度极高,所需要的存储器空间极小,完全可以与汇编语言媲美。

KeiluVision2的界面如图4-1所示,KeiluVision2允许同时打开、浏览多个源文件。

图4-1KeiluVision2的界面

4.1.2protues简介

protues软件是英国Labcenterelectronics公司出版的EDA工具软件。

它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。

它是目前最好的仿真单片机及外围器件的工具。

虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。

Proteus是世界上着名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。

它是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年已经增加了Cortex和DSP系列处理器,并持续增加其他系列处理器模型。

在编译方面,它也支持IAR、Keil和MPLAB等多种编译器,界面图如图4-2所示。

图4-2protues界面图

4.2软件调试

4.2.1软件分析及常见故障

在此次设计中使用KeiluVision2和Proteus软件仿真,其中使用KeiluVision2软件汇编源程序,使用Proteus软件对硬件电路进行模拟。

正确连接电路图,使其能按照题目要求及设计初衷正常工作。

从库里正确拾取元器件,认真合理地连线,做到不缺件,不缺线,选取合适的元件参考值,使其能正常工作。

通过编译,连接程序。

使其生成.hex文件,并连入连好的Proteus图中。

测试该计算器是否能正常工作。

若不能,首先要检查有没有漏掉元器件,元器件是否都连接好。

其次,要看元件各引脚是否都连接正确,有无接反的。

最后要看元件的参考值是否选择合理,电源电压是否能带动元器件正常工作。

常见故障:

1、逻辑错误:

它是由设计错误或加工过程中的工艺性错误所造成的。

这类错误包括错线、开路、短路等。

2、元器件失效:

有两方面的原因:

一是器件本身已损坏或性能不符合要求;二是组装错误造成元件失效,如电解电容、集成电路安装方向错误等。

3、可靠性差:

因其可靠性差的原因很多,如金属化孔、接插件接触不良会造成系统时好时坏,经不起振动;走线和布局不合理也会引起系统可靠性差。

4、电源故障:

若样机有电源故障,则加电后很容易造成器件损坏。

电源故障包括电压值不符合设计要求,电源引线和插座不对,功率不足,负载能力差等。

调试方法:

包括多级调试和联机调试。

在调试过程中要针对可能出现的故障认真分析,直至检查出原因并排除。

本次硬件调试过程中,对所出现的问题进行了认真的分析和改正,最后能够很好的达到设计要求的效果。

系统仿真图如图4-3所示。

图4-3系统仿真图

4.2.2仿真结果演示

下面以加、减、乘和除分别做仿真演示:

(1)加法:

以258和825作为加数和被加数运算,结果为1083。

加法仿真结果图如图4-4所示。

图4-4加法仿真结果图

(2)减法:

以7654321和1234567作为被减数和减数运算,结果为6419754。

减法仿真结果图如图4-5所示。

图4-5减法仿真结果图

(3)乘法:

以694和123作为乘数和被乘数运算,结果为85362。

乘法结果仿真图如图4-6所示。

图4-6乘法结果仿真图

(4)除法:

以1250和5作为被除数和除数运算,结果为250。

除法结果仿真图如图4-7所示。

图4-7除法结果仿真图

由以上四种运算结果可知软件仿真均正确,没有显示错误。

4.3硬件调试

在protues里面把硬件图画好,把所有元器件的参数都设置好,程序在keil里面生成.hex文件,然后在protues里单片机芯片中导入此文件,运行一切正常后开始准备焊接硬件。

在焊接硬件过程中首先得准备好所有必备的东西,比如所需元器件和焊接所用工具等。

在焊接前应先在面包板上把硬件插好调试,接通电源看能否显示出结果,如果元器件都是好的并且结果可以显示出,就可以焊接了。

如果显示不出来再检查各个器件是否有损坏,并用万用表挨个检查,直至一切显示正常再焊接。

在焊接时要注意相邻焊点不能粘在一起,连接线不能太长,并且注意焊点的虚焊、假焊。

在使用电烙铁时温度不能太高也不能太低,一般在350度左右,温度太低容易形成冷焊点,太高则会烧坏电路板。

电路板焊接好以后首先测试一下各个元器件是否正常,焊点有无虚焊、连焊、假焊等现象,检查没有问题以后接通电源查看LCD显示是否正常,如果一切显示没有问题把硬件妥善保管,防止不小心损坏。

硬件电路实物图如图4-8所示。

图4-8硬件电路实物图

结束语

通过这次简易计算器的设计,很大程度的提高了我的理解力和动手能力,也拓宽了知识面。

在图书馆和网上查阅资料使我了解了更多的资料,也方便了我们以后的使用。

在查询的资料中让我对单片机有了更深入的了解,能把学到的知识用活,而不只局限于理论

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

当前位置:首页 > 高中教育 > 小学教育

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

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