77范文网 - 专业文章范例文档资料分享平台

单片机实验报告-史昊卿杨 - 图文(7)

来源:网络收集 时间:2019-08-03 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

}

}

}

case(1):

LSA=1;LSB=0;LSC=0; break;//显示第1位

case(2):

LSA=0;LSB=1;LSC=0; break;//显示第2位

case(3):

LSA=1;LSB=1;LSC=0; break;//显示第3位

case(4):

LSA=0;LSB=0;LSC=1; break;//显示第4位

case(5):

LSA=1;LSB=0;LSC=1; break;//显示第5位

case(6):

LSA=0;LSB=1;LSC=1; break;//显示第6位

case(7):

LSA=1;LSB=1;LSC=1; break;//显示第7位

GPIO_DIG=DisplayData[i];//发送段码 j=10;

//扫描间隔时间设定

while(j--);

GPIO_DIG=0x00;//消隐

4、实验连线

将程序下载到单片机中,可以看到各数码管按照顺序从0~F依次显示,实验完成。

30

动态数码管实验

31

实验七NE555脉冲发生器

一、实验目的

1.学习了解ne555用作定时器构成的时基电路。

2.通过学习ne555内部结构以及单片机定时/计数器功能编写相关程序。 4.再次熟悉使用1602液晶显示器。

二、实验要求

编写相关程序,使得在1602显示脉冲频率,调节电位器可改变频率。

三、实验内容

1、 ne555定时器

ne555的内部结构可等效成23个晶体三极管.17个电阻。两个二极管组成了比较器、RS触发器。等多组单元电路。特别是由三只精度较高5k电阻构成了一个电阻分压器。为上、下比较器提供基准电压.所以称之为555。 ne555属于cmos工艺制造。

由555定时器和外接元件R1、R2、C构成多谐振荡器,脚2与脚6直接相连。电路没有稳态,仅存在两个暂稳态,电路亦不需要外接触发信号,利用电源通过R1、R2向C充电,以及C通过R2向放电端Dc放电,使电路产生振荡。电容C在2/3Vcc和1/3Vcc之间充电和放电,从而在输出端得到一系列的矩形波,对应的波形如图7-1所示。

图7-1 ne555定时器的电路结构与震荡波形图

32

2、程序设计

1) NE555:out →P3.5 —— T1的输入端 作为计数器输入

定时器T1做计数器,工作方式1(16位定时器),由TR1打开计数器

2) 每1秒内,输入脉冲的个数 —— 由T0提供时间基准

定时器T0做定时器,工作方式1(16位定时器),由TR0打开定时器 ——TMOD=0x51;

3) //--设置定时器T0的初值:例如晶振为12MHZ时定时50ms,需要20倍频

输出--//

TH0=0x3C; TL0=0xB0;

4) //开放中断、定时器T0、计数器T1 5) 中断函数void Timer0() interrupt 1 {}

——提供倍频、1秒时间到的信息。如果1秒时间到,则提供主函数的计算/显示频率的标识:例如用TR0=0信号//停止定时器

6) 中断函数void Timer1() interrupt 3 {}

——计数到65536,未到计算频率的时机,脉冲数+65536

7) 主函数扫描标识TR0:计算/显示频率。 3、程序代码 #include #include\

#define uchar unsigned char #define uint unsigned int #define ulong

unsigned long

HZ\

//--声明全局函数--//

void TIMER_Configuration(); //初始化定时器

//--定义全局变量--//

ulong Freq; //用来存放要显示

//--定义LCD显示的文字--// uchar

code

EN_CHAR1[16]={\ 的频率值

ulong TimeCount; //用于计算1S钟的

CYMOMETER \

uchar code EN_CHAR2[16]={\ void main()

33

{

//--显示要写的字母--// for(i=0;i<16;i++) { }

LcdWriteData(EN_CHAR1[i]);

uchar i, freqValue[6]; LcdInit();

TIMER_Configuration();

freqValue[0]='0'+Freq00000/10

0000;

freqValue[1]='0'+Freq0000/100

00;

freqValue[2]='0'+Freq000/1000;

freqValue[3]='0'+Freq00/100;

freqValue[4]='0'+Freq0/10;

//--显示求得的数值--// for(i=0;i<5;i++)//从最高位

freqValue[5]='0'+Freq;

LcdWriteCom(0xc0);//第二行显示 for(i=0;i<16;i++) { } while(1) {

if(TR0==0) //当计数LcdWriteData(EN_CHAR2[i]);

开始查找不为0的数开始显示(最低位为0显示0)

{

if(freqValue[i]==0x30) {

freqValue[i]=0x20;

器停下的时候,表明计数完毕

{

Freq = Freq + TL1;

34

//读取TL的值

Freq = Freq + (TH1 * 256);

//若为0则赋值空格键

} else {

break;

//读取TH的值

LcdWriteCom(0xc8); //--求频率的个十百千万

十万位--//

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库单片机实验报告-史昊卿杨 - 图文(7)在线全文阅读。

单片机实验报告-史昊卿杨 - 图文(7).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/676448.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: