单片机定时器和计数器的实验C语言,(单片机原理与应用)定时器/计数器设计实验...
一、实验内容
采用12MHZ时钟频率的单片机,通过一个开关输入,触发定时计数。按下开关10次,计算按键的平均时间,并通过数码管显示出来。
二、实验目的
了解定时器的各种工作方式
掌握定时器/计数器的使用和编程方法
三、实验设备
DELL台式机 、keilC51版本7、proteus版本6
四、实验电路图
五、程序流程图
六、程序源码
#include#include#define uchar unsigned char
#define uint unsigned int
sbit Dot=P0^7;//小数点
sbit P3_5=P3^5;//按钮
uchar Count=0;//循环次数
uchar flag=0;//判断标志
uchar Times=0;
//数码管段码定义
uchar code DSY_CODE[]=
{ 0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x82,0xf8,
0x80,0x90
};
//延时
void DelayMS(uint x)
{
uchar i;
while(--x)for(i=0;i<120;i++);
}
//6只数码管上显示的数字
uchar Digit[]={0,0,0,0,0,0};
void main()
{
uchar i,j;
P0=0xff;
P2=0x00;
P3_5=1;
TMOD=0x01;//设T0为定时方式1
EA=1;ET0=1;//开总控,INT0
TH0=(65536-50000)/256;//设置50ms定时
TL0=(65536-50000)%256;
while(Count!=10){
if(P3_5==1)//开关高电平
{
if(flag==1)//判断标志位
{
flag=0;Count++;//修改标志位,循环次数+1
}
TR0=0;//关中断
}
else if(P3_5==0)//开关低电平
{
flag=1; TR0=1;//修改标志位,关中断
}
}
//显示数码管
while(1)
{
j=0x80;
for(i=0;i<6;i++)
{
j=_crol_(j,1);
P2=j;
P0=DSY_CODE[Digit[i]];
if(i==2)//因为是平均时间,所以小数点左移一位
Dot=0;
DelayMS(2);
}
}
}
void Time0()interrupt 1
{
uchar i;
TH0=(65536-50000)/256;//定时
TL0=(65536-50000)%256;
if((++Times)==2)//50ms*2=0.1s
{
Times=0;
Digit[0]++;//0.1s累加
for(i=0;i<=5;i++)//进位处理
{
if(Digit[i]==10)
{
Digit[i]=0;
if(i!=5)
Digit[i+1]++;
}
}
}
}
单片机定时器和计数器的实验C语言,(单片机原理与应用)定时器/计数器设计实验...相关推荐
- 定时器循环彩灯实验c语言,单片机实验6__定时器控制循环彩灯实验.doc
华 南 农 业 大 学 实 验 报 告 专业班次 08电信1 组别 200831120102 题目 实验六 定时器控制循环彩灯 姓 名 陈 建 泽 日期 2010.11.4 一.实验目的 1.学习89 ...
- pc机串口通讯实验c语言,单片机实验六 单片机与PC机串口通讯
实验报告六 实验名称:单片机与PC机串口通讯 实验目的 : 1.掌握串行口工作方式的程序设计,掌握单片机通讯的编制. 2.了解实现串行通讯的硬环境,数据格式的协议,数据交换的协议. 3.了解PC机通讯 ...
- p1口输入 输出实验C语言,单片机P1口输入输出实验单片机P1口输入输出实验.ppt
单片机P1口输入输出实验单片机P1口输入输出实验 单片机I/O口输入输出实验 (或单片机数字量输入输出实验);单片机P1口输入输出实验 ;2.实验要求(1).2)为必做,3)为选做) 3) P1口作输 ...
- 单片机io口的控制实验c语言,单片机io口控制实验报告
<单片机io口控制实验报告>由会员分享,可在线阅读,更多相关<单片机io口控制实验报告(5页珍藏版)>请在人人文库网上搜索. 1.单片机io口控制实验报告 精品文档,仅供参考单 ...
- 查询式键盘实验c语言,查询式键盘与阵列式键盘实验.doc
查询式键盘与阵列式键盘实验 PAGE \* MERGEFORMAT 1 论 文 提 要 在大部分嵌入式系统中,人机交互界面是必不可少的一个重要部分,人机交互界面的设计往往占据很大一部分工作.人机交互界 ...
- 单片机音频驱动实验C语言,单片机实验:音乐改编
<单片机实验:音乐改编>由会员分享,可在线阅读,更多相关<单片机实验:音乐改编(7页珍藏版)>请在人人文库网上搜索. 1.实验1将歌曲播放程序两只老虎改变为另一首歌曲(如Hap ...
- 独立式键盘实验c语言,单片机设计报告—独立式键盘控制的4级流水灯.doc
单片机设计报告-独立式键盘控制的4级流水灯 单片机结题报告 独立式键盘控制的4级流水灯 班 级 姓 名 吴泽宇 学 号 2008405340 一.任务目的: 通过采用单片机制作一个独立式键盘控制的4级 ...
- 查询式键盘实验c语言,单片机实验上机--实验十七查询式键盘实验.doc
实验十七 查询式键盘实验 一.实验目的 1.掌握键盘和显示器的接口方法和编程方法 2.掌握键盘和八段码显示器的工作原理 3.静态显示的原理和相关程序的编写 二.实验说明 本实验提供了8个按钮的小键盘, ...
- 单片机adc0809模数转换实验c语言,单片机C语言程序设计:ADC0809 数模转换与显示...
/* 名称:ADC0809 数模转换与显示 说明:ADC0809 采样通道 3 输入的 模拟量,转换后的结果显示在数码管上. */ #include #define uchar unsigned c ...
最新文章
- 用LSTM实现英文写作
- C#版本的CPU性能测试
- jni 字符串的梳理
- python怎么做折线图_python怎么画折线图
- 软件开发中IT用语-日文和英文对照版
- server2008 sql 账号只读权限_SQL Server 2008数据库创建用户只读权限的两种方式(转载)...
- Asp.Net Core 中的“虚拟目录”
- java 刷新jtextarea_Java JTextArea不能实时刷新的问题
- Python 中的协程 (4) asyncio模块
- springboot--多环境
- spring interceptor 拦截方法,判断用户是否存在
- 计算机操作常用的五大功能是,计算机操作系统的五大功能是什么
- 科技热点周刊|ClickHouse 融资 2.5 亿美元、个人信息保护法正式实施、Facebook 改名 Meta
- 什么是前端开发工程师
- 02-SpringBoot集成MinIo
- 详解Django的Models(django基础四)
- 发送短信(SMS)承载方式有哪些?
- 独家食用指南系列|Android端SQLCipher的攻与防新编
- laravel 先判断在加查询条件,whereBetween,whereIn
- karabiner改键教程