电饭煲课程设计程序_第1页
电饭煲课程设计程序_第2页
电饭煲课程设计程序_第3页
电饭煲课程设计程序_第4页
电饭煲课程设计程序_第5页
已阅读5页,还剩74页未读 继续免费阅读

下载本文档

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

文档简介

课程设计任务书专业年级班设计题目 电饭煲控制器重要内容电饭煲控制器有预约功能,有烹饪大米饭、粥、保温、冷饭加热等功能具体规定1.具体功能大米饭:当达成105°时,停止加热,并在15分钟后通过蜂鸣器提醒用户。粥:开始加热后,通过测温元件监视锅底温度,使锅底温度保持在99°~100.5°之间(100°时停止加热、99°时开始加热),此种状态连续20分钟,之后通过蜂鸣器提醒用户过程结束。保温:使锅底温度维持在50°~60°之间。冷饭加热:锅底加热至100°,使锅底温度保持在99°~100.5°之间(100°时停止加热、99°时开始加热),此种状态连续5分钟,之后通过蜂鸣器提醒用户过程结束。2.定期用户可以是电饭煲在预约时间(倒计时方式)开始工作,最长预约 时长为 12小时。3.控制面板四个发光管分别与大米饭、粥、保温、冷饭加热相相应,另一发光管用 于区分工作与预约,两位数码管用于预约时间及倒计时。按键有:开始键、 功能键、加键、减键。进度安排1、了解任务规定,拟定具体方案2、lcd12864液晶屏子程序设计3、DS18B20温度传子程序感器设计4、设计单片机按键功能程序5、根据任务规定编写程序,设计按键电路6、检查设计效果,完善功能完毕后应上交的材料电饭煲控制器论文总评成绩指导教师署名日期年月日系主任 审核日期年月日摘要电饭煲控制器有预约功能,有烹饪大米饭、粥、保温、冷饭加热等功能.。基于stc89c52单片机控制的电饭煲控制器,有lcd液晶屏显示和ds18b20温度检测功能,尚有定期工作选择功能。关键字:电饭煲温度控制DS18B20LCD12864 键盘按键目录TOC\o"1-3"\h\u9115一、任务分析与设计电路 1185181、总体方案设计 1248051.1、控制方案选择 1235231.2、测温模块控制选择 1210151.3、键盘按键方案选择 2231391.4、显示方案选择 2244391.5、声音模块方案选择 367241.6、功率元件模块方案选择 3245662、电路设计 3286722.1、控制模块 346542.2、测温模块 650442.3、键盘模块 10312692.4、显示模块 11236082.5、声音模块 13129212.6、功率模块 1417465二、软件设计 15296001、程序流程图 1543261.1、主流程图 15272241.2、子流程图 17284521.3、功率元件控制流程图 17323911.4、定期预约工作流程图 1817271三、系统调试分析 20302251、系统硬件调试 2025462、系统软件调试 2031603四、心得体会 20一、任务分析与设计电路1、总体方案设计1.1、控制方案选择方案:采用STC公司的STC89C52RC。此单片机价格低,资源多,高性价比,应用广泛,无论是从内部构造,还是编程方面,51系列单片机都相对简朴容易掌握和使用。

对于本题目而言,由于电饭煲需要实现的功能少,对解决器的规定不高,使用STC89C52RC不仅可以完全实现对电饭煲的控制,还节约了成本。

综合考虑,电饭煲控制器采用STC89C52RC单片机。1.2、测温模块控制选择测温模块采用数字温度传感器DS1820。DS1820是美国DALLAS半导体公司生产的可组网数字式温度传感器,其内部使用了在板(ON-B0ARD)专利技术。所有传感元件及转换电路集成在形如一只三极管的集成电路内。与其它温度传感器相比,DS1820具有以下特性:

1.独特的单线界面方式,DS1820在与微解决器连接时仅需要一条口线即可实现微解决器与DS1820的双向通讯。2.

DS1820支持多点组网功能,多个DS1820可以并联在唯一的三在线,实现多点测温。

3.

DS1820在使用中不需任何外围元键。

4.测温范围-55℃~+125℃,固有测温分辨率0.5℃。

5.

测量结果以9位数字量方式串行传送。由于在本课程设计中,电饭煲的盼望温度最高值在数字温度传感器DS1820的量程内,同时,DS1820具有测温系统简朴、测温精度高、连接方便、占用口线少等优点。所以,我选用DS18B20温度传感器。1.3、键盘按键方案选择由于在该课程设计中,需要的按键只要四个:开始键、功能键、加 键、减键,键盘个数较少,可以用独立式按键电路。所以我选用独立按键电路。1.4、显示方案选择方案一、使用数码管显示。数码管能显示数字,使用方法简朴方便,可是显示过于单调。方案二、使用lcd12864液晶屏。lcd12864能清楚显示字符和数字,显示的信息更多。由于数码管只能显示数字,过于单调,而lcd12864能显示汉字和数字,尚有各种图案,能更好地进行人机沟通,达成更好的显示效果。综上所述,我选用lcd1286液晶屏。1.5、声音模块方案选择由于在该课程设计中,只需要对工作状态和工作方式的提醒,用蜂鸣器产生的beebee声音即可。1.6、功率元件模块方案选择功率元件的控制通过固态继电器来完毕。固态继电器也称作固态开关。是一种由固态电子组成的新型电子开关器件,集光电藕合,大功率双向晶闸管,及触发电路,阻容吸取回路于一体.用来代替传统的电磁式继电器。实现对单相或者三相电动机的正反转控制,或者其他控制无触点无动作噪音。开关速度快无火花干扰和可靠性高等特性。由于单片机学习板配有固态继电器,所以直接选用单片机学习板的继电器作为功率元件模块。2、电路设计2.1、控制模块STC89C52是一个低电压,高性能CMOS

8位单片机,片内含8kbytes的可反复擦写的Flash只读程序存储器和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央解决器和Flash存储单元,STC89C52单片机在电子行业中有着广泛的应用。特点:1、兼容MCS51指令系统2、8kB可反复擦写(大于1000次)FlashROM;3、32个双向I/O口;4、256x8bit内部RAM;5、3个16位可编程定期/计数器中断;6、时钟频率0-24MHz;7、2个串行中断,可编程UART串行通道;8、2个外部中断源,共8个中断源;9、2个读写中断口线,3级加密位;10、低功耗空闲和掉电模式,软件设立睡眠和唤醒功能;11、有PDIP、PQFP、TQFP及PLCC等几种封装形式,以适应不同产品的需求。工作原理:STC89C52为8位通用微解决器,采用工业标准的C51内核,在内部功能及管脚排布上与通用的8xc52相同,其重要用于会聚调整时的功能控制。功能涉及对会聚主IC内部寄存器、数据RAM及外部界面等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接受译码及与主板CPU通信等。重要管脚有:XTAL1(19脚)和XTAL2(18脚)为振荡器输入输出端口,外接12MHz晶振。RST/Vpd(9脚)为复位输入端口,外接电阻电容组成的复位电路。VCC(40脚)和VSS(20脚)为供电端口,分别接+5V电源的正负端。P0~P3为可编程通用I/O脚,其功能用途由软件定义,如图1-1、1-2所示。图1-1 AT89C52的DIP封装引脚图图1-2 最小系统图2.2、测温模块测温模块采用数字温度传感器DS1820。DS1820是美国DALLAS半导体公司生产的可组网数字式温度传感器,其内部使用了在板(ON-B0ARD)专利技术。所有传感元件及转换电路集成在形如一只三极管的集成电路内。与其它温度传感器相比,DS1820具有以下特性:

独特的单线界面方式,DS1820在与微解决器连接时仅需要一条口线即可实现微解决器与DS1820的双向通讯。2.

DS1820支持多点组网功能,多个DS1820可以并联在唯一的三在线,实现多点测温。

3.

DS1820在使用中不需任何外围元件。

4.测温范围-55℃~+125℃,固有测温分辨率0.5℃。

5.

测量结果以9位数字量方式串行传送。DS18B20有两种封装形式,即TO-92封装和8-pinSOIC封装。每种封装的样式及引脚排列见图1-3,其引脚功能描述见表1。 图1-3 DS18B20的引脚排列序号名称引脚功能描述1GND地信号2DQ数据输入/输出引脚。开漏单总线界面引脚。当被用着在寄生电源下,也可以向器件提供电源。3VDD可选择的VDD引脚。当工作于寄生电源时,此引脚必须接地。表1DS18B20具体引脚功能描述下图是温度检测模块原理如图1-4所示:图1-4温度检测模块原理图2.3、键盘模块在键盘模块中,我采用独立式按键电路。特点:1)每个键独立地接入一根数据输入线。2)平时所有的数据输入线都连接成高电平;3)当任何一个按键压下时,与之相连的数据输入线被拉成低电平。4)要判断是否有键按下,只要位解决指令即可。独立连接式键盘优点是结构简朴、使用方便,但随着键数的增多,所占用的IO口线也增长。该系统的键盘由4个独立键盘构成。键盘的一脚接在单片机的P1.0至P1.4脚上,此外一脚接在电源地上,当有键盘按下时对 应的键盘就会有一低电平送到单片机内部。为消除触点式按键开关的机械抖动,单片机内部有程序进行消抖解决,然后拟定那一个键盘被按下后来执行 程序完毕该系统的指定工作。按键键盘原理图如图1-5所示: 图1-5按键图2.4、显示模块显示模块我使用了lcd12864液晶屏。带中文字库的12864是一种具有4位/8位并行、2线或3线串行多种界面方式,内部具有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64,

内置8192个16*16点汉字,和128个16*8点ASCII字符集.运用该模块灵活的界面方式和简朴、方便的操作指令,可构成全中文人机交互图形界面。可以显示8×4行16×16点阵的汉字.

也可完毕图形显示.低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不管硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。其控制方法如图1-7、1-8所示。12864显示电路如图1-6所示:图1-612864电路图图1-7 图1-82.5、声音模块该模块使用蜂鸣器。蜂鸣器需要的驱动电流较大(50~100mA),由于单片机输出低电平时的驱动电流只有十几毫安,因此要外接一个PNP三极管作为功率驱动器件。当P3^7口输出低电平时,PNP导通,蜂鸣器正常工作,当当P3^7口输出高电平时,PNP截止,蜂鸣器暂停工作。原理如图1-9:图1-9蜂鸣器2.6、功率模块功率模块我选用单片机学习板上的固态继电器。如图1-10所示。图1-10继电器电路图当单片机P3^6口输出低电平时,BJT管导通,LED9指示灯亮,继电器工作。二、软件设计1、程序流程图系统的软件设计采用结构化和模块化设计的方法,便于程序的编写、调试和排除错误,同时也便于检查和维护。单片机系统的软件程序重要由以下模块组成:初始化主程序、输入及显示、温度采集、功率元件控制。1.1、主流程图如图2-1所示:图2-1系统主流程图1.2、子流程图如图2-2:图2-2系统子程序流程图1.3、功率元件控制流程图图2-2子流程图电饭煲控制系统对电饭煲加热与否需要根据当前锅内温度以及所处的工作模式做出选择。其软件控制流程如下图所示。控制器先通过温度传感器获得当前锅内温度,根据所处的工作模式,得到需要到达的目的温度。若当前锅内温度小于目的温度,则 控制器接通加热盘加热,否则断开加热盘,停止加热。功率元件控制流程如图2-3所示。图2-3功率元件控制流程图1.4、定期预约工作流程图系统运营后,若按下“开始”按键,系统即可进入定期预约功能状态,表达“时”位的个位数值处在可设定状态,高位默认显示“0”。此时按下“加”键,预定期间的小时数的个位将累加1,假如累加后的数值大于9,高位的数值将自动变为1;若按下“减”键,预定期间的小时数的个位将减去1。由于本控制系统支持最大定期12小时,当小时数超过12后会溢出为0。即置定期数值时,若当前示数为12,且按下“加”键,则lcd显示的数值由12变为00。预约小时数设定完毕后,按下“开始”键,系统则保存用户设定的定期时间并退出定期时间设定状态。随如图2-4所示:图2-4定期工作流程图三、系统调试分析1、系统硬件调试按照画好的电路图把外围电路接好,重要的自己做了一个独立按键小键盘。而ds18b20温度传感器的接线比较简朴,只需3跟线就完毕了。2、系统软件调试12864液晶屏的原理比较好理解,不要多长时间就看懂。而ds18b20温度传感器的原理就有点难懂,看了比较久才看懂。但在自己编译过程中,却出现很多错误。比如,系统无法读取ds18b20里面的温度,仔细检查程序后发现在ds18b20读取数据时间那里有错误,时间太短,导致无法读取。在编写主程序时,发现无法返回温度值给单片机,搞了很久都搞不定。后来发现是忘掉了在ds18b20子程序那里加入返回函数return,加上return后,终于完毕。四、心得体会在看到课程设计的题目后,我就感觉应当是挺好玩的。果然我看到了电饭煲控制器这个题目!以前在家里就修过坏了的电饭煲,可惜没能修好...通过这次的课程设计后,我想我应当能修坏了的电饭煲了!这次课程设计获益良多,既加深了我c语言的知识,又让我学会了lcd12864和ds18b20的使用。而在编程过程中,一个小小的语句错误就会到致程序无法运营,更让我明白谨慎小心的重要性。在最后系统能正常运作时,整个人都有一种成功的飘然...附录程序:主程序#include<reg52.h>#include<stdio.h>#include<12864.c>#include<last18B20.c>//#include<function.c>#defineucharunsignedchar#defineuintunsignedintsbitk1=P3^2;//功能按键sbitk2=P3^3;sbitk3=P3^4;sbitk4=P3^5;sbita1=P1^0;//按键指示灯sbitb1=P1^1;sbitc1=P1^2;sbitc2=P1^3;ucharcodem1[]="煮饭";ucharcodem2[]="煮粥";ucharcodem3[]="保温";ucharcodem4[]="冷饭加热";ucharcodem5[]="工作状态";ucharcodem6[]="定期状态";ucharcodem7[]="预定期间:";ucharcodem8[]="H";ucharm9[]="";ucharcodem10[]="定期时间:";voidzhufan(); //煮饭函数声明voidzhuzhou(); //煲粥函数声明voidbaowen(); //保温函数声明voidjiare(); //冷饭加热函数声明voidtiming(); //定期预约函数voidselect();sbity1=P3^6; //继电器sbity2=P3^7; //蜂鸣器uints1=0,s=0,m=0,h=0;//秒,分,时计数/************延时********************/voiddelay2(uintx){ while(x--){ uinty; for(y=125;y>0;y--);}}/******************定期器***********************/voidtime0()//定期器0{ TMOD=0x01; TH0=(65536-50000)/256;//50ms TL0=(65536-50000)%256; ET0=1; TR0=1;}voidt0()interrupt1{ TH0=(65536-50000)/256; TL0=(65536-50000)%256; s1++; if(s1==20){s++;s1=0;} //1s if(s==60){m++;s=0;} //1min if(m==60){h++;m=0;} //1hour if(h==12){h=0;} //12hour}/******************************按键功能********************/voidkey(){ if(k1==0) //工作状态按键 { delay2(10); if(k1==0) { lcd_init(); //lcd初始化 a1=0;b1=1;c1=1;c2=1; lcd_pos(0,0); //显示菜单 print(m1); lcd_pos(0,3); print(m2); lcd_pos(0,6); print(m3); lcd_pos(2,2); print(m4); }while(!k1); //等待松开按键 while(k1&k2&k3&k4); //等待选择菜单功能 delay2(10); select(); } if(k2==0) //预定功能 按键 { delay2(10); if(k2==0) { lcd_init(); a1=0x02; lcd_pos(0,0); print(m7); timing(); } } } voidselect() //选择4种功能{ if(k1==0) //煮饭 { delay2(10); if(k1==0) { a1=0;b1=1;c1=1;c2=1;//工作指示灯 lcd_init(); lcd_pos(0,3); print(m1);// while(!k1);// lcd_pos(0,3);// print(m2); zhufan(); } } if(k2==0) //煮粥 { delay2(10); if(k2==0) { a1=1;b1=0;c1=1;c2=1; lcd_init(); lcd_pos(0,3); print(m2); zhuzhou(); } } if(k3==0) //保温 { delay2(10); if(k3==0) { a1=1;b1=1;c1=0;c2=1; lcd_init(); lcd_pos(0,3); print(m3); baowen(); } } if(k4==0) //冷饭加热 { delay2(10); if(k4==0) { a1=1;b1=1;c1=1;c2=0; lcd_init(); lcd_pos(0,2); print(m4); jiare(); } }}//*************************煮饭 *************************/voidzhufan(){ ucharw1,w4; lcd_init(); lcd_pos(0,3); print(m1); y1=1; //打开继电器,开始加热 //get_temp();// delay(100); //w4=get_temp(); while(get_temp()<200) { c2=0; delay2(10); get_temp(); lcd_pos(2,0); dis_temp(); delay2(100); } // while(1)// {// // get_temp();////// delay(70);//// //delay(70);//////// if(w4>26)break;// }// while(1)// {lcd_pos(3,0);print(m1);} //while(temp<105); while(w4>25) //温度大于105°C时 {// get_temp();// lcd_pos(2,0);// dis_temp(); EA=1; while(s<=15); //定期15min EA=0; s1=0;s=0;m=0;h=0; y1=0; for(w1=5;w1>0;w1--) //煮饭完毕,鸣笛5次 { y2=0; delay2(100); delay2(100); y2=1; delay2(100); delay2(100); } if(y2=1)break; } baowen();}/******************************煮粥*************************/voidzhuzhou(){ucharw1; lcd_init(); lcd_pos(0,3); print(m2); y1=1; //打开继电器,开始加热 get_temp();//获取温度数值 while(temp<100); EA=1; while(m<=20) { get_temp(); delay2(10); if(temp>100) { y1=0;//温度大于100,停止加热 } if(temp<=99)//温度在99到100度之间 { //保持温度稳定 y1=1; } } EA=0; s1=0;s=0;m-0;h=0; for(w1=5;w1>0;w1--) { y2=0; delay2(100); delay2(100); y2=1;//煲粥完毕,鸣笛5次 delay2(100); delay2(100); } baowen(); }/**********************************保温*************************/voidbaowen(){ lcd_init(); lcd_pos(0,3); print(m3); while(1) { get_temp(); if(temp<=50) {y1=1;delay2(100);} if(temp>=60) {y1=0;delay2(100);} if(k1==0) { delay2(10); if(k1==0)zhufan(); } if(k2==0) { delay2(10); if(k2==0)zhuzhou(); } if(k3==0) { delay2(10); if(k3==0)baowen(); } if(k4==0) { delay2(10); if(k4==0)jiare(); } }}/**************************冷饭加热************************************/voidjiare(){ ucharw1; lcd_init(); lcd_pos(0,2); print(m4); y1=1; get_temp(); while(temp<100); EA=1; while(m<=5) { get_temp(); delay2(10); if(temp>100) { y1=0;delay2(100);//温度大于100,停止加热 } if(temp<=99)//温度在99到100度之间 { //保持温度稳定 y1=1;delay2(100); } } EA=0; s1=0;s=0;m-0;h=0; for(w1=5;w1>0;w1--) { y2=0; delay2(100); delay2(100); y2=1;//冷饭加热完毕,鸣笛5次 delay2(100); delay2(100); } baowen();}/****************************定期预约**************************/voidtiming(){ uchare1=0,e2=0,e3=0; ucharq1; lcd_pos(0,5); write_data(m9[0]); delay2(10); lcd_pos(0,6); write_data(m9[0]); lcd_pos(0,7); print(m8); delay2(10); do {// while(1)// { if(k3==0) //个位减1 { delay2(10); if(k3==0) { e2--; while(!k3); } } if(k4==0) //个位加1 { delay2(10); if(k4==0) { e2++; while(!k4); } } if(e2==10) { e2=0;e1++; } if(e2<0){e2=0;} e3=e1*10+e2; //计算时间大小 if(e3>12){e1=0;e2=0;} lcd_pos(0,5); write_data(m9[e1]); delay2(10); lcd_pos(0,6); write_data(m9[e2]);// } }while(k1); //按确认键结束 lcd_init(); //lcd初始化 a1=0;b1=1;c1=1;c2=1; lcd_pos(0,0); //显示菜单 print(m1); lcd_pos(0,3); print(m2); lcd_pos(0,6); print(m3); lcd_pos(2,2); print(m4); EA=1; delay2(100); do //预定功能选择 { if(k1==0) //煮饭 { delay2(10); if(k1==0) { q1=1; lcd_init(); lcd_pos(0,3); print(m1); } } if(k2==0) //煲粥 { delay2(10); if(k2==0) { q1=2; lcd_init(); lcd_pos(0,3); print(m2); } } if(k3==0) //保温 { delay2(10); if(k3==0) { q1=3; lcd_init(); lcd_pos(0,3); print(m3); } } if(k4==0) //冷饭加热 { delay2(10); if(k4==0) { q1=4; lcd_init(); lcd_pos(0,2); print(m4); } } e2=e3%10; //定期时间显示 e1=e3/10; lcd_pos(3,0); print(m10); lcd_pos(3,5); write_data(m9[e1]); delay2(10); lcd_pos(3,6); write_data(m9[e2]); lcd_pos(3,7); print(m8); }while((e3=e3-s)!=0);//定期计算 EA=0; if(q1=1)zhufan(); //电饭煲工作状态 if(q1=2)baozhou(); if(q1=3)baowen(); if(q1=4)jiare(); }voidmain(){ EA=0; //关中断 time0(); //定期器初始化 lcd_init(); //12864液晶初始化 lcd_pos(0,2); print(m5); //显示工作状态 lcd_pos(2,2); print(m6); //显示预定状态 while(1) { key(); } }12864LCD显示子程序/****12864子函数函数(各启动命令)***/#include<reg52.h>#include<intrins.h>#include<stdlib.h> #defineucharunsignedchar#defineuintunsignedint/*端口定义*/sbitLCD_RS=P2^0;//寄存器选择输入sbitLCD_RW=P2^1;//液晶读/写控制sbitLCD_EN=P2^2;//液晶使能控制sbitLCD_PSB=P2^3;//串/并方式控制voiddelay1ms(uintx){uinti,j;for(j=0;j<x;j++) for(i=0;i<110;i++);} /*******************************************************************//**//*写指令数据到LCD*//*RS=L,RW=L,E=高脉冲,D0-D7=指令码。*//**//*******************************************************************/voidwrite_com(ucharcom){LCD_RS=0;LCD_RW=0;LCD_EN=0;P0=com; delay1ms(5);LCD_EN=1; delay1ms(5);LCD_EN=0;}/*******************************************************************//**//*写显示数据到LCD*//*RS=H,RW=L,E=高脉冲,D0-D7=数据。*//**//*******************************************************************/voidwrite_data(uchardat){LCD_RS=1;LCD_RW=0;LCD_EN=0;P0=dat; delay1ms(5);LCD_EN=1; delay1ms(5);LCD_EN=0;}/****直接输出数组中的字符串***/voidprint(uchar*str)//LCD显示函数{while(*str!='\0') { write_data(*str); str++; }}/*********************************************************//**//*设定显示位置*//**//*********************************************************/voidlcd_pos(ucharX,ucharY){ucharpos;if(X==0){X=0x80;}elseif(X==1){X=0x90;}elseif(X==2){X=0x88;}elseif(X==3){X=0x98;}pos=X+Y;write_com(pos);//显示地址}/*******************************************************************//**//*LCD初始化设定*//**//*******************************************************************/voidlcd_init(){LCD_PSB=1;//并口方式write_com(0x30);//基本指令操作write_com(0x0C);//显示开,关光标write_com(0x01);//清除LCD的显示内容}DS18B20温度子程序/***get_temp()直接求出温度值,有两位有效小数与一位有效小数(默认), dis_temp()显示温度值***/#include<reg52.h>#include<stdio.h>#defineucharunsignedchar#defineuintunsignedintsbitDQ=P1^7;//定义DS18B20端口DQucharnum;uinttemp; //整型温度数据floatf_temp; //浮点型温度数据,用于间接变换或串口通信uintx,y,z,w;uchardatatem

温馨提示

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

评论

0/150

提交评论