单片机课程设计报告

时间:2024.4.5

单片机课程设计

    实验报告

实验题目     频率可控的正弦波信号发生器                                

专    业          计算机科学与技术                                   

分组成员                                              

指导教师                                           

2014  年 12月 31日


《单片机原理与应用》课程设计

一.设计时间

    20##年12月29日-------12月31日

二.设计地点

  

三.设计目的

1.巩固学习《单片机原理与运用》课程知识

2.熟练掌握Keil uVision4和ISIS 7 Professional的安装与应用

3.熟练掌握C语言的知识,巩固A/D,D/A模块的学习

4.培养查阅资料,独立思考问题的能力

四.设计小组成员

五.指导老师

六.设计课题

   频率可控的正弦波信号发生器

七.实验内容

表1.实验元件清单

CPU芯片—AT89C51

1.AT89C51概述

AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

2. AT89C51引脚说明

AT89C51单片机引脚图如图3-2所示。它有40个引脚,其中包含2个专用于主电源的引脚,2个外接晶体的引脚,4个控制或与其它电源复用的引脚,以及32条输入输出I/O引脚。

D/A转换器

DAC0832当今世界在以电子信是8位分辨率的D/A转换集成芯片,与微处理器完全兼容,这个系列的芯片 以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到了广泛的应用。这类D/A转换器由8位输入锁存器,8位DAC寄存器,8位DA转换电路及转换控制电路构成。

1、DAC0832的引脚及功能:

DAC0832是8分辨率的D/A转换集成芯片。与微处理器兼容。这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。

0832_副本

图1:DAC0832管脚图

u  应用特性:

DAC0832是微处理器兼容型D/A转换器,可以充分利用微处理器的控制能力实现对D/A转换的控制。这种芯片有许多控制引脚,可以和微处理器控制线相连,接受微处理器的控制,如ILE、/CS、/WR1、/WR2、/XFER端。

有两级锁存控制功能,能够实现多通道D/A的同步转换输出。

DAC0832内部无参考电压源;须外接参考电压源。

DAC0832为电流输入型D/A转换器,要获得模拟电压输出时,需要外加转换电路。

u  各引脚功能说明:

D0~D7:8位数据输入线,TTL电平,有效时间应大于90ns(否则锁存器的数据会出错);

ILE:数据锁存允许控制信号输入线,高电平有效;

CS:片选信号输入线(选通数据锁存器),低电平有效;

WR1:数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。由ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输入数据线变换,LE1的负跳变时将输入数据锁存;

XFER:数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于500ns)有效;

WR2:DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。由WR2、XFER的逻辑组合产生LE2,当LE2为高电平时,DAC寄存器的输出随寄存器的输入而变化,LE2的负跳变时将数据锁存器的内容打入DAC寄存器并开始D/A转换。

IOUT1:电流输出端1,其值随DAC寄存器的内容线性变化;

IOUT2:电流输出端2,其值与IOUT1值之和为一常数;

Rfb:反馈信号输入线,改变Rfb端外接电阻值可调整转换满量程精度;

Vcc:电源输入端,Vcc的范围为+5V~+15V;

VREF:基准电压输入线,VREF的范围为-10V~+10V;

AGND:模拟信号地;

DGND:数字信号地;

u DAC0832三种数据输入方式:
 (1)双缓冲方式:即数据经过双重缓冲后再送入D/A转换电路,执行两次写操作才能完成一次D/A转换。
 (2)单缓冲方式:不需要多个模拟量同时输出时,可采用此种方式。

(3)直通方式:此时两个寄存器均处于直通状态,因此要将cswr1wr2wr2端都接数字地,ILE接高电平,使LE1、LE2均为高电平,致使两个锁存寄存器同时处于放行直通状态,数据直接送入D/A转换电路进行D/A转换。

  

八.实验设备,流程图,实验原理

  1.实验设备

      湖南城市学院实验楼401机房电脑

  2.流程图

图2:实验流程图

3.实验原理

D/A转换器产生各种波形的原理:利用D/A转换器输出的模拟量与输入数字量成正比关系这一特点,将D/A转换器作为微机输出接口,CPU通过程序向D/A转换器输出随时间呈现不同变化规律的数字量,则D/A转换器就可输出各种各样的模拟量,如正弦波。

九.实验步骤及结果

1.  分析课题,按要求确定设计方案

2.  经讨论确定D/A转换器采用单缓冲方式

图3:DAC0832单缓冲方式连接图

3.  按照方案用ISIS 7 Professional画出实验图

图4:正弦波发生器电路图

 4.根据实验图用写出正弦波发生程序

 5.结果

图5:正弦波

十.实验设计心得体会

通过此次课程设计,使我更加扎实的掌握了有关单片机方面的知识,在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原因所在,也暴露出了前期我在这方面的知识欠缺和经验不足。实践出真知,通过亲自动手制作,使我们掌握的知识不再是纸上谈兵。
    在课程设计过程中,我们不断发现错误,不断改正,不断领悟,最终的检测调试环节,本身就是在践行“过而能改,善莫大焉”的知行观。这次课程设计终于顺利完成了,在设计中遇到了很多问题,最后在老师的指导下,终于游逆而解。在今后社会的发展和学习实践过程中,一定要不懈努力,不能遇到问题就想到要退缩,一定要不厌其烦的发现问题所在,然后一一进行解决,只有这样,才能成功的做成想做的事,才能在今后的道路上劈荆斩棘,而不是知难而退,那样永远不可能收获成功,收获喜悦,也永远不可能得到社会及他人对你的认可!
    这次课程设计,给我很多专业知识以及专业技能上的提升,给了我许多道,给了我很多思,给了我莫大的空间。同时,设计让我感触很深。使我对抽象的理论有了具体的认识。

我认为,在这学期的实验中,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。更重要的是,在实验课上,我们学会了很多学习的方法。而这是日后最实用的,真的是受益匪浅。要面对社会的挑战,只有不断的学习、实践,再学习、再实践。这对于我们的将来也有很大的帮助。以后,不管有多苦,我想我们都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情。就像中国提倡的艰苦奋斗一样,我们都可以在实验结束之后变的更加成熟,会面对需要面对的事情。
    此次设计也让我明白了思路即出路,有什么不懂不明白的地方要及时请教或上网查询,只要认真钻研,动脑思考,动手实践,就没有弄不懂的知识,收获颇丰。

十一.源程序

#include<reg51.h>

#define DAC0832  0x7fff //定义DAC0832端口地址

sbit cs=P3^7;   //采用单缓冲方式,cs=0时启动转换

sbit k1=P1^0;  //开关1控制输出100hz正弦波

sbit k2=P1^1;  //开关2控制输出5hz正弦波

sbit k3=P1^2;  //开关3控制输出3hz正弦波

unsigned char num=0;

bit flag=0;

//正弦表;每半个周期256个取值,最大限度保证波形不失真。

unsigned char code sin_num[]={    

      0,0,  0,  0,  0,  0,  0,  0,  1,  1,  1,  1,  1,  2,  2,  2,

      2,    3,  3,  4,  4,  4,  5,  5,  6,  6,  7,  7,  8,  8,  9,  9,

      10,   10, 11, 12, 12, 13, 14, 15, 15, 16, 17, 18, 18, 19, 20, 21,

      22,   23, 24, 25, 25, 26, 27, 28, 29, 30, 31, 32, 34, 35, 36, 37,

      38,   39, 40, 41, 42, 44, 45, 46, 47, 49, 50, 51, 52, 54, 55, 56,

      57,   59, 60, 61, 63, 64, 66, 67, 68, 70, 71, 73, 74, 75, 77, 78,

      80,   81, 83, 84, 86, 87, 89, 90, 92, 93, 95, 96, 98, 99, 101,102,

      104,  106,    107,    109,    110,    112,    113,    115,    116,    118,    120,    121,    123,    124,    126,    128,

      129,  131,    132,    134,    135,    137,    139,    140,    142,    143,    145,    146,    148,    149,    151,    153,

      154,  156,    157,    159,    160,    162,    163,    165,    166,    168,    169,    171,    172,    174,    175,    177,

      178,  180,    181,    182,    184,    185,    187,    188,    189,    191,    192,    194,    195,    196,    198,    199,

      200,  201,    203,    204,    205,    206,    208,    209,    210,    211,    213,    214,    215,    216,    217,    218,   

      219,  220,    221,    223,    224,    225,    226,    227,    228,    229,    230,    230,    231,    232,    233,    234,   

      235,  236,    237,    237,    238,    239,    240,    240,    241,    242,    243,    243,    244,    245,    245,    246,   

      246,  247,    247,    248,    248,    249,    249,    250,    250,    251,    251,    251,    252,    252,    253,    253,   

      253,  253,    254,    254,    254,    254,    254,    255,    255,    255,    255,    255,    255,    255,    255,    255

      };

unsigned int t;

void main()

{

   if(k1==0)t=2500; //给t赋值定义正弦波的1/(4*256)周期

   else if(k2==0)t=5000;    //给t赋值定义正弦波的1/(4*256)周期

   else if(k3==0)t=8333;  //给t赋值定义正弦波的1/(4*256)周期

   else t;

   TMOD=0X01;          //设置定时器0工作方式为1

   TH0=(65536-t)/256;     //定时

   TL0=(65536-t)%256;     //定时

   EA=1;    //开关中断

   ET0=1;   //允许T0中断

   TR0=1;   //启动定时器

   while(1) //等待中断产生

   {

    //空语句

   }

  

   

}

void timer0() interrupt 1

{

   TH0=(65536-t)/256;  //定时

   TL0=(65536-t)%256;   //定时

   if(!flag)

     {

        cs=0;P2=sin_num[num++];cs=1;    //cs=0启动转换产生正弦波上半周

        if(num==255){num=255;flag=1;}

      }

    else if(flag)

    {

       cs=0;P2=sin_num[num--];cs=1;     //cs=0启动转换产生正弦波下半周

       if(num==0){num=0;flag=0;}

     

     }       

}

参考文献

[1]夏士兵,钱江.构建基于COM+的分布式Web应用[J].微型机与应用,2001.20(6):8-9.

[2][美]Richard Anderson, Chris Blexrud著.ASP3高级编程[M].刘福太,张立民,金慧琴,梁发麦等译.北京:机械工业出版社,2000:408-458.

[3]闫玉德等编。MCS-51单片机原理与应用[M].北京:机械工业出版社,2002

[4]梁合庆等编。从C到嵌入式C编程语言[M].北京:北京航空航天大学出版社,2000

[5]潘永雄. 新编单片机原理与应用(第二版)[M].西安:西安电子科技大学出版社,2007

[6]李华主编。MCS-51系列单片机实用接口技术[M].北京:北京航空航天大学出版社,2000

[7]郭天翔主编。新概念51单片机C语言教程[M].北京:电子工业出版社,2008

[8]飞思科技产品研发中心MATLAB7辅助信号处理技术与应用 北京:电子工业出版社,2005

[9]陈希林,肖明清. 一种LabWindows/CVI与MATLAB混合编程的实现方法[J].微计算机信息,2005

[10]飞思科技产品研发中心MATLAB7辅助信号处理技术与应用 北京:电子工业出版社,2005


第二篇:单片机课程设计报告(简易计算机)


专业综合课程设计

  级:                

  号:                 

  名:                 

  绩:                

电子与信息工程学院

计算机科学系


更多相关推荐:
《单片机课程设计》报告

机械与车辆学院单片机课程设计报告20xx20xx学年第一学期课程设计题目水塔水位控制系统姓名学号班级指导老师职称时间成绩单片机课程设计考查评分表2目录一课程设计性质和目的4二课程设计的内容及要求41硬件设计42...

单片机课程设计报告

物理与机电学院课程设计报告课程名称:单片机课程设计系部:物理与机电工程学院专业班级:07级电子信息工程(1)班完成时间:20XX年5月24日~28日报告成绩:【摘要】单片机自1976年由Intel公司推出MCS…

51单片机课程设计报告。

成绩单片机原理及应用课程设计课程名ltlt单片机原理及应用gtgt学部专业学号姓名指导教师日期20xx年06月一设计任务与要求1任务制作并调试51单片机学习板2要求1了解并能识别学习板上的各种元器件会读元器件标...

流水灯单片机课程设计报告

井冈山大学机电工程学院单片机课程设计报告课程名称单片机设计题目流水灯姓名覃家应陈东阳专业生物医学工程班级10级医工本一班学号100615062指导教师王佑湖20xx年11月10日目录1引言211设计任务212设...

单片机课程设计报告范例

单片机课程设计示例交通灯控制系统设计一总体设计1设计要求交通灯的任务要求为模拟十字路口的交通灯的亮灭及闪烁基本工作原理根据交通灯的亮灭情况可以分为四种状态利用定时计数器每20秒产生一次中断每产生一次中断后由是否...

51单片机电子时钟课程设计报告

JINGCHUUNIVERSITYOFTECHNOLOGY单片机原理及应用课程设计报告题目电子时钟专业电气工程及其自动化班级20xx级电工2班学号20xx401020xx2姓名王贞指导教师邹云峰提交日期20xx...

基于51单片机课程设计报告

课题:基于51单片机的数字温度计设计专业:电气工程及其自动化班级:4学号:***设计日期:20XX/6/3成绩:重庆大学城市科技学院电气学院基于51单片机数字温度计设计报告一、设计目的作用本设计是一款简单实用的…

基于单片机的电子密码锁设计_单片机课程设计报告

单片机密码锁课程设计报告湖南师大本科生课程设计目录1引言12设计要求23硬件电路设计331设计方案的选择332主要元器件简介433硬件系统结构84程序设计135总结15参考文献16附件一电路原理图及作品实物图1...

单片机课程设计数字钟实验报告

单片机课程设计电子钟一实现功能1能够实现准确计时以数字形式显示时分秒的时间2小时以24小时计时形式分秒计时为60进位能够调节时钟时间3闹钟功能一旦走时到该时间能以声或光的形式告警提示4能够实现按键启动与停止功能...

单片机课程设计数字钟报告

单片机课程设计报告基于单片机的数字钟班级姓名学号设计时间单片机课程设计正文一引言现代社会科技飞速发展人们生活节奏加快时间就是金钱时间就是生命时间对人们来说总是那么宝贵工作的忙碌性和繁杂性容易使人忘记当前的时间忘...

单片机课程设计报告

文华学院单片机原理及应用课程设计报告设计题目姓名学号班级指导教师20xx年月日目录一标题二设计内容设计要求三设计思路四工作原理五硬件设计六软件设计含流程图七调试遇到的问题和解决方法八改进意见九收获及体会十源程序...

单片机电子时钟课程设计报告

基于单片机电子时钟的设计绪论单片机自20世纪70年代问世以来以其极高的性能价格比受到人们的重视和关注应用很广发展很快单片机体积小重量轻抗干扰能力强环境要求不高价格低廉可靠性高灵活性好开发较为容易由于具有上述优点...

单片机课程设计报告(45篇)