




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上重庆三峡学院课 程 设 计 报 告 书题目:基于可调的电子万年历与温度显示学院(系): 年级专业: 学 号: 学生姓名: 指导教师: 教师职称: 完成日期 年 月 日目录摘要 3第一章 引言 41.1 设计任务 41.2 设计目的 41.3 设计思路 4 1.3.1 方案论证 4 1.3.2 芯片的选择 5 1.3.3 显示模块选择方案和论证 5 1.3.4 时钟信号的选择方案和论证5 1.3.5 最终方案6第二章 硬件系统的设计 2.1原理图设计62.2温度感应电路72.3 复位电路部分72.4液晶显示电路72.5时钟信号电路82.6 AT89C52原理及说明 8
2、2.6.1引脚功能9第3章 软件系统的设计. 3.1系统程序流程图 93.2系统具体程序代码10第4章 系统调试 234.1 软件调试 234.2 硬件调试 23第5章 设计心得 23元件清单表24致谢 24参考文献 24基于可调式电子万年历与温度显示的设计重庆三峡学院应用技术学院 5人摘要 :本文介绍了一种基于单片机的可调的电子万年历和温度显示。该设计主要由五个模块组成:微处理器(单片机),温度传感器,控制调节按键,实时时钟模块及显示模块。温传感器器主要由DS18B20来完成,它负责把采集到的温度传给单片机。实时时钟模块主要由DS1302构成,它负责产生始终数据送给单片机,微处理器芯片AT8
3、9C52来完成DS18B20,DS1302,按键传来的数据进行处理,并送与显示模块(LCD1602)进行显示。 该系统的电路简单,所用的元件较少,成本低,且测量精度和可靠性较高。可以测量-55°到+125°的温度和显示年,月,日,星期,时,分,秒,并且可通过按键调节时间。 关键词 单片机;万年历;温度;AT89C52;LCD1602,DS1302,DS18B20第一章 引言1.1 设计任务(1) 根据具体题目要求,设计以单片机为控制核心的测量系统或控制系统,完成对指定目标或对象的测量及控制。(2) 设计单片机与测量及控制对象的接口并进行硬件调试。(3) 针对要求测量或控制的
4、对象完成程序的编制。(4) 硬件软件联调,完成题目所要求的功能。(5) 设计能支持时、分、秒的时钟,时钟要具有时间调整功能。1.2 设计目的(1) 通过课程设计,使我们能够深入理解单片机系统的工作原理,接口电路的设计及调试方法,培养综合运用所学理论知识分析和解决实际问题的能力。(2) 使用AT89C51芯片的串口功能,利用实时时钟芯片DS1302与液晶显示器LCD1602和DS18D20实现年、月、星期、日、时、分、秒、温度的显示。(3) 用keil软件进行编程与调试,利用Proteus 7 Professional软件进行绘制硬件电路图且进行仿真。1.3 设计思路 1.3.1 方案论证单片机
5、芯片的选择方案和论证方案一: 采用89C51芯片作为硬件核心,采用Flash ROM,内部具有4KB ROM 存储空间,能于3V的超低压工作,而且与MCS-51系列单片机完全兼容,但是运用于电路设计中时由于不具备ISP在线编程技术, 当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。方案二: 采用AT89S52,片内ROM全都采用Flash ROM;能以3V的超底压工作;同时也与MCS-51系列单片机完全该芯片内部存储器为8KB ROM 存储空间,同样具有89C51的功能,且具有在线编程可擦除技术,当在对电路进行调试时,由于程序的
6、错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏,所以选择采用AT89S52作为主控制系统。1.2 显示模块选择方案和论证方案一: 采用LED数码管动态扫描,LED数码管价格适中,对于显示数字合适,采用动态扫描法与单片机连接时,虽然占用的单片机口线少,但连线还需要花费一点时间,所以也不用此种作为显示。方案二: 采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,如采用在显示数字显得太浪费,且价格也相对较高,所以也不用此种作为显示。方案三: 采用LCD液晶显示来实现万年历的显示,我采用的LCD1602芯片,它可以显示16*2
7、个字符,完全可以用于电子万年历的时间和日期的显示内容,但是LCD1602部能显示汉字,对于日期的显示可以采用数字显示的方法。1.3 时钟芯片的选择方案和论证方案一: 直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、时、分、秒计数。采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大,所以不采用此方案。方案二:采用DS1302时钟芯片实现时钟,DS1302芯片是一种高性能的时钟芯片,可自动对秒、分、时、日、周、月、年进行计数,而且精度高,位的RAM做为数据暂存区,工作电压2.5V5.5V范围内,2.5V时耗电小于300nA。1.4 温度显示的选择方案和论证方案一:
8、 直接采用的是DS18B20传感器来测试温度,这样既简单又方便,对于在短时间就可以掌握的温度传感器。1.5最终确定芯片的选择方案和论证综上各方案所述,对此次作品的方案选定: 采用AT89S52作为主控制系统; DS1302提供时钟;LCD1602液晶显示屏作为显示,DS18B20传感器作为温度测试。1.3.2 芯片的选择采用AT89C51芯片,其为高性能CMOS 8位单片机,该芯片内含有4k bytes的可反复擦写的只读程序存储器(PEROM)、128 bytes的随机存取数据存储器(RAM)、 32位可编程I/O口线、2个16位定时/计数器、6个中断源、可编程串行UART通道及低功耗空闲和掉
9、电模式。因此,我们选用AT89C51。1.3.3 显示模块选择方案和论证采用LCD液晶显示,显示较为清楚直观,时间和日期在液晶显示器LCD1602中分两行来显示。 1.3.4 时钟信号的选择方案和论证直接采实时时钟DS1302芯片来给予电子万年历的初始信号,系统直接在DS1302中读取时间和日期,并且可以修改DS1302中的初始时间和日期。时钟和日期的修改通过三个按键设置,分别为模式按键、曾量按键、减量按键。1.3.5 最终方案综上方案所述,对于可调的电子万年历与温度显示方案选定为:AT89C51作为主控器,DS1302作为时钟信号,LCD1602作为显示器,DS18B20作为测温器。图1第二
10、章 硬件系统的设计2.1原理图设计此次单片机数字时钟的设计采用AT89C51为主控制芯片,并由实时时钟DS1302芯片提供时钟信号,LCD液晶显示器1602提供液晶显示,温度传感器DS18B20作为温度测试。图22.2温度感应电路图3由图3所示温度感应电路是由一个DS18B20传感器作为主要器件,采用单总线传输数据与电阻R2来线与。2.3 复位电路部分单片机在启动运行时都需要复位,使CPU和系统中的其他部件都处于一个确定的初始状态,并从这个状态开始工作。MCS-51单片机有一个复位引脚RST,采用施密特触发输入。当震荡器起振后,只要该引脚上出现2个机器周期以上的高电平即可确保时器件复位1。复位
11、完成后,如果RST端继续保持高电平,MCS-51就一直处于复位状态,只要RST恢复低电平后,单片机才能进入其他工作状态。单片机的复位方式有上电自动复位和手动复位两种,图6是51系列单片机统常用的上电复位电路。 图4 复位电路2.4液晶显示电路图5通过图五可以看出液晶显示芯片与单片机之间的数据传输是由液晶显示的D0D7口和单片机的P2口来进行数据之间的传输。由于我们没有用到液晶显示器的背光所以就没有对VSS与VEE提供工作电压,由于液晶显示芯片的数据不用被单片机所读取,所以这里我们就直接给予液晶显示器读端R给予低电平这样单片机就只能对晶显示器写入数据.液晶显示器的RS端是控制是传送数据还是传送指
12、令直接接在单片机的P3.0口。2.5时钟信号电路图6根据图6可以看出我们采用的是DS1302实时时钟芯片,这个这个芯片完全可以提供我们所设计的电子万年历的日期与时间,在使用时需提供一个32.768MHZ的晶振来给予芯片的时钟信号,实时时钟芯片它采用的是I/O总线传输。2.6 AT89C52原理及说明AT89C52美国Intel公司生产的低电压,高性能CHMOS8位单片机,片内含4k bytes的可反复擦写的只读程序存储器(PEROM)和蔼可亲128 bytes的随机存取数据存储器(RAM),器件采用Intel公司的高密度、非易失性存储技术生产,片内置通用4位中央处理器(CPU)和Flash存储
13、单元,功能强大AT89C51单片机适合于许多较为复杂控制应用场合。AT89C52脚图2.6.1引脚功能Vcc(40):电源电压 GND(20):接地P0口(32-39):P0口是一个8位双向I/O接口,也即地址/数据总线复用口。作为输出口用时,每位吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。在访问外部数据存储器时,这组口线分时转换地址(低8位)和数据总线复用。P1口(1-8):P1是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路,对端口写“1”通过内部的上拉电阻把端口拉到高电平时,此时可作输入口。作为输
14、入品使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。RST(9):复位信号输入端。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。ALE/PROG(30):地址锁存有效信号输出端。当访问片外程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节,一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的,要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。XTAL1(19):振荡器反相放大器的及内部时钟发生器的输入端。XTAL1(18):振荡器反相放大器的输出端。通过XTAL1、XT
15、AL2外接晶振后,即可构成自激振荡器,驱动内部时钟发生器向主机提供时钟信号。第3章 软件系统的设计DS1302、液晶显示器LCD1602、温度传感器DS18B20、和定时器T0的初始化,还有时钟的时间设定与读取、液晶的显示与按键处理等。3.1系统程序流程图图8 为了实现时间和日期的显示功能,需要在DS1302中读取时间和日期,并送LCD1602中显示,这样需要设计DS1302和LCD1602进行初始化程序、DS1302的时间日期的读取和修改程序、LCD1602的初始化和显示程序。另外时间和日期需要修改,则需要设计按键处理子程序。系统主程序流程图如图所示。系统首先对LCD1602、DS1302和
16、定时器T0初始化后,只是循环的调用按键处理子程序,检测是否需要调节时间。程序在定时器T0中断服务程序中,定时读取DS1302的时间和日期并送液晶显示。3.2系统具体程序代码 可调的电子万年历与温度显示系统的具体程序代码如下:(1)函数声明及变量定义 为方便程序的编写,把部分常用的变量进行伪定义。/*函数声明,变量定义*/ #define uchar unsigned char /*宏定义,在下文出现uchar都表示无符号字符型*/#define uint unsigned int /*宏定义,在下文出现uint都表示无符号整型*/sbit rs=P30; /*根据系统的整体电路连接AT98C5
17、2的并行接口*/sbit e=P31; sbit io=P37;sbit rst=P35;sbit sck=P36;sbit key1=P10;sbit key2=P11;sbit key3=P12;sbit DQ=P17;uchar str1 = " - - Week: " /* 定义一个数组名为str1的数组*/uchar str2 = "T : : . C" /*因为这些是固定不变得字符,所以可以将它以一个固定的字符形式 */uchar table2=" "/*定义一个数组,里面是显示的年月日温度等字符*/uchar table
18、1=" " /*显示星期的字符*/uchar write_add7=0x8c,0x8a,0x88,0x86,0x84, 0x82,0x80; /*写地址*/uchar read_add7=0x8d,0x8b,0x89,0x87,0x85, 0x83,0x81; /*读地址*/uchar init17=12,5,10,26,15,46,35;/年周月日时分秒uchar init07;uchar num,sec,min,hour,dat,mon,year,week;uint temp;float f_temp;(2)main():主函数在主函数中主要是完成液晶LCD1602、实
19、时时钟芯片DS1302、温度传感器DS18B20和定时器T0的初始化。然后一直检测调用按键处理子程序。/* 主函数*/void main() int_t(); /*调用定时器初始化子程序*/init_lcd(); /*调用液晶显示初始化子程序*/ init_ds18b20(); /*调用温度传感器初始化子程序*/ set_rtc(); /*调用DS1602初始化子程序*/ while(1) keycan(); /*一直循环调用按键检测*/ (3)液晶显示程序部分在本部分主要是液晶显示所需要的子程序、显示时间日期星期等。void write_dat(uchar dat);写数据子程序;void
20、write_com(uchar com);写命令子程序;void init_lcd();液晶初始化子程序;void pros(),液晶显示子程序;具体程序代码如下: 1)void write_dat(uchar dat);写数据子程序; 该子程序功能为向LCD1602中写数据。写数据时,输入rs=H,R/W=L,D0D7=数据,e=高脉冲;输出:无。/* 向LCD1602写数据*/void write_dat(uchar dat) rs=1;delay(1); /*置为写入数据*/ e=1;delay(1); /*拉高使能端*/ P2=dat; /*送入数据*/ e=0;delay(1); /
21、*完成高脉冲*/ rs=0; 2)void write_com(uchar com);写命令子程序; 该子程序功能为向LCD中写命令字。写指令时,输入:rs=L,R/W=L,D0D7=指令码,e=高脉冲,输出:无。/* 向LCD1602写指令*/void write_com(uchar com) rs=0;delay(1); /*置为写入命令*/ e=1;delay(1); /*拉高使能端*/ P2=com; /*写入数据*/ e=0;delay(1); /*完成高脉冲*/ rs=1;3) void init_lcd();液晶初始化子程序; 该程序为初始化液晶,包括清楚屏幕、开显示、设置光标是
22、否显示、是否闪烁、输入字符后光标左右移动方向、屏幕是否移动,屏幕的显示放肆是2行还是1行,字符的点阵、数据线的位数是8位还是4位,并显示不需要变动的部分。 一般情况下,设置16*2显示、5*7点阵、8位数据接口、光标左移、显示屏袶、开显示光标、不闪烁、清屏。/* 初始化lcd1602液晶*/void init_lcd()/*液晶初始化函数*/uchar i; write_com(0X38);delay(100); /*16*2,5*7点阵,8为数据线/ write_com(0x0c); /*开始是不显示光标 不闪烁*/ write_com(0x06); /*显示不移动,光标右移*/ write
23、_com(0x01); /*清屏*/ write_com(0x80+0x00); /*第一行字符写入的位置*/ for(i=0;i<16;i+) write_dat(str1i); delay(5); write_com(0x80+0x40); /*第二行字符写入的位置*/ for(i=0;i<16;i+) write_dat(str2i); delay(5); 4)void pros(),液晶显示子程序; 该程序可用于在1602对应位置显示年、月、日、时、分、秒、星期、温度。/* 1602液晶显示温度与时间*/void pros()write_com(0x80+0x40+11);
24、write_dat(table2readtemperature()/100);write_com(0x80+0x40+12);write_dat(table2readtemperature()%100/10);write_com(0x80+0x40+14);write_dat(table2readtemperature()%10); write_com(0x80+0x40+9);write_dat(table2sec%10); write_com(0x80+0x40+8);write_dat(table2sec/10); write_com(0x80+0x40+6);write_dat(tab
25、le2min%10); write_com(0x80+0x40+5);write_dat(table2min/10); write_com(0x80+0x40+3);write_dat(table2hour%10); write_com(0x80+0x40+2);write_dat(table2hour/10); write_com(0x80+7);write_dat(table2dat%10); write_com(0x80+6);write_dat(table2dat/10); write_com(0x80+4);write_dat(table2mon%10); write_com(0x8
26、0+3);write_dat(table2mon/10); write_com(0x80+14);write_dat(table1week%10); write_com(0x80+1);write_dat(table2year%10); write_com(0x80);write_dat(table2year/10);(4)DS1302程序部分 在本部分主要是实时时钟芯片DS1302的字节读、字节读、写对应地址数据、向对应地址写数据和初始化等,具体为:void set_rtc();初始化DS1302;void write_byte(uchar dat);向DS1302写一个字节;uchar r
27、ead_ds1302(uchar add) ;从DS1302的寄存器读取数据;uchar bcd(uchar a); 数据的转换;void read_rtc();从DS1302读取数据void write_ds1302(uchar add,uchar dat) 向DS1302的寄存器写数据具体程序代码如下: 1)void set_rtc();初始化DS1302;通过调用此函数完成DS1302的初始化,启动DS1302工作。/* 初始化DS1302*/void set_rtc() uchar i,j; for(i=0;i<7;i+) j=init1i/10;init1i=init1i%10
28、;init1i=init1i+j*16; write_ds1302(0x8e,0x00); for(i=0;i<7;i+) write_ds1302(write_addi,init1i); write_ds1302(0x8e,0x80);2)void write_byte(uchar dat);向DS1302写一个字节; 该函数中,待发送数据被送入ACC寄存器,通过向右移位的方式,将ACC最低位数据通过io口发送至DS1302中,每一位数据是在时钟信号clk的下降沿接收的。/* 向DS1302写一个字节*/void write_byte(uchar dat) uchar i; for(i
29、=0;i<8;i+) sck=0; io=dat&0x01; dat>>=1;sck=1; 3)uchar read_ds1302(uchar add) ;从DS1302读一个字节;该函数中,通过io口接受DS1302的发送数据,每一位数据是在时钟信号clk的下降沿接收的,每接受一位数据,ACC中的数据就右移一位,8位数据接受完毕后,将读取的数据返回。/* 从DS1302读一个字节*/uchar read_ds1302(uchar add) uchar i,dat; rst=0;_nop_(); sck=0;_nop_(); rst=1;_nop_(); write_
30、byte(add); for(i=0;i<8;i+) dat>>=1; sck=0; if(io) dat=dat|0x80; sck=1; rst=0;_nop_(); sck=0;_nop_(); sck=1;io=1; return dat;4)void read_rtc(); 从DS1302里读数据;该函数可以完成向目的地址读出一个字节数据的功能,其中add是待读数据的地址,返回为读取的数据。/* 从DS1302里读数据*/uchar bcd(uchar a) uchar dat; dat=a>>4; return(dat=dat*10+(a&=0
31、x0f); void read_rtc() sec=bcd(read_ds1302(0x81); min=bcd(read_ds1302(0x83); hour=bcd(read_ds1302(0x85); dat=bcd(read_ds1302(0x87); mon=bcd(read_ds1302(0x89); week=bcd(read_ds1302(0x8b); year=bcd(read_ds1302(0x8d);5)void write_ds1302(uchar add,uchar dat) 向DS1302写数据 该函数可以完成向目的地址写入一个字节数据的功能,其中add是待写入数据
32、的地址,dat是待写入的数据。/* 向DS1302写数据*/void write_ds1302(uchar add,uchar dat) rst=0;_nop_(); sck=0;_nop_(); rst=1;_nop_(); write_byte(add); write_byte(dat); rst=0;_nop_(); sck=1;io=1;(5)uchar set_rtc1(uchar dat);按键处理子程序 按键处理子程序,主要是检测功能按键是否按下,按下后再检测增量键和减量键实现年、月、日、时、分、秒、星期、温度的调节作用。/* 按键检测*/uchar set_rtc1(uchar
33、 dat) uchar j; j=dat/10*16+dat%10; return j; void keycan() if(key1=0) delay(10); if(key1=0) num+; switch(num) case 1: write_com(0x80+0x49); write_ds1302(0x8e,0x00);/write_ds1302(0x80,0x80|set_rtc1(init06); write_com(0x0f);TR0=0; break;case 2: write_com(0x80+0x46);break;case 3: write_com(0x80+0x43);b
34、reak;case 4: write_com(0x80+0x0e);break;case 5:write_com(0x80+0x07);break;case 6: write_com(0x80+0x04);break;case 7: write_com(0x80+0x01);break;case 8:num=0;write_com(0x0c); TR0=1;write_ds1302(0x8e,0x80); /write_ds1302(0x80,0x00|set_rtc1(init06);break; while(!key1); if(num!=0) if(key2=0) delay(10);
35、if(key2=0) switch(num) case 1:sec+; if(sec=60) sec=0; write_com(0x80+0x40+9); write_dat(table2sec%10); write_com(0x80+0x40+8); write_dat(table2sec/10); write_ds1302(0x80,set_rtc1(sec);break; case 2:min+; if(min=60) min=0; write_com(0x80+0x40+6); write_dat(table2min%10); write_com(0x80+0x40+5); write
36、_dat(table2min/10); write_ds1302(0x82,set_rtc1(min);break; case 3:hour+; if(hour=24) hour=0; write_com(0x80+0x40+3); write_dat(table2hour%10); write_com(0x80+0x40+2); write_dat(table2hour/10); write_ds1302(0x84,set_rtc1(hour);break; case 4:week+; if(week=8) week=1; write_com(0x80+14); write_dat(tabl
37、e2week%10); write_ds1302(0x8a,set_rtc1(week);break; case 5:dat+; if(dat=32) dat=1; write_com(0x80+7); write_dat(table2dat%10); write_com(0x80+6); write_dat(table2dat/10); write_ds1302(0x86,set_rtc1(dat);break; case 6:mon+; if(mon=13) mon=1;write_com(0x80+4);write_dat(table2mon%10); write_com(0x80+3)
38、;write_dat(table2mon/10);write_ds1302(0x88,set_rtc1(mon);break; case 7:year+; if(year=100) year=0;write_com(0x80+1);write_dat(table2year%10); write_com(0x80+0);write_dat(table2year/10);write_ds1302(0x8c,set_rtc1(year); break; while(!key2); if(key3=0) delay(10); if(key3=0) switch(num) case 1:if(sec=0
39、) sec=59;sec-; write_com(0x80+0x40+9); write_dat(table2sec%10); write_com(0x80+0x40+8); write_dat(table2sec/10); write_ds1302(0x80,set_rtc1(sec);break; case 2:if(min=0) min=59;min-; write_com(0x80+0x40+6); write_dat(table2min%10); write_com(0x80+0x40+5); write_dat(table2min/10); write_ds1302(0x82,se
40、t_rtc1(min);break; case 3:if(hour=0) hour=23;hour-; write_com(0x80+0x40+3); write_dat(table2hour%10); write_com(0x80+0x40+2); write_dat(table2hour/10); write_ds1302(0x84,set_rtc1(hour);break; case 4:if(week=0) week=7;week-; write_com(0x80+14); write_dat(table2week%10); write_ds1302(0x8a,set_rtc1(wee
41、k);break; case 5:if(dat=0) dat=31;dat-; write_com(0x80+7); write_dat(table2dat%10); write_com(0x80+6); write_dat(table2dat/10); write_ds1302(0x86,set_rtc1(dat);break; case 6:if(mon=0) mon=12;mon-; write_com(0x80+4); write_dat(table2mon%10); write_com(0x80+3); write_dat(table2mon/10); write_ds1302(0x
42、88,set_rtc1(mon);break; case 7:if(year=0) year=99;year-; write_com(0x80+1); write_dat(table2year%10); write_com(0x80+0); write_dat(table2year/10); write_ds1302(0x8c,set_rtc1(year);break; while(!key3); (6) DS18B20程序部分 void init_ds18b20(void); 初始化DS18B20void write_byte_18b20(uchar dat) ;向DS18B20写一个字节;
43、uchar read_byte(void) 从DS18B20;读一个字节;uint readtemperature(void);从DS18B20里读取温度1)void init_ds18b20(void); 初始化DS18B20/* 初始化DS18B20*/void init_ds18b20(void) DQ=1; delay1(4); DQ=0; delay1(100); DQ=1; delay1(40);2) void write_byte_18b20(uchar dat) ;向DS18B20写一个字节;/* 向DS18B20写一个字节*/void write_byte_18b20(uchar dat) uchar i; for(i=0;i<8;i+) DQ=0; DQ=dat&0x01; delay1(10); DQ=1; dat>>=1; delay1(4);3) uchar read_byte(void) 从DS18B20;读一个字节;/* 从DS18B20读一个字节*/uchar read_byte(void) uchar i,value; for(i=0;i<8;i+) DQ=0; value>&
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国联通衡阳市2025秋招笔试行测题库及答案供应链采购类
- 2025年影像工程考试题及答案
- 国家能源东莞市2025秋招心理测评常考题型与答题技巧
- 中国广电马鞍山市2025秋招技术岗专业追问清单及参考回答
- 海南地区中储粮2025秋招购销统计岗高频笔试题库含答案
- 白城市中石油2025秋招笔试模拟题含答案市场营销与国际贸易岗
- 长治市中石油2025秋招笔试综合知识专练题库及答案
- 遂宁市中石油2025秋招笔试综合知识专练题库及答案
- 中国移动玉林市2025秋招笔试性格测评专练及答案
- 2025年金城招聘考试题及答案
- 葫芦种植技术
- 热敏电阻器配方设计与制备工艺详解
- 监理工程师题库检测试题打印含答案详解【完整版】
- 2《归园田居》任务式公开课一等奖创新教案(表格式)统编版高中语文必修上册
- 银行文明礼仪课件
- 虚拟电厂运行关键课件
- 敏捷企业组织结构与设计的案例研究
- 光伏储能技术介绍
- 项目合同交付管理办法
- 国企贸易业务管理办法
- 3done入门基础知识课件
评论
0/150
提交评论