电子设计多功能电子万年历.doc_第1页
电子设计多功能电子万年历.doc_第2页
电子设计多功能电子万年历.doc_第3页
电子设计多功能电子万年历.doc_第4页
电子设计多功能电子万年历.doc_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

多功能电子万年历 摘 要本设计以单片机AT89s52和时钟芯片DS1302为核心,设计了一款多功能电子万年历。不同于单片机提供的定时计数器,DS1302时钟芯片具有涓细电流充电功能,可以对年、月、日、周日、时、分、秒进行计时,还具有闰年补偿等多种功能。最重要的是,相对于单片机的定时计数器,DS1302在时间的读写方面误差要小很多。设计对多功能电子万年历采用LCD12864实现数字和文字的同步显示,可以显示年、月、日、星期、时、分、秒和温度等信息,与此同时通过内部程序指令还具有时间校准功能。 关键词:时钟电钟;DS1302;DS18B20;LCD12864;单片机 目录一、设计要求与方案论证 41.1 设计要求 41.2 系统基本方案选择和论证 41.2.1单片机芯片的选择方案和论证 41.2.2 显示模块选择方案和论证 41.2.3 时钟芯片的选择方案和论证 41.2.4 温度传感器的选择方案与论证 51.3 电路设计最终方案决定 5二.系统的硬件设计与实现52.1 电路设计框图 52.2 系统硬件概述 52.3 主要单元电路的设计 62.3.1单片机主控制模块的设计 62.3.2时钟电路模块的设计 62.3.3温度采集模块设计 72.3.4 电路原理及说明 72.3.5 显示模块的设计 9三、系统的软件设计103.1程序流程框图 103.2子程序的设计 123.2.1 DS18B20温度子程序 123.2.2 读/写DS1302子程序143.2.3 LCD12864显示子程序16四. 指标测194.1 测试仪器194.2硬件测试 204.3软件测试 204.测试结果分析与结论 204.4.1 测试结果分析 204.4.2 测试结论 20五、作品心得总结 21六、致谢词 22参考文献 22附录一:系统电路图 23附录二:系统使用说明书24附录三:系统程序清单25一、设计要求与方案论证1.1设计要求:(1)能显示阳历年、月、日、星期、小时、分、秒,当年是闰年是会显示闰年。(2)显示模块采用LCD液晶显示,要求能用按键调整时间。(3)能显示阴历年、月、日。(4)具有定时报警功能,能够进行整点和半点语音报时。(5)能显示当前室内温度1.2 系统基本方案选择和论证1.2.1单片机芯片的选择方案和论证:方案一: 采用89C51芯片作为硬件核心,采用Flash ROM,内部具有4KB ROM 存储空间,能于3V的超低压工作,而且与MCS-51系列单片机完全兼容,但是运用于电路设计中时由于不具备ISP在线编程技术, 当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。方案二: 采用AT89S52,片内ROM全都采用Flash ROM;能以3V的超底压工作;同时也与MCS-51系列单片机完全该芯片内部存储器为8KB ROM 存储空间,同样具有89C51的功能,且具有在线编程可擦除技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。所以选择采用AT89S52作为主控制系统.1.2.2 显示模块选择方案和论证:方案一: 采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,如采用在显示数字显得太浪费,且价格也相对较高,所以也不用此种作为显示.方案二:采用LED数码管动态扫描,LED数码管价格适中,对于显示数字最合适,而且采用动态扫描法与单片机连接时,占用的单片机口线少。但是在用程序实现功能显示时候程序繁琐冗长,且不具备显示文字功能,所以设计中不采用LED数码管作为显示。 方案三:采用LCD液晶显示屏,液晶显示屏的显示功能强大,可显示大量文字,图形,显示多样,清晰可见,性价比高。鉴于本次设计实验显示内容较多,并且从程序操纵精简方向考虑,所以在此设计中采用LCD液晶显示屏.本次设计选用LCD12864做显示模块。1.2.3时钟芯片的选择方案和论证:方案一: 直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、时、分、秒计数。采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大。所以不采用此方案。方案二:采用DS1302时钟芯片实现时钟,DS1302芯片是一种高性能的时钟芯片,可自动对秒、分、时、日、周、月、年以及闰年补偿的年进行计数,而且精度高,位的RAM做为数据暂存区,工作电压2.5V5.5V范围内,2.5V时耗电小于300nA. 本次设计选用DS1302时钟芯片。.2.4温度传感器的选择方案与论证:方案一:使用热敏电阻作为传感器,用热敏电阻与一个相应阻值电阻相串联分压,利用热敏电阻阻值随温度变化而变化的特性,采集这两个电阻变化的分压值,并进行A/D转换。此设计方案需用A/D转换电路,增加硬件成本而且热敏电阻的感温特性曲线并不是严格线性的,会产生较大的测量误差。方案二:采用数字式温度传感器DS18B20,此类传感器为数字式传感器而且仅需要一条数据线进行数据传输,易于与单片机连接,可以去除A/D模块,降低硬件成本,简化系统电路。另外,数字式温度传感器还具有测量精度高、测量范围广等优点。本次设计采用DS18B20做温度传感器。1.3 电路设计最终方案决定综上各方案所述,对此次作品的方案选定: 采用AT89S52作为主控制系统; DS1302提供时钟显示,DS18B20做为温度传感器;LCD12864液晶显示作为显示模块。二.系统的硬件设计与实现2.1 电路设计框图LCD12864液晶显示器显示模块AT89S52主控制模 块键盘模块 DS1302时钟模块温度采集模块2.2 系统硬件概述本电路是由AT89S52单片机为控制核心,具有在线编程功能,低功耗,能在3V超低压工作;时钟电路由DS1302提供,它是一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V5.5V。采用三线接口与芯片CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31*8的用于临时性存放数据的RAM寄存器。可产生年、月、日、周日、时、分、秒,具有使用寿命长,精度高和低功耗等特点,同时具有掉电自动保存功能;温度的采集由DS18B20构成;显示部份由LCD液晶显示器对文字和数字进行同步显示。2.3 主要单元电路的设计2.3.1单片机主控制模块的设计 AT89S52单片机为40引脚双列直插芯片,共有4个8位的I/O口(P0、P1、P2、P3),每一条I/O线都能独立地作输出或输入。单片机的最小系统如下图所示,18引脚和19引脚接时钟电路,XTAL1接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,XTAL2接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出.第9引脚为复位输入端,接上电容,电阻及开关后够上电复位电路,20引脚为接地端,40引脚为电源端. 如图-1 所示:图-1 AT89S52主控制系统2.3.2时钟电路模块的设计图-2示出DS1302的引脚排列,其中Vcc1为后备电源,Vcc2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1(8脚)或Vcc2(1脚)两者中的较大者供电。当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.768KHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RSTS置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电动行时,在Vcc大于等于2.5V之前,RST必须保持低电平。中有在SCLK 为低电平时,才能将RST置为高电平,I/O为串行数据输入端(双向)。SCLK始终是输入端。图-2 DS1302的引脚图2.3.3温度采集模块设计如图-3所示。采用数字式温度传感器DS18B20,它是数字式温度传感器,具有测量精度高,电路连接简单特点,此类传感器仅需要一条数据线进行数据传输,使用PB0与DS18B20的I/O口连接加一个上拉电阻,Vcc接电源,GND接地。图-3 DS18B20温度采集模块2.3.4 电路原理及说明(1) 时钟芯片DS1302的工作原理: DS1302在每次进行读、写程序前都必须初始化,先把SCLK端置 “0”,接着把RST端置“1”,最后才给予SCLK脉冲;读/写时序如下图4所示。图4为DS1302的控制字,此控制字的位7必须置1,若为0则不能对DS1302进行读写数据。对于位6,若对程序进行读/写时RAM=1,对时间进行读/写时,CK=0。位1至位5指操作单元的地址。位0是读/写操作位,进行读操作时,该位为1;该位为0则表示进行的是写操作。控制字节总是从最低位开始输入/输出的。表2为DS1302的日历、时间寄存器内容:“CH”是时钟暂停标志位,当该位为1时,时钟振荡器停止,DS1302处于低功耗状态;当该位为0时,时钟开始运行。“WP”是写保护位,在任何的对时钟和RAM的写操作之前,WP必须为0。当“WP”为1时,写保护位防止对任一寄存器的写操作。(2) DS1302的控制字节DS1302的控制字如表-1所示。控制字节的高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出 RAM RD 1 A4 A3 A2 A1 A0 / CK /WR 表-1 DS1302的控制字格式(3) 数据输入输出(I/O)在控制指令字输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位到高位7。如下图-4所示 图-4 DS1302读/写时序图(4) DS1302的寄存器DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式,其日历、时间寄存器及其控制字见表-2。表-2 DS1302的日历、时间寄存器此外,DS1302 还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。 DS1302与RAM相关的寄存器分为两类:一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0HFDH,其中奇数为读操作,偶数为写操作;另一类为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。 2.3.5显示模块的设计如图5所示,采用LCD12864液晶显示,由VCC两个和接地端两个实现显示功能模块。图-5 LCD128*64液晶显示三、系统的软件设计3.1程序流程框图开始初始化读、写日期、时间和温度分离日期时间温度显示值显示子程序农历自动更新子程序日期、时间修改子程序闰月子程返回定时闹铃子程序 图-A 主程序流程图图-B计算阳历程序流程图 图-C 时间调整程序流程图图-D 阴历程序流程图3.2 子程序的设计3.2.1 DS18B20温度子程序44#ifndef DS18B20_HEADER#define DS18B20_HEADER/*/温度传感器定义sbit DQ = P1 0;/ds18b20/*/void Init_DS18B20(void)/初始化ds18b20unsigned char x=0;DQ = 1; /DQ复位Delay(8); /稍做延时DQ = 0; /单片机将DQ拉低Delay(80); /精确延时 大于 480usDQ = 1; /拉高总线Delay(14);x=DQ; /稍做延时后 如果x=0则初始化成功 x=1则初始化失败Delay(20);/*/unsigned char ReadOneChar(void)/读一个字节unsigned char i=0;unsigned char dat = 0;for (i=8;i0;i-)DQ = 0; / 给脉冲信号dat=1;DQ = 1; / 给脉冲信号if(DQ)dat|=0x80;Delay(4);return(dat);/*/void WriteOneChar(unsigned char dat)/写一个字节unsigned char i=0;for (i=8; i0; i-)DQ = 0;DQ = dat&0x01;Delay(5);DQ = 1;dat=1;/*/unsigned int ReadTemperature(void)/读取温度unsigned char a=0;unsigned char b=0;unsigned int t=0;float tt=0;Init_DS18B20();WriteOneChar(0xCC); / 跳过读序号列号的操作WriteOneChar(0x44); / 启动温度转换Init_DS18B20();WriteOneChar(0xCC); /跳过读序号列号的操作WriteOneChar(0xBE); /读取温度寄存器a=ReadOneChar(); /读低8位b=ReadOneChar(); /读高8位t=b;t=8;t=t|a;tt=t*0.0625;t= tt*10+0.5; /放大10倍输出并四舍五入return(t);/*/#endif3.2.2 读/写DS1302子程序#ifndef DS1302_HEADER#define DS1302_HEADER#include /*/定义DS1302时钟接口sbit DS1302_CLK = P13; /实时时钟时钟线引脚 sbit DS1302_IO = P14; /实时时钟数据线引脚 sbit DS1302_RST = P15; /实时时钟复位线引脚/*/定义累加器A中的各位sbit ACC0 = ACC0;sbit ACC7 = ACC7;/*/void DS1302InputByte(unsigned char d) /实时时钟写入一字节(内部函数) unsigned char i; ACC = d; for(i=8; i0; i-) DS1302_IO = ACC0; /相当于汇编中的 RRC DS1302_CLK = 1; DS1302_CLK = 0; ACC = ACC 1; /*/unsigned char DS1302OutputByte(void) /实时时钟读取一字节(内部函数) unsigned char i; for(i=8; i0; i-) DS1302_CLK = 0;ACC = ACC 1; /相当于汇编中的 RRC ACC7 = DS1302_IO; DS1302_CLK = 1; DS1302_CLK = 0; return(ACC); /*/void Write1302(unsigned char ucAddr, unsigned char ucDa)/ucAddr: DS1302地址, ucData: 要写的数据 DS1302_RST = 0; DS1302_CLK = 0; DS1302_RST = 1; DS1302InputByte(ucAddr); / 地址,命令 DS1302InputByte(ucDa); / 写1Byte数据 DS1302_CLK = 1; DS1302_RST = 0; /*/unsigned char Read1302(unsigned char ucAddr)/读取DS1302某地址的数据 unsigned char ucData; DS1302_RST = 0; DS1302_CLK = 0; DS1302_RST = 1; DS1302InputByte(ucAddr); / 地址,命令 ucData = DS1302OutputByte(); / 读1Byte数据 DS1302_CLK = 1; DS1302_RST = 0; return(ucData);/*/void Initial_DS1302() /时钟芯片初始化 unsigned char cctt; cctt=Read1302(0x80); if(cctt&0x80) /判断时钟是否关闭 Write1302(0x8e,0x00);/允许写操作/(2007年1月1日00时00分00秒星期一)Write1302(0x8c,0x08);/年Write1302(0x8a,0x02);/星期Write1302(0x88,0x01);/月Write1302(0x86,0x01);/日Write1302(0x84,0x00);/小时Write1302(0x82,0x00);/分钟Write1302(0x80,0x00);/秒/Write1302(0x90,0x55);/充电Write1302(0x8e,0x80);/禁止写操作 /*/void Reset_DS1302() Write1302(0x8e,0x00);/允许写操作/(2009年5月14日00时00分00秒星期四)Write1302(0x8c,0x09);/年Write1302(0x8a,0x04);/星期Write1302(0x88,0x05);/月Write1302(0x86,0x14);/日Write1302(0x84,0x00);/小时Write1302(0x82,0x00);/分钟Write1302(0x80,0x00);/秒/Write1302(0x90,0x55);/充电Write1302(0x8e,0x80);/禁止写操作/*/#endif3.2.3 LCD12864显示子程序#ifndef LCD_12864_HEADER#define LCD_12864_HEADER#include /该头文件中也有头文件/*/sbit LCM_cs = P27; /即LCM_RS,第四脚sbit LCM_std = P26;/即LCM_RW,第五脚,又叫SIDsbit LCM_sclk = P25;/即LCM_EN,第六脚/*/sbit LCM_psb = P24; /H=并口; L=串口;sbit LCM_rst = P22; /Reset Signal 低电平有效/若只用串口,可把LCM_psb定义为不用的引脚/同理,LCM_rst不用也可定义为不用的引脚/*/函数声明void LCM_WriteString(unsigned char *str) ; /写字符 例:LCM_WriteString(您好!);void LCM_WriteDatOrCom(bit ,unsigned char ); /(0,指令) (1,数据)void LCM_w_byte(unsigned char bbyte); /写一个字节给LCM 6660void LCM_init(void); /LCM初始化void LCM_clr(void); /清屏void Delay(int num); /延时,用于各驱动函数void SetXY(int row,int col); /row为行数03,col为列数07/*/初始化LCMvoid LCM_init(void) LCM_rst=1; LCM_psb=0; LCM_WriteDatOrCom (0,0x30); /*30-基本指令动作*/ LCM_WriteDatOrCom (0,0x01); /*清屏,地址指针指向00H*/ Delay (100); LCM_WriteDatOrCom (0,0x06); /*光标的移动方向*/ LCM_WriteDatOrCom(0,0x0c); /*开显示,关游标*/*/写指令或数据 (0,指令) (1,数据)void LCM_WriteDatOrCom(bit dat_comm,unsigned char content) unsigned char a,i,j; Delay(50); a=content; LCM_cs=1; LCM_sclk=0; LCM_std=1; for(i=0;i5;i+) LCM_sclk=1; LCM_sclk=0; LCM_std=0; LCM_sclk=1; LCM_sclk=0; if(dat_comm) LCM_std=1; /data else LCM_std=0; /command LCM_sclk=1; LCM_sclk=0; LCM_std=0; LCM_sclk=1; LCM_sclk=0; for(j=0;j2;j+) for(i=0;i4;i+) a=a1; LCM_std=CY; LCM_sclk=1; LCM_sclk=0; LCM_std=0; for(i=0;i4;i+) LCM_sclk=1; LCM_sclk=0; /*/*/清屏函数void LCM_clr(void) LCM_WriteDatOrCom (0,0x30); LCM_WriteDatOrCom (0,0x01); Delay (180);/*/向LCM发送一个字符串,长度64字符之内。/应用:LCM_WriteString(您好!); void LCM_WriteString(unsigned char *str)while(*str != 0) LCM_WriteDatOrCom(1,*str+); *str = 0;/*/void Delay(int num)/延时函数while(num-); void SetXY(int row,int col) /row为行数03,col为列数07 if(row=0) LCM_WriteDatOrCom(0,0x80+col); if(row=1) LCM_WriteDatOrCom(0,0x90+col); if(row=2) LCM_WriteDatOrCom(0,0x88+col); if(row=3) LCM_WriteDatOrCom(0,0x98+col); #endif四. 指标测4.1 测试仪器序号名称型号1PC机2直流稳压电源CA17303D3 ISIS单片机仿真器ISIS 7 Professional4数字万用表DT92085ISP在线编程器4.硬件测试电子万年历的电路系统较大,对于焊接方面更是不可轻视,庞大的电路系统中只要出于一处的错误,则会对检测造成很大的不便,而且电路的交线较多,点锡的时候要小心谨慎,注意处理,否则很容易就造成线路短路,同时,若点锡过少,则会造成线路的虚焊,会对电路造成断路现象。本多功能电子万年历的设计调试中遇到了很多的问题。回想这些问题只要认真多思考都是可以避免的,以下为主要的问题:(1)LCD12864液晶显示器的显示错乱,原因出于没有认真看清各引脚信息,同时在接稳压电源时犯了低级失误正负接反了。解决:重新调整各个引脚的输入输出,相应接入电路,即可解决出现在的显示错乱,并将稳压电源正负端正确连接。(2)对万年历修改时间或日期时,有时LCD部分显示区域被屏蔽掉或其他错误指令造成不显示或者只显示“?”现象。解决:根据仪器的测试,发现是写入的程序中存在读写指令方面的错误,经过仿真软件ISIS 7 Professional的仿真测试,调试之后,成功解决问题。4.软件测试电子万年历是多功能的数字型,可以看当前日期(阴、阳历),时间,还有温度的仪器。电子万年历功能很多,所以对于它的程序也较为复杂,所以在编写程序和调试时出现了相对较多的问题。最后经过多次的模块子程序的修改,一步一步的完成,最终解决了这些问题。在软件的调试过程中主要遇到的问题如下:1烧入程序后,LCD显示板背景灯光亮,但是没有任何显示。解决:首先对调用的延时进行逐渐修改,其次是显示器的引脚连接进行调整,避免连接错误。调用显示程序时,如果不在反回时屏蔽掉最后的附值,则会出现亮屏现象,所以在显示的后面加了屏蔽子令,最后解决了此问题。2修改时间、日期时没有农历没有自动对应上。解决:把不相关的程序暂时屏蔽,对农历的子程序独立调试,发现在调用农历自动更新时,对十进制和十六进制处理不好,所以会造成错乱。最后把相应的十进制进行修改,使得可以与十六进制对应,最后解决了此问题. 4.测试结果分析与结论4.1 测试结果分析(1)在测试中遇到发光二极管、LCD液晶显示器不显示时,首先使用试测仪对电路进行测试,观察是否存在漏焊,虚焊,或者元件损坏.(2)LCD液晶显示器显示不正常,首先使用试测仪对电路进行测试,观察电路是否存在短路现象。查看烧写的程序是否正确无误,对程序进行认真修改。4.4.2 测试结论经过多次的反复测试与分析,可以对电路的原理及功能更加熟悉,同时提高了设计能力与及对电路的分析能力.同时在软件的编程方面得到更到的提高,对编程能力得到加强.同时对所学的知识得到很大的提高与巩固.五、作品心得总结本次电子设计大赛我们选的题目是一个综合性和实用性都较强的题目,也是进大学以来所做过的课程设计中最有意义也是最难的一次。一是因为该设计所有知识贴近我们的专业课程,能将所学到的书本知识运用到实际应用中来,大大增强了自己的动手能力,对电子产品的开发设计和实际操作有了一定的掌握。同时,感觉到学习理论知识和实际运用是有很大差别的,学好了不一定就能顺利地做好,而只有动手做出来了,才能真正理解和掌握理论知识。二是因为符合我们的兴趣爱好,做自己感兴趣的事最有动力也是最能集中注意力的,一天的时间总是感觉一晃就过去了,连坐几个小时不起身也不觉得累,看着自己的设计方案一步步变成现实,的确是一件很开心的事。经过一段时间的努力奋斗,我们小组终于按期完成了这个课题。回想这期间的各种经历,真是感受颇多。在这次电子设计制作中,从方案论证、硬件电路设计到软件设计,工作量都比较大。而我们只有课余时间可以利用,如果我们不能很好的分工合作,是不能完成的。我们集中时间在一起讨论,商定最终方案,确定硬件电路、软件编程。由于在此之前我们都没有工程实际经验,在调试过程中设计中的一些不合理因素就表现出来了。调试过程更是对我们耐力的考验,许多问题莫名其妙地发生了。我们曾经沮丧过,懊恼过,但我们没有被失败吓倒,我们继续保持着高度的热情,共同奋斗,认真地找出错误、不足之处,一一进行改正,不断提高。就这样,各项功能一点点地被实现,我们也一步步地向前进,最终迎来了胜利的曙光。在这过程中我们常会遇到一些自己觉得比较困惑的的问题,这时,向老师或有经验的学长请教,大家一起讨论,互通有无,使我们从中受益非浅。虚心向别人学习,取人之长,补己之短,是一种很重要的学习方法。通过这次科技创新制作活动,我们拓宽了思路,开阔了视野,从中学到了很多课本上学不到的东西。在完成设计的过程中,我们有更多的机会和一些很有经验的人才接触,使我们学到了很多解决实际问题的方法。这次活动巩固了我们的基础知识,培养了我们的实践动手能力

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论