找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

单片机秒表程序,自己设置的倒计时时间一到,如何使蜂鸣器响

查看数: 1763 | 评论数: 3 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2022-11-27 15:43

正文摘要:

(1)设计精度为0.1S的秒表系统。(2)设置启动、暂停、清零按钮。(3)秒表支持设置最长倒计时长度,超过此长度报警。目前进程:设计精度为0.1s完成、设置启动、暂停、清零完成,秒表支持设置最长倒计时时间完成。 ...

回复

ID:1064785 发表于 2023-3-1 15:35
1005002719 发表于 2022-11-28 16:36
void add_one0() interrupt 1
{
k++;

解决了么,大哥
ID:1053789 发表于 2022-11-28 16:36
JJJ1234 发表于 2022-11-28 10:33
看了以后 我的想法是这样,定义一个全局变量unsigned char flag=0; 在if(x==9999) { TR0=0; } 里面标志位  ...

void add_one0() interrupt 1
{
k++;
if(k==2)
{
k=0;
TF0=0;
if(SUB60==1) // 当 P1.1 口是高电平时秒表加 0.1s
// 当 P1.1 口是低电平时秒表减 0.1s
{
x=x+1; // 秒表加 0.1s
}
else
{
x=x-1; // 秒表减 0.1s
}
if(x==0)
{
TR0=0;
}
if(x==9999)
{
P1^0=1;
TR0=0;
}
}
TH0=(65536-50000)/256; // 计数器 T0 高 8 位赋初值
TL0=(65536-50000)%256; // 计数器 T0 低 8 位赋初值
}
是这样改吗?
ID:1047841 发表于 2022-11-28 10:33
看了以后 我的想法是这样,定义一个全局变量unsigned char flag=0; 在if(x==9999) { TR0=0; } 里面标志位 置1,然后在while(1)循环下面添加条件即可

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表