智能频率计设计(智能仪器课程设计)_第1页
智能频率计设计(智能仪器课程设计)_第2页
智能频率计设计(智能仪器课程设计)_第3页
智能频率计设计(智能仪器课程设计)_第4页
智能频率计设计(智能仪器课程设计)_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

1、 课 程 设 计设计题目: 智能频率计设计 系 别 班级 学生姓名 学号 指导教师 职称 起止日期: 年 月 日起至 年 月 日止课程设计任务书课程设计题目: 智能频率计设计 系 别 班级 学生姓名 学号 指导教师 职称 课程设计进行地点: 任 务 下 达 时 间: 年 月 日起止日期: 年 月 日起至 年 月 日止教研室主任 年 月 日批准 智能频率计设计 课程设计成绩评定表系(部): 班级: 学生姓名: 指 导 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分调研论证能独立查阅文献,收集资料;能制定课程设计方案和日程安排。0.15432工作能力态度工作态度认真,遵守纪律,出勤情

2、况是否良好,能够独立完成设计工作, 0.25432工作量按期圆满完成规定的设计任务,工作量饱满,难度适宜。0.25432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.55432指导教师评审成绩(加权分合计乘以12) 分加权分合计指 导 教 师 签 名: 年 月 日评 阅 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分查阅文献查阅文献有一定广泛性;有综合归纳资料的能力0.25432工作量工作量饱满,难度适中。0.55432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一

3、,编号齐全,图表完备,书写工整规范。0.35432评阅教师评审成绩(加权分合计乘以8)分加权分合计评 阅 教 师 签 名: 年 月 日课 程 设 计 总 评 成 绩分1.设计主要内容及要求;设计一个智能频率计。要求:1)硬件电路设计,包括原理图和PCB板图。 2)智能频率计软件设计。 3)要求能够测量及显示频率,频率范围100HZ-500KHZ。2.对设计论文撰写内容、格式、字数的要求;(1).课程设计论文是体现和总结课程设计成果的载体,一般不应少于3000字。(2).学生应撰写的内容为:中文摘要和关键词、目录、正文、参考文献等。课程设计论文的结构及各部分内容要求可参照沈阳工程学院毕业设计(论

4、文)撰写规范执行。应做到文理通顺,内容正确完整,书写工整,装订整齐。(3).论文要求打印,打印时按沈阳工程学院毕业设计(论文)撰写规范的要求进行打印。(4). 课程设计论文装订顺序为:封面、任务书、成绩评审意见表、中文摘要和关键词、目录、正文、参考文献。3.时间进度安排;顺序阶段日期计 划 完 成 内 容备注1月 日教师讲解题目,学生查阅相关资料2月 日查阅相关资料、进行方案论证3月 日参数计算、确定方案4月 日绘制原理图,设计PCB板图5月 日设计PCB板图,程序设计6月 日程序设计7月 日程序调试8月 日撰写论文7月 日论文答辩,成品验收中 文 摘 要频率计是一种应用比较广泛的测量仪器,在

5、信号通信领域、军事领域等多种领域均有应用。数字频率计相较于模拟频率计,主要发展之处是很大程度上扩展了测量范围,并且具有成本较低,适应性好,能够进行复杂的数据处理等特点,但也有其缺点即速度较慢。对于本文中数字频率计的设计一共采用两种方案:直接计数法(频率测量);间接计数法(周期测量)。直接计数法就是在一个已知的基准时间间隔内测量所测周期的数目,适合高频测量,间接计数法就是在一个或几个所测周期内测量基准频率的脉冲个数,适合低频测量。C8051F020单片机内部自带的PCA可编程计数阵列是集数据采集和基准时钟的高效集成模块。因此在本文中采用C8051F020单片机作为数字频率计的微处理器。Prote

6、l 99 SE是应用于Windows9X/2000/NT操作系统下的EDA设计软件,采用设计库管理模式,可以进行联网设计,具有很强的数据交换能力和开发性及3D模拟功能,是一个32位的设计软件,可以完成电路原理图设计,印制电路板设计和可编程逻辑器件设计等工作,可以设计32个信号层,16个电源-地层和16个机加工程层。本次智能仪器课程设计我所设计的课题为:“智能频率计设计” 。该课程设计题目的基本要求是:设计智能频率计以实现对输入信号频率的测量。本次课程设计是基于Protel 99 SE及Silicon Laboratories IDE软件所设计的。根据常用的元器件及基本电路设计符合要求的合理电路

7、模型,并通过单片机的数据处理和分析来实现频率的测量及显示。 关键词:智能频率计、直接计数法、间接计数法、单片机、Protel 99 SE目录中 文 摘 要V一 设计任务描述11.1 设计题目11.2 设计要求11.2.1 基本要求1二 设计思路22.1 频率测量方法22.2 频率测量硬件设计22.3 频率测量软件设计2三 硬件设计方框图3四 硬件设计44.1 单片机模块44.1.1 电源电路44.1.2 晶振电路44.1.3 复位电路54.1.4 液晶显示(LCD)接口电路54.1.5 LED显示电路64.2 频率计系统模块74.2.1 频率计74.2.2 频率比较器8五 软件设计方框图9六

8、软件设计106.1 主程序设计106.2 液晶显示程序设计116.3 PCA0采集程序设计136.4 T0等待初始化程序13七 工作过程分析14八 元器件清单15九 主要元器件介绍169.1 C8051F020169.2 MzL05-12864169.3 LM780517小 结18致 谢19参考文献20附录1 智能频率计设计(源程序)21附录2 智能频率计设计(PCB板)29附录3 智能频率计设计(电路图)1VII 智能频率计设计一 设计任务描述1.1 设计题目智能频率计设计1.2 设计要求1.2.1 基本要求设计一个智能频率计。要求:1)硬件电路设计,包括原理图和PCB板图。 2)智能频率计

9、软件设计。 3)要求能够测量及显示频率,频率范围100HZ-500KHZ。二 设计思路2.1 频率测量方法频率测量是电子测量领域的最基本测量,通常频率测量有两种方法:(1)计数法:这是指在一定的时间间隔T内,对输入信号的周期脉冲计数为:N,则信号的频率为F= N /T。这种方法适合于高频测量,信号的频率越高,则相对误差越小。(2)测周法:这种方法是计量在被测信号一个周期内频率为F0的标准信号的脉冲数N来间接测量频率,F=F0/N。被测信号的周期越长(频率越低),则测得的标准信号的脉冲数N越大,则相对误差越小。2.2 频率测量硬件设计频率测量有:频率表和频率比较器频率表:用于频率的测量。测量一个

10、输入信号的频率的大小。频率比较器:用于频率的比较。比较两输入信号的频率的大小。2.3 频率测量软件设计由于此程序是基于C8051F020单片机的程序设计,主要的设计思路是利用信号发生器产生100HZ-500KHZ的方波,通过单片机的P0.0端口输入进单片机,经过单片机的处理,再由单片机的实验箱的液晶屏进行显示具体思路如下:(1)首先是对单片机的初始化设定。(2)PCA0采集部分。(3)数据的转化部分。(4)数据的显示部分。三 硬件设计方框图被测信号放大分压电路南北红滤波整形电路南北红单片机复位电路南北红电源电路南北红液晶显示南北红智能频率计设计方框图四 硬件设计4.1 单片机模块4.1.1 电

11、源电路在电源电路中,SPX1117-3.3是稳压芯片将输入电压5V转换成3.3V作为C8051F020单片机的主要供电电源。S1为输入电源开关按钮,在下载完数据后可用此按键来更新下载数据。D2为电源指示灯,单片机通电时LED灯亮。其电路图如图41单片机电源电路所示。图41单片机电源电路4.1.2 晶振电路Y1为晶体振荡器,其振荡频率为22.11842MHZ,为单片机提供其工作所需要的时钟,C7、C8起到帮助晶振的作用。其电路图如图42单片机晶振电路所示。图42单片机晶振电路4.1.3 复位电路当开发板上电时,C5经充电后复位端电压相当于低电平实现上电复位:当断电后通过D3(1N4148)形成放

12、电回路。其电路图如图43单片机复位电路所示。图43单片机复位电路4.1.4 液晶显示(LCD)接口电路单片机留有一个LCD液晶接口,相对应的液晶为MzL05-12864,它是一款仅写入的串行SPI接口方式的液晶,给液晶仅需5个控制口即可完成对其控制。单片机使用模拟SPI的方式对液晶进行操作。其电路图如图44单片机液晶接口电路所示。图44单片机液晶接口电路4.1.5 LED显示电路单片机控制LED的显示及其显示内容。其电路图如图45单片机LED显示电路所示。图45单片机LED显示电路4.2 频率计系统模块4.2.1 频率计该电路为一“频率转换插件”,能用万用表(或电压表)测量信号的频率,测量范围

13、为100HZ-500KHZ。电路中D6、D7用于输入限幅保护,输入信号的幅值应低于400Vp-p。由于隔直电容C10的作用,电压比较器AR1只有交流输入,由于分压电阻R7、R8的作用AR1的输入端的直流偏置为电源电压的一半,流入R6的偏流使AR1输出低电平,一旦输入信号的振幅足够大克服了偏移AR1反转输出高电平通过C11的正反馈加快转换过程,当输入信号为负振幅时AR1重新反转,输出低电平。所以在IC3的输入端为一矩形波。IC3为一频率/电压转换芯片,其转换的线性度为1。AR2输出的电压与输入信号的频率成正比的电压。输出有AR2缓冲,它是一个准确的电压跟随器,具有较低的输入阻抗。R17用于输出短

14、路保护为防止由于电阻R17上的压降导致输出错误R17的输出端反馈到电压比较器的反相输入端。其电路图如图46频率计电路所示。图46频率计电路4.2.2 频率比较器频率比较器电路有两个输入端,分别输入两个信号一个信号从Q1的基极输入,控制Q1的导通,Q1导通频率就是输入信号的频率,Q1后面就是一个二极管,用于产生与输入信号频率相对应的脉冲串,这个脉冲串是的Q2截止电容器C17放电。另一个信号从Q4 基极输入,它的作用原理同上只不过大的作用是给电容器C17充电,这样同时加入两个信号时C17上的电量就由两个输入信号的频率决定。刚开始时电容器C17上的电压为电源电压的一半5V,这样加入信号后如果f1高于

15、f2的话,放电时间很长,所以其电压要低于5V,反之类似。这样就得到了由输入频率差得到的电压输出。其电路图如图47频率比较器电路图所示。图47频率比较器电路五 软件设计方框图 初始化变量初始化南北红T0启动南北红PCA是否检测到下降沿N计数是否完成NYT0重新计数并判断档数Y直接计数法南北红间接计数法南北红将所测频率设为0各个变量初始化判断档位是否合适换挡南北红Y显示频率南北红智能频率计软件设计方框图六 软件设计6.1 主程序设计主程序涉及到系统资源分配,一些复杂运算等等。主程序如下。main() WDTCN=0xde; WDTCN=0xad;/关看门狗 PCA_Init();/PCA0初始化

16、PORT_Init();/端口初始化 LCD_Init();/液晶初始化 T0_Init();/T0初始化 SYSCLK_Init();/系统时钟初始化,11MHz TR0=1;/启动定时器T0 while(1)/死循环 if(state1!=state)/判断是否有换档,有则进入if()里面 switch(state) case 0: Tcount=3; break;/A档,只计算3个被测脉冲 case 1: Tcount=200; break; /B档,只计算200个被测脉冲 case 2: Tcount=800; break; /C档,只计算800个被测脉冲 case 3: Tcount

17、1=400; break; /D档,只计算400*65536个基准脉冲 case 4: Tcount1=10; break; /E档,只计算10*65536个基准脉冲 default:break;state1=state;/换档结束count1=0;count=0;/基准频率计时归零T=0; T1=0;/被测脉冲计数归零 PCA0L=0; PCA0H=0;/PCA0定时器归零PCA0CPM0|=0x01;/开启捕捉中断if(st1=1)/低频档Timer0=(double)(PCH*256+PCL+65536*(count+count1*60000)/SYSCLK); /计算时间 fre=(d

18、ouble)(Tcount-1)/Timer0); /间接计数法算频率T=0; T1=0; count=0; count1=0; PCA0L=0; PCA0H=0;PCL=0; PCH=0; st1=0;/各变量归零PCA0CPM0|=0x01; /开启捕捉中断if(st3=1) /高频档fre=(double)(T-1+T1*60000)*SYSCLK/(Tcount1*65535);/直接计数法 PCA0L=0; PCA0H=0; T=0; T1=0; count=0;count1=0;st3=0;/各变量归零 PCA0CPM0|=0x01; /开启捕捉中断 if(countt0>=

19、450)/T0计时到了 fre=0;countt0=0;count1=0;count=0;state=0;state1=100;T=0;T1=0;PCA0L=0;PCA0H=0;/各变量归零 PCA0CPM0|=0x01; /开启捕捉中断 if(fre<=50) state=0;/频率小于50Hz换A档 if(fre>50)&&(fre<=100) state=1; /频率50100Hz换B档 if(fre>100)&&(fre<=1000)state=2; /频率1001000Hz换C档 if(fre>1000)&&

20、amp;(fre<=25000)state=3; /频率100025000Hz换D档 if(fre>25000) state=4; /频率大于25000Hz换E档 LCD_show(fre); /液晶显示函数6.2 液晶显示程序设计液晶显示程序如下。void LCD_Init(void) unsigned int x;P6=0x09; /写命令for(x=0;x<5000;x+); /延时程序 P7=0x38;/两行显示,5×7点阵 P6=0x08;/结束写命令 P6=0x09; /写命令 for(x=0;x<1000;x+);/延时程序 P7=0x0e;/开

21、显示,开光标,字符不闪烁 P6=0x08; /结束写命令 P6=0x09; /写命令for(x=0;x<1000;x+);/延时程序 P7=0x06;/I/D=1,AC自动增加1;S=0,整体显示不移动 P6=0x08; /结束写命令 P6=0x09; /写命令for(x=0;x<5000;x+);/延时程序 P7=0x01;/清除DDRAM,置AC=0; P6=0x08; /结束写命令 P6=0x09; /写命令for(x=0;x<5000;x+);/延时程序void LCD_show(double shu) unsigned int i1,shu1=0,i2,i3,x;

22、unsigned char LCD8=0,temp=0,www=0,*LCDpoint; double shu2=0; if(state>=3)shu/=1000;/如果是高频档,用KHz的单位 shu2=shu;/将频率数值另存 shu1=shu;/取频率的整数部分 LCDpoint=LCD; for(i2=0;i2+)/将整数每位取出,并保存在LCD中 LCDi2=shu1%10; shu1/=10; if(shu1=0)break;for(i3=0;i3<i2;i3+)/将数组里的数据反转保存 temp=LCDi3; LCDi3=LCDi2-i3; LCDi2-i3=temp

23、; LCDi2+1=10;/保存小数点shu1=shu;/取频率整数部分shu2=shu-shu1;/将频率减去整数部分,得到小数部分 for(i1=i2+2;i1<=4+i2;i1+)/取出小数部分的每一位 LCDi1=(unsigned char)(shu2*10); shu2=shu2*10-LCDi1; P7=0x80;/第一行显示 P6=0x01;/写命令 P6=0x00;/结束写命令 for(x=0;x<1000;x+);/延时 for(i2=0;i2<=9;i2+)/显示量程 www=liangchengstatei2;/查相应的量程的ASCII码 P7=www

24、;/写数据 P6=0x05;/开始写数据 P6=0x04;/结束写数据 for(x=0;x<1000;x+);/延时 P7=0xc1;/第二行显示 P6=0x01;/开始写命令 P6=0x00;/结束写命令 for(x=0;x<1000;x+);/延时for(i2=0;i2<=i1;i2+)/显示数据 www=LCDdataLCDi2;/查询数据相应得ASCII码 P7=www;/写入数据 P6=0x05;/开始写数据 P6=0x04;/结束写数据 for(x=0;x<1000;x+);延时if(state>=3)www=75;/根据档数是否显示“K”else w

25、ww=0x20;/否则显示空格 P7=www; /写入数据 P6=0x05; /开始写数据 P6=0x04; /结束写数据 for(x=0;x<1000;x+);/延时 P7=72;/“H” P6=0x05; /开始写数据 P6=0x04; /结束写数据 for(x=0;x<1000;x+);/延时 P7=122;/“z” P6=0x05; /开始写数据 P6=0x04; /结束写数据 for(x=0;x<1000;x+);/延时for(i2=0;i2<=16-i1-4;i2+)/余下的位用空隔显示 P7=0x20; P6=0x05; P6=0x04; for(x=0;

26、x<1000;x+);6.3 PCA0采集程序设计PCA0模块有边沿触发的捕捉方式,每来一个下降沿,进一次中断并计一个数,直接计数法和间接计数法都需要这个功能。PCA0功能的初始化由PCA_Init()函数(函数定义见附录1)完成,该函数的作用是:(1)选择系统时钟为PCA0计数器时钟源,时钟溢出使能;(2)下降沿触发捕捉,捕捉中断使能;(3)为cex0分配P0.0端口,将PCA0中断优先级为高;(4)对PCA0时钟初始化。PCA0中断服务程序如下:void PCA_ISR(void) interrupt 9 if(CF=1) count+;CF=0;/count变量保存时钟溢出次数 i

27、f(count=60000) count1+;count=0;/count1记录count变量溢出次数 if(CCF0=1) T+;CCF0=0;countt0=0;/T保存脉冲个数,并清零T0定时器 if(T=60000) T1+;T=0;/T1保存T溢出次数 if(T=1)PCA0L=0;PCA0H=0;CR=1;/当第一个脉冲来时开启PCA0定时器 if(state<3)/低频档 if(T=Tcount&&T1=0)/记录到Tcount个被测脉冲次数 PCL=PCA0CPL0; PCH=PCA0CPH0; /记录此时的比较寄存器中的数值 st1=1; /表示低频档

28、CR=0; /停止PCA0计数器 PCA0CPM0&=0xfe; /关闭捕捉中断else /高频档if(count=Tcount1&&count1=0)/记录到Tcount1*65536个基准脉冲次数st3=1;/表示高频档PCA0CPM0&=0xfe;/关闭捕捉中断CR=0; /关闭PCA0时钟6.4 T0等待初始化程序由于程序算法上的问题,因为间接计数法和直接计数法都用上了一些共用变量,程序可能会出错,而且在由高频档换向低频当时很容易卡死。因此特为此设置了定时器0作为判断程序是否卡死的依据,若卡死允许时间计满T0将初始化一些共用变量初始化。七 工作过程分析本

29、文设计的智能频率计具有适用范围广,精度高,频率范围较大,并且可以自动换档等特性。它的工作过程如下:(1)信号输入放大电路,由使用者调整放大倍数,然后信号被适当的放大;(2)已经被放大的信号再输入低通滤波电路,滤除大部分高频干扰,得到较纯净的信号。(3)纯净的信号需要进行整形,得到标准的方波信号。(4)信号输入单片机,单片机对脉冲数进行计数。(5)如果频率小于1000Hz,则视作低频信号,使用间接计数法计算信号频率。首先,当检测到第一个下降沿之后,启动PCA0定时器(对基准频率计时,结果保存在PCH、PCL、count和count1中),当系统对被测频率的计数达到Tcount之后,关闭PCA0捕

30、捉中断和PCA0定时器,通过公式计算频率:Timer0=(double)(PCH*256+PCL+65536*(count+count1*60000)/SYSCLK) frequency=(double)(Tcount-1)/Timer0)算出频率frequency之后,使用函数LCD_show(double)显示。运行结果如图7-1和7-2所示,其中图7-1是实际的频率,图7-2是频率计所检测的频率。 图71实际频率图 图72频率计图如果被测频率大于1000Hz,那么则视作高频信号,使用直接计数法对信号进行处理。同样,当第一个下降沿到来时,开启PCA0定时器,并计算在Tcount1*6553

31、6/SYSCLK(即Tcount1*5.93ms)时间内的脉冲个数(脉冲个数存在T和T1中)。通过公式计算频率:fre=(double)(T-1+T1*60000)*SYSCLK/(Tcount1*65535);经过LCD_show(double)函数显示所测频率值。如图7-3和7-4所示。其中图7-3是实际的频率,图7-4是频率计所检测的频率。 图73实际频率图 图74频率计图八 元器件清单名称型号数量备注普通电阻器33电容19整流二极管1N40046 发光二极管3数码管4单片机C8051F0201集成稳压器LM78051三极管BC550C4集成运放CA31302LA41511电源1115V

32、10V25V九 主要元器件介绍9.1 C8051F020C8051系列单片机是集成的混合信号片上系统,具有与MCS-51内核及指令集完全兼容的微控制器,除了具有标准8051的数字外设部件之外,片内还集成了数据采集和控制系统中常用的模拟部件和其他数字外设及功能部件。C8051系列单片机是真正能独立工作的片上系统(SOC)。CPU有效地管理模拟和数字外设,可以关闭单个或全部外设以节省功耗。C8051F系列单片机是完全集成的混合信号系统级芯片,具有与8051兼容的CIP-51微控制器内核,采用流水线结构,单周期指令运行速度是8051的12倍,全指令集运行速度是原来的9.5倍。其内部电路包括CIP-5

33、1微控制器内核及RAM、ROM、IO口、定时计数器、ADC、DAC、PCA、SPI和SMBus等部件,即把计算机的基本组成单元以及模拟和数字外设集成在一个芯片上,构成一个完整的片上系统(SOC)。C8051F020内部带有数据采集所需的ADC和DAC,其中ADC有两个,一个是8路12位逐次逼近型ADC,可编程转换速率,最大为100kSs可通过多通道选择器配置为单端输入或差分输入。内有可编程增益放大器PGA用于将输入的信号放大,提高AD的转换精度。可编程增益为:0.5、1、2、4、8或16,复位时默认值为1。另一个是8路8位ADC,可编程转换速率最大为500kSs,其可编程放大增益为0.5、1、

34、2、4,复位时默认值为0.5。有2个12位的DAC,用于将12位的数字量转换为电压量,可产生连续变化的波形,两路信号可同步输出。C8051F020外设还增添了三个串行口。可同时与外界进行串行数据通信,SMBus兼容于I2C串行扩展总线;SPI串行扩展接口;两个增强型UART串口。C8051F020具有基于JTAG接口的在系统调试功能,片内的调试电路通过JTAG接口可提供高速、方便的在系统调试。9.2 MzL05-12864MzL05-12864 模组是一个小型的LCD显示器模组,显示细腻,带白色背光;MzL05-12864 模块的MCU接口为串行SPI 接口,非常合适应用于小型仪器、手持设备之

35、中。MzL05-12864为一块小型的128X64点阵的LCD显示模组,模组上的 LCM采用COG技术将控制(包括显存)、驱动器集成在LCM的玻璃上,接口简单、操作方便;为方便用户的使用,铭正同创在LCM的基础上设计了MzL05-12864模组,将模组所必需的外围电容电阻集成到模组上。MzL05-12864模组与各种MCU均可进行方便简单的接口操作。具有128X64点阵FSTN、1/64占空比、1/9偏压比、单电源供电对比度编程可调、仅写入的串行SPI接口方式、3.3V的白色LLED背光,美观大方的特点。9.3 LM7805三端稳压集成电路LM7805。电子产品中,常见的三端稳压集成

36、电路有正电压输出的lm78 ×× 系列和负电压输出的lm79××系列。顾名思义,三端IC是指这种稳压用的集成电路,只有三条引脚输出,分别是输入端、接地端和输出端。它的样子象是普通的三极管。LM7805是美国半导体公司的固定输出三端正稳压器集成电路,输出电流在1A以上,输出电压是+5V。内其内部包括过热、过流和调整管保护等电路,误差放大电路,基准电压电路和调整电路,使用比较方便且稳定精度高。小 结 为期两周的智能仪器课程设计已经结束,可以这样说在这次智能仪器课程设计中我的收获非常的丰富。 通过上学期对智能仪器设计基础这一门课程的学习,我学会了许多关于设计智

37、能仪器的知识,当然这些均是理论知识。而这些理论知识在这次的课程设计中起到了关键性作用,这些知识为本次课程设计的进行做好了充分的理论准备。在课程设计的第一天,老师向我们认真的讲解了每一个设计题目所要实现的功能及大体的设计方向。本次课程设计采用分组进行的方式,但我们只是做同一个课题,老师要求我们每一个人都要亲自设计完成一个电路及程序。刚开始时我还有些不理解这是为什么,但当我开始正式进行课程设计时我就明白这其中的意义了。几个人一组让我们有了互相学习讨论的伙伴,而自己设计自己的电路及程序又提高了我们自己的独立思考与动手的能力。在今后的课程设计中,我们每个人都认真的研究自己的课题,遇到不会的问题我们先在

38、小组中讨论,小组成员间认真积极的学习态度,深深感染了我,使我深刻的体会到了团队的力量,也被这种氛围深深的感染,更加积极投身于工作之中。然而人多并不代表一定能成功,我们还是遇到了一些我们无法解决的问题,每到此时我们都会去请教老师,而老师对于我们的每一次提问都是很耐心细致的讲解,这样我们学到了许许多多在课堂上学不到的东西,也培养了我们遇问题先通过查找资料、讨论等方式自我解决的良好习惯。 开始刚刚拿到课题时,我感到很迷茫。但通过课后图书馆的学习和网上资料的搜集整理以及小组成员间的讨论分析,我渐渐的有了思路,而在此之后我则进入到了电路及程序设计的过程。在此过程中我会为每一次实验的成功而兴奋不已,同样也

39、会为失败而沮丧,每到这时,小组的其他成员都会鼓励我,并且大家都会聚集在一起讨论,研究,分析。大家在一起共同进步,减少了许多弯路,提高了工作的效率。通过这一次的智能仪器课程设计,我深刻的体会到了实践的重要性。作为一个当代大学生仅仅会书本上的知识点是无法将它应用到实际中去的,而这也将成为我们今后道路上阻碍,所以在平时我们就应该注重实际,多多的将理论同实际联系在一起。 总之,这次智能仪器课程设计令我终身难忘,因为在这期间我不仅收获了知识,也收获了能力,学到了许多书本上没有的知识。非常感谢学校安排这次智能仪器课程设计,更要感谢老师的辛苦付出,和小组成员间的帮助与合作。致 谢为期两周的智能仪器课程设计已

40、经结束了,在本次的课程设计之中,我首先要感谢老师,同样也衷心的感谢我们这个小组的成员,以及其他给予我帮助的同学,正是由于有了这些人的帮助,我的课程设计才顺利的完成。 感谢老师的细心指导,正式由于有了老师耐心细致的讲解,我对软件(Protel 99 SE及Silicon Laboratories IDE)有了认识和了解,同时也对单片机有了更深层次的认识和了解。并在此基础之上完成了本次课程设计,即“智能频率计设计” 。 感谢我们小组的成员,因为有了他们,我不再是一个人在奋斗。在这个小组之中我们一起讨论,一起研究,共同进步。互相帮助将每一个人的长处发挥的淋漓尽致,这是一个优秀的团队。在这里同样让我体

41、会到了合作的重要性,提高了合作精神。 感谢帮助过我的同学们,虽然说有了小组合作提高了我的知识储备,但人数毕竟有限,为此在此期间我也向其他同学请教的不少问题,在这里非常感谢这些同学的热心帮助。最后非常感谢学校安排这一次智能仪器课程设计,通过这次智能仪器课程设计我收获颇多。参考文献1 王祁. 智能仪器设计基础. 北京:机械工业出版社,2012。2 鲍可进. SOC单片机原理与应用. 北京:清华大学出版社, 2011。3 刘福太. 黄版电子电路511例. 北京:科学出版社,2009。4 刘守义. 数字电子技术. 西安:西安电子科技大学出版社,2001。5 关键. 电子CAD技术. 北京:电子工业出版

42、社,2004。6 胡汉才. 单片机原理及系统设计. 北京:清华大学出版社,20037 周兴华. 单片机课程设计实例. 北京:北京航空航天大学出版社,20088 何立民. 单片机原理与接口技术. 北京:北京航空航天大学出版社,19949 周立功. 单片机实验与实践. 北京:北京航空航天大学出版社,2004附录1 智能频率计设计(源程序)#include<c8051f020.h>#define SYSCLK 11059200.0#define DANGSHU 5/#define Tcount1 10/65536/11059.2=5.92ms/1/50=0.02ms/3.4E38doub

43、le Timer0=0;unsigned int Tcount=5,Tcount1=3;unsigned int T=0,T1=0;unsigned int count=0,count1=0,countt0=0;unsigned char state=0,state1=0;unsigned char PCL,PCH;double fre=0;bit st3=0;bit st1=0;unsigned char xdata LCDdata11=48,49,50,51,52,53,54,55,56,57,46;unsigned char xdata liangcheng510=65,49,48,12

44、6,53,48,72,122,0x20,0x20, 66,53,48,126,49,48,48,72,122,0x20, 67,49,48,48,126,49,75,72,122,0x20, 68,49,75,126,50,53,75,72,122,0x20, 69,50,53,75,126,53,48,75,72,122;void PCA_Init(void);void T0_Init(void);void PORT_Init(void);void LCD_Init(void);void LCD_show(double);void SYSCLK_Init(void);main() WDTCN

45、=0xde; WDTCN=0xad; EA=1; PCA_Init(); PORT_Init(); LCD_Init(); T0_Init(); SYSCLK_Init(); TR0=1; while(1) switch(state) case 0: Tcount=3;/<100Hz break; case 1: Tcount=200;/100500Hzbreak; case 2: Tcount=800;/5001000Hzbreak; case 3: Tcount1=400; break; case 4: Tcount1=10; break; default:break; if(sta

46、te1!=state) PCA0CPM0&=0xfe; state1=state; TR0=0;count1=0;count=0;T=0;T1=0; PCA0L=0; PCA0H=0;TR0=1;PCA0CPM0|=0x01;if(st1=1) Timer0=(double)(PCH*256+PCL+65536*(count+count1*60000)/SYSCLK); fre=(double)(Tcount-1)/Timer0);T=0;T1=0; count=0;count1=0;PCA0L=0; PCA0H=0;PCA0CPL0=0; PCA0CPH0=0;PCL=0;PCH=0

47、;st1=0;PCA0CPM0|=0x01; if(st3=1) fre=(double)(T-1+T1*60000)*SYSCLK/(Tcount1*65535); PCA0L=0; PCA0H=0; T=0; T1=0; count=0; count1=0; PCA0CPM0|=0x01; st3=0; if(countt0>=450) fre=0; countt0=0;count1=0;count=0; state=0;state1=100; T=0; T1=0; PCA0L=0; PCA0H=0; PCA0CPL0=0; PCA0CPH0=0;PCA0CPM0|=0x01; if(fre<=50) state=0; if(fre>50)&&(fre<=100) state=1; if(fre>100)&&(fre<=1000) state=2; if(fre>1000)&&(fre<=25000) state=3; if(fre&

温馨提示

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

评论

0/150

提交评论