智能仪表设计报告

更新时间:2024-06-17 11:32:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

河 南 农 业 大 学

《智能仪器设计实习》

设 计 说 明 书

题 目: 实时日历时钟显示系统的制作

学 院: 理 学 院

专 业: 电子信息科学与技术 班 级: 06级电科一班

学 号: 0608101026 姓 名: 指导教师:

成 绩:

时 间: 2009年12月18 日至2010年 1月 18 日

实时日历时钟显示系统的制作

一、背景及意义

现在流行的串行时钟芯片很多,如DSl302、DSl307、PcF8485等。这些芯片接口简单、价格低廉、使用方便,被广泛地采用。本文介绍的实时时钟芯片为Dsl302,是Dallas公司的一种具有涓细电流充电能力的实时时钟芯片,采用普通32.768kHz晶振。主要特点是采用串行数据传输,可为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能。

二、系统分析

1、 DSl 302的结构及工作原理

Dsl302是美国Dallas公司推出的一种高性能、低功耗、带RAM的实时时钟芯片,它可以对年、月、日、星期、时、分、秒进行计时,且具有闰年补偿功能,工作电压宽达2.5~5.5V。采用三线接口与CPu进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。Dsl302内部有一个31×8的用于临时性存放数据的RAM寄存器。Dsl302是DSl202的升级产品,与DSl202兼容,但增加了主电源/后背电源双电源引脚,同时提供了对后背电源进行涓细电流充电的能力。 1.1引脚功能及结构图

vCCl为后备电源,vCc2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DSl302由VCCl或VCC2两者中的较大者供电。当VCc2大于VCCl+0.2V时,VcC2给DSl302供电。当VCC2小于VCC时,DSl302由vccl供电。x1、x2为振荡源,外接32.768Hz晶振。RST是复位,片选线,通过把RST输入驱动置高电平

来启动所有的数据传送。RST输入有两种功能:(1),RsT接通控制逻辑,允许地址/命令序列送入移位寄存器:(2),RST提供了终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DSl302进行操作。如果在传送过程中置RsT为低电平,则会终止此次数据传送,并且狄)引脚变为高阻态。上电运行时,在vCc≥2.5v之前,RST必须保持低电平。只有在sCLK为低电平时,才能将RST置为高电平。P1.0为串行数据输入输出端(双向),下文有详细说明。SCLK为时钟输入端。

1

1.2 DSl302的控制字节说明

DSl302的控制字节的最高有效位(位7)必须是逻辑l,如果它为0,则不能把数据写入到DSl302中:位6如果为O,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出。 1.3数据输入输出I/O

在控制指令字输入后的下一个SCLK时钟的上升沿时数据被写入DSl302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个ScLK脉冲的下降沿读出Dsl302的数据,读出数据时从低位0位至高位7。 1.4 DSl302的寄存器

DSl302共有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式,其日历、时间寄存器及其控制字如表1所列。

DSl302的日历、时钟寄存器及其控制字

此外,Dsl302还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。Dsl302

2

与RAM相关的寄存器分为两类,一类是单个RAM单元,共31个,每个单元组态为一个位的字节,其命令控制字为c0H~印H,其中奇数为读操作,偶数为写操作;另一类为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字FEH(写)、FFH(读)。

三、系统硬件设计

DSl 302实时显示时间的软硬件 2.1 DSl302与CPU的连接

DSl302与CPU的连接仅需要三条线,即SCLK、I/o、RST。DSl302与89C2051的连接如图2所示,其中时钟的显示用LCD显示。

图2 Dsl302与cPU的电路连接实际上在调试程序时可以不加电容,只加一个32.768Hz的晶振即可,在选择晶振时注意不同的晶振误差较大。另外还可以在上面的电路中加入DSl8820,同时显示实时温度,只要占用cPu一个口线即可。LcD还可以换成LED,也可以使用北京卫信杰科技发展有限公司生产的10位多功能8段液晶显示模块LcMl01,内含看门狗(wDT)/时钟发生器及两种频率的蜂鸣器驱动电路,并有内置显示RAM,可显示任意字段笔划,具有3~4线串行接口,可与任何单片机、IC接口,功耗低,显示状态时电流为2uA(典型值),省电模式时小于1“A,工作电压2.4~3.3v,显示清晰。

3

四、系统软件设计

1.实验程序:

#include #include

//#include

#define Uchar unsigned char

#define Uint unsigned int

extern void Delayus(Uchar j); //延时时间为 j*10+8 us (根据生成的汇编代码计算)

extern void Delayms(Uint n) ; //延时时间大约为n ms

extern void Dsenddata(Uchar dd); //8位数据从74HC164的串行输入端输入,从输出端并行输出

//数码管显示和按键扫描用到此函数 extern void Display(Uchar *p); //数码管显示子程序 extern void Lcdreset( void ); //液晶屏初始化

extern void Disponechar(Uchar x,Uchar y,Uchar Wdata); //液晶屏指定位置输出一个字符(Wdata代表欲显示字符的ASC码)

extern void Eputstr(Uchar x,Uchar y, Uchar code *ptr); //液晶屏指定位置输出字符串

extern void v_BurstW1302T(Uchar *pSecDa); //DS1302 的连续写子程序

extern void v_W1302(Uchar ucAddr, Uchar ucDa); //DS1302 的单字节写子程序 extern void v_BurstR1302T(Uchar *pSecDa); //DS1302 的连续读子程序

//注释: 以上外部函数的函数原型都在YB-51-B实验板配套演示程序的对应文件夹中 /****************************************************** *液晶屏显示模块

********************************************************/ //#include

#define RS1602 P1_0 //数据/命令选择 #define RW1602 P1_1 //读/写选择 #define EL1602 P1_2 //使能信号 #define DataPort P0 // 数据端口

#define Busy 0x80

/*=======================================================

正常读写操作之前必须检测LCD控制器状态: CS=1 RS1602=0 RW1602=1 DB7: 0 LCD控制器空闲; 1 LCD控制器忙

========================================================*/ void WaitForEnable( void ) { DataPort = 0xff; RS1602=0; RW1602=1; _nop_(); EL1602=1; _nop_();

4

_nop_();

while( DataPort & Busy ); EL1602=0; }

/*======================================================= 写控制字符子程序: E=1 RS1602=0 RW1602=0

=======================================================*/

void LcdWriteCommand( Uchar CMD,Uchar AttribC ) {

if (AttribC) WaitForEnable(); // 检测忙信号? RS1602=0; RW1602=0; _nop_();

DataPort=CMD;

_nop_(); EL1602=1; _nop_();

_nop_();

EL1602=0; // 操作允许脉冲信号 }

/*======================================================= 当前位置写字符子程序: E =1 RS1602=1 RW1602=0

=======================================================*/ void LcdWriteData( char dataW ) {

WaitForEnable(); // 检测忙信号 RS1602=1; RW1602=0; _nop_();

DataPort=dataW; _nop_();

EL1602=1; _nop_(); _nop_(); EL1602=0; // 操作允许脉冲信号 }

/*======================================================= 初始化程序, 必须按照产品资料介绍的初始化过程进行

=======================================================*/

void Lcdreset( void ) {

LcdWriteCommand( 0x38, 0); // 显示模式设置(不检测忙信号) Delayms(10);

LcdWriteCommand( 0x38, 0); // 共三次

Delayms(10);

LcdWriteCommand( 0x38, 0); Delayms(10);

LcdWriteCommand( 0x38, 1); // 显示模式设置(以后均检测忙信号) LcdWriteCommand( 0x08, 1); // 显示关闭

LcdWriteCommand( 0x01, 1); // 显示清屏

LcdWriteCommand( 0x06, 1); // 显示光标移动设置 LcdWriteCommand( 0x0c, 1); // 显示开及光标设置

5

}

/*======================================================= 显示光标定位(X表示行 ,Y表示列)

=======================================================*/ void Disp_XY( char posx,char posy) { Uchar temp;

temp = posy & 0x0f;

posx &= 0x1;

if ( posy>15 ) temp |= 0x40;

if (posx==1) temp |=0x40; temp |= 0x80;

LcdWriteCommand(temp,0);

}

/*======================================================= 按指定位置显示数出一个字符

=======================================================*/ void Disponechar(Uchar x,Uchar y,Uchar Wdata) { Disp_XY( x, y ); // 定位显示地址 LcdWriteData( Wdata ); // 写字符

}

/*======================================================= 液晶屏上显示字符串

=======================================================*/ void Eputstr(Uchar x,Uchar y, Uchar code *ptr) { Uchar i,l=0;

while (*ptr++ >0){l++;}; //统计字符的个数(字符串数组的最后一位是‘\\0') ptr=ptr-(l+1); //使指针重新指向首个字符 for (i=0;i

if ( y == 31 ) { y = 0; x ^= 0; } }

}

/************************************************************************* YB-51-B 时钟演示程序(函数模块) 来源: 郑州远博科技 王兴民

0371-66949037 0371-67256036 13949105551 需要参看DS1302的相关原理和时序,见配套光盘

**************************************************************************/ //#include

#define T_CLK P1_6 /*实时时钟时钟线引脚 */ #define T_IO P1_7 /*实时时钟数据线引脚 */ #define T_RST P3_3 /*实时时钟复位线引脚 */

/********************************************************************* 实时时钟模块 时钟芯片型号:DS1302

*********************************************************************/

6

/******************************************************************** * * 名称: v_RTInputByte * 说明:

* 功能: 往DS1302写入1Byte数据 * 调用:

* 输入: ucDa 写入的数据 * 返回值: 无

***********************************************************************/ void v_RTInputByte(Uchar ucDa) {

Uchar i,xbyte; xbyte = ucDa; for(i=8; i>0; i--) {

T_IO = xbyte&0x01; T_CLK = 1;

T_CLK = 0;

xbyte = xbyte >> 1; }

}

/******************************************************************** * * 名称: Uchar uc_RTOutputByte * 说明:

* 功能: 从DS1302读取1Byte数据 * 调用: * 输入:

* 返回值: xbyte

***********************************************************************/ Uchar uc_RTOutputByte(void) {

Uchar i,xbyte,xbyte1=0; for(i=8; i>0; i--) {

xbyte = xbyte >>1;

xbyte1 =(xbyte1|((Uchar)(T_IO)))<<7; xbyte=xbyte|xbyte1; T_CLK = 1; T_CLK = 0; }

return(xbyte); }

/******************************************************************** * * 名称: v_W1302

* 说明: 先写地址,后写命令/数据

7

* 功能: 往DS1302写入数据

* 调用: v_RTInputByte()

* 输入: ucAddr: DS1302地址, ucDa: 要写的数据 * 返回值: 无

***********************************************************************/ void v_W1302(Uchar ucAddr, Uchar ucDa) {

T_RST = 0; T_CLK = 0; T_RST = 1;

v_RTInputByte(ucAddr); /* 地址,命令 */ v_RTInputByte(ucDa); /* 写1Byte数据*/ T_CLK = 1; T_RST =0;

}

/******************************************************************** * * 名称: uc_R1302

* 说明: 先写地址,后读命令/数据 * 功能: 读取DS1302某地址的数据

* 调用: v_RTInputByte() , uc_RTOutputByte() * 输入: ucAddr: DS1302地址

* 返回值: ucDa :读取的数据

***********************************************************************/ Uchar uc_R1302(Uchar ucAddr) {

Uchar ucDa; T_RST = 0;

T_CLK = 0; T_RST = 1;

v_RTInputByte(ucAddr); /* 地址,命令 */ ucDa = uc_RTOutputByte(); /* 读1Byte数据 */ T_CLK = 1; T_RST =0;

return(ucDa);

}

/******************************************************************** * * 名称: v_BurstW1302T

* 说明: 先写地址,后写数据(时钟多字节方式) * 功能: 往DS1302写入时钟数据(多字节方式)

* 调用: v_RTInputByte()

* 输入: pSecDa: 时钟数据地址 格式为: 秒 分 时 日 月 星期 年 控制

* 8Byte (BCD码) 1B 1B 1B 1B 1B 1B 1B 1B * 返回值: 无

***********************************************************************/

8

void v_BurstW1302T(Uchar *pSecDa)

{

Uchar i;

v_W1302(0x8e,0x00); /* 控制命令,WP=0,写操作?*/ T_RST = 0; T_CLK = 0; T_RST = 1;

v_RTInputByte(0xbe); /* 0xbe:时钟多字节写命令 */

for (i=8;i>0;i--) /*8Byte = 7Byte 时钟数据 + 1Byte 控制*/ {

v_RTInputByte(*pSecDa);/* 写1Byte数据*/ pSecDa++; }

T_CLK = 1; T_RST =0; }

/******************************************************************** * * 名称: v_BurstR1302T

* 说明: 先写地址,后读命令/数据(时钟多字节方式) * 功能: 读取DS1302时钟数据

* 调用: v_RTInputByte() , uc_RTOutputByte()

* 输入: pSecDa: 时钟数据地址 格式为: 秒 分 时 日 月 星期 年 * 7Byte (BCD码) 1B 1B 1B 1B 1B 1B 1B * 返回值: ucDa :读取的数据

***********************************************************************/ void v_BurstR1302T(Uchar *pSecDa) {

Uchar i; T_RST = 0; T_CLK = 0;

T_RST = 1;

v_RTInputByte(0xbf); /* 0xbf:时钟多字节读命令 */ for (i=8; i>0; i--) {

*pSecDa = uc_RTOutputByte(); /* 读1Byte数据 */ pSecDa++; }

//T_CLK = 1; T_RST =0;

}

/******************************************************************** * * 名称: v_BurstW1302R

* 说明: 先写地址,后写数据(寄存器多字节方式) * 功能: 往DS1302寄存器数写入数据(多字节方式)

9

* 调用: v_RTInputByte()

* 输入: pReDa: 寄存器数据地址 * 返回值: 无

***********************************************************************/ void v_BurstW1302R(Uchar *pReDa) {

Uchar i;

v_W1302(0x8e,0x00); /* 控制命令,WP=0,写操作?*/ T_RST = 0; T_CLK = 0; T_RST = 1;

v_RTInputByte(0xfe); /* 0xbe:时钟多字节写命令 */ for (i=31;i>0;i--) /*31Byte 寄存器数据 */ {

v_RTInputByte(*pReDa); /* 写1Byte数据*/ pReDa++; }

T_CLK = 1; T_RST =0;

}

/******************************************************************** * * 名称: uc_BurstR1302R

* 说明: 先写地址,后读命令/数据(寄存器多字节方式) * 功能: 读取DS1302寄存器数据

* 调用: v_RTInputByte() , uc_RTOutputByte() * 输入: pReDa: 寄存器数据地址 * 返回值: 无

***********************************************************************/ void v_BurstR1302R(Uchar *pReDa) {

Uchar i; T_RST = 0; T_CLK = 0; T_RST = 1;

v_RTInputByte(0xff); /* 0xbf:时钟多字节读命令 */ for (i=31; i>0; i--) /*31Byte 寄存器数据 */ {

*pReDa = uc_RTOutputByte(); /* 读1Byte数据 */ pReDa++; }

T_CLK = 1;

T_RST =0; }

/******************************************************************** *

10

* 名称: v_Set1302

* 说明:

* 功能: 设置初始时间 * 调用: v_W1302()

* 输入: pSecDa: 初始时间地址。初始时间格式为: 秒 分 时 日 月 星期 年 * 7Byte (BCD码) 1B 1B 1B 1B 1B 1B 1B * 返回值: 无

***********************************************************************/ void v_Set1302(Uchar *pSecDa) { Uchar i;

Uchar ucAddr = 0x80;

v_W1302(0x8e,0x00); /* 控制命令,WP=0,写操作?*/ for(i =7;i>0;i--)

{

v_W1302(ucAddr,*pSecDa); /* 秒 分 时 日 月 星期 年 */ pSecDa++; ucAddr +=2; }

v_W1302(0x8e,0x80); /* 控制命令,WP=1,写保护?*/ }

/******************************************************************** * * 名称: v_Get1302 * 说明:

* 功能: 读取DS1302当前时间

* 调用: uc_R1302()

* 输入: ucCurtime: 保存当前时间地址。当前时间格式为: 秒 分 时 日 月 星期 年* 7Byte (BCD码) 1B 1B 1B 1B 1B 1B 1B * 返回值: 无

***********************************************************************/ void v_Get1302(Uchar ucCurtime[]) {

Uchar i;

Uchar ucAddr = 0x81; for (i=0;i<7;i++) {

ucCurtime[i] = uc_R1302(ucAddr);/*格式为: 秒 分 时 日 月 星期 年 */ ucAddr += 2; } }

/********************************************************************** *时子程序(在YB-51-B实验板配套的各功能演示程序中都是调用的本延时子程序)

11

*作者:郑州远博科技 王兴民

*0371-66949037 0371-67256036 13949105551

***********************************************************************/ //#include

void Delayus(Uchar j) //延时时间为 j*10+8 us (根据生成的汇编代码计算) {

while(j) { _nop_(); _nop_(); _nop_(); _nop_();

j--; } }

void Delayms(Uint n) { //延时时间大约n*1 ms while(n) { Delayus(100); //延时为1008us n--; }

}

/************************************************************************* *YB-51-B DS1302的时钟演示程序

*来源: 郑州远博科技 王兴民371-66949037 0371-67256036 13949105551

***************************************************************************/ //#include

data Uchar yjdispbuff[32]; //液晶屏显示缓冲区 data Uchar clockdata2[7]; //时钟数据缓冲区 data Uchar *clockdatain; data Uchar *clockdataout; data Uchar cmddata;

data Uchar indata,outdata;

data Uchar houtdatal,houtdatah,moutdatal,moutdatah,soutdatal,soutdatah; //时、分、秒

data Uchar noutdatal,noutdatah,youtdatal,youtdatah,routdatal,routdatah; //年、月、日

data Uchar woutdatal, woutdatah; //星期 void main() { Uchar j;

for(j=0;j<32;j++) { yjdispbuff[j]=32; }

12

Delayms(100);

Lcdreset(); cmddata=0x8e; indata=0x00;

v_W1302(cmddata, indata); //init cmddata=0x80; indata=0x00;

v_W1302(cmddata, indata);//秒 cmddata=0x82; indata=0x30;

v_W1302(cmddata, indata);//分 cmddata=0x84;

indata=0x08;

v_W1302(cmddata, indata);//小时 cmddata=0x86; indata=0x18;

v_W1302(cmddata, indata);//日 cmddata=0x88; indata=0x01;

v_W1302(cmddata, indata);//月 cmddata=0x8A;

indata=0x01;

v_W1302(cmddata, indata);//星期 cmddata=0x8C; indata=0x10;

v_W1302(cmddata, indata);//年 while(1) {

clockdataout=&clockdata2; v_BurstR1302T(clockdataout); soutdatal=clockdata2[0]&0x0f; soutdatah=(clockdata2[0]>>4)&0x07; moutdatal=clockdata2[1]&0x0f; moutdatah=(clockdata2[1]>>4)&0x07; houtdatal=clockdata2[2]&0x0f; houtdatah=(clockdata2[2]>>4)&0x07; routdatal=clockdata2[3]&0x0f; routdatah=(clockdata2[3]>>4)&0x07; youtdatal=clockdata2[4]&0x0f;

youtdatah=(clockdata2[4]>>4)&0x07; woutdatal=clockdata2[5]&0x0f;

woutdatah=(clockdata2[5]>>4)&0x07;

noutdatal=clockdata2[6]&0x0f;

noutdatah=(clockdata2[6]>>4)&0x07;

yjdispbuff[0]=50; //50代表数字‘2’的ASC码,液晶屏是按照ASC

13

码来显示字符的

yjdispbuff[1]=48; //48代表数字‘0’的ASC码 yjdispbuff[2]=noutdatah+48; //48表示对应数字的实际值和相对应的ASC码的偏移量

yjdispbuff[3]=noutdatal+48; yjdispbuff[5]=youtdatah+48; yjdispbuff[6]=youtdatal+48; yjdispbuff[8]=routdatah+48; yjdispbuff[9]=routdatal+48; yjdispbuff[13]=woutdatal+48; yjdispbuff[17]=houtdatah+48; yjdispbuff[18]=houtdatal+48; yjdispbuff[20]=moutdatah+48; yjdispbuff[21]=moutdatal+48; yjdispbuff[23]=soutdatah+48; yjdispbuff[24]=soutdatal+48;

yjdispbuff[4]=45; //‘-’的ASC码 yjdispbuff[7]=45;

yjdispbuff[10]=32; //空格的ASC码 yjdispbuff[11]=32; yjdispbuff[12]=32; yjdispbuff[14]=32; yjdispbuff[15]=32; yjdispbuff[16]=32; yjdispbuff[19]=45; yjdispbuff[22]=45; for(j=0;j<32;j++)

{

Disponechar(0,j+2,yjdispbuff[j]); } }

}

14

2、实验流程图

五、结束语

DSl302这种芯片存在时钟精度不高、易受环境影响、出现时钟混乱等缺点DSl302可以用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录。这种记录对长时间的连续测控系统结果的分析以及对异常数出现的原因的查找有重要意义。传统的数据记录方式是隔时采样或定时采样,没有具体的时间记录,因此只能记录数据而无法准确记录它出现的时间:若采用单片机计时,一方面需要用计数器,占用硬件资源,另一方面需要设置中断、查询等,同样耗费单片机的资源,而且某些测控系统可能不允许,但如果在系统中采用时钟芯片DSl302则能很好地解决这个问题。

15

智能仪器设计实习心得

2009年12月18日至2010年1月18日在推广楼510进行智能仪器设计实习。通过完成实时日历时钟显示系统的制作这一项目,我一方面体会到自身知识的不足,而更重要的是,我知道了“功夫不负有心人”!尽管在整个制作的过程中,我们遇到了很多困难,但我们团队却从未气馁,而且都积极地面对困难,勇于去挑战困难,并最终取得了成功。我在此次设计中主要负责程序编译、调试及实现工作,在此过程中我们多次修改程序,检查自己的操作软件过程。在我们的共同努力和实习老师的指导下,终于把程序编译、调试、装载成功,LCD显示器正确显示了当时年、月、日及星期等。当然,经过一学期的工作,我们也体会到了独立完成一项工作的艰辛,这对我们今后的学习工作无疑有着极大的帮助。课程设计过程中要利用各种资源,图书馆,网络,你的老师同学,跟他们多交流你会有新的想法产生来完善自己的想法,汲取百家之长。这样不但有事半功倍,提高效率效果,有时甚至可以产生新的更好的设计。此外,我们实时日历时钟显示系统的制作这一项目的成功与我们的团队协作是分不开的。首先一个团队,若能顺利的走下去,沟通是必须的,不然各自为政是做不出好作品的,正如我们当初选题,由于当时对于这门课并不是很了解,可是随着学习的进行及对相关问题的了解,我们利用强悍的单片机很容易实现实时日历时钟显示系统的制作这一项目。于是我们讨选择了这一题目,这样我们可以从中学到不少东西,可以说相互之间的沟通是我们这次成功的一大保证。其次,要了解自身的特点,充分发挥自己的特点。我们组从项目刚一开始就有明确的分工:霍刚主要负责软件的设计及调试,冯新凯主要负责硬件的设计及调试,马阳阳和王明绪则主要负责相关报告的整理及分析。这样有着明确的分工,使我们之间既可以相互学习,又有独立工作的重点,避免了一些不必要的麻烦。我们的这一门课开设的非常有意义,既让我们学到了知识,有身临其境的完成了一项工作,我认为这在我们学校是有开创性意义的。从这次实习中我们认识到我们知识的匮乏和知识的实际应用能力,在今后的学习中我们会加强这方面的锻炼。在设计的过程中我进一步学习了软件设计的方法,进一步了解了设计的步骤,进一步加深了对《智能仪器设计》这门课的理解,增强了以后学习的兴趣,也提高了我的自学能力和动手能力,为以后的工作积累了一定的经验。在这里我们团队的建议是:

1.课程的授课时间应适当延长,同时应当有一本更为正规的参考书。 2.项目制作时间应适当延长,给学生已足够长的时间去学习与运用。 当然这只是我们的看法,或许不很恰当,也请原谅。

16

实习 成 绩 评 定 表

评定项目 内 容 满 分 评 分 总 分 学习态度 学习认真,态度端正,遵守纪律 认真查阅资料,勤学好问,提出的问题有一定的深度,分析解决问题的能力教强。 设计方案正确、表达清楚;设计思10 40 答疑和设计情况 说明书质量 路、实验(论证)方法科学合理;达到课程设计任务书规定的要求;图、表、文字表达准确规范,上交及时。 40 回答问题情况 总成绩 回答问题准确,基本概念清楚,有理有据,有一定深度。 采用五级分制或百分制。五级分制:优、良、中、及格、不及格 10 指导教师评语: 签 名: 年 月 日

17

本文来源:https://www.bwwdw.com/article/f4k3.html

Top