- 打卡等级:偶尔看看I
- 打卡总天数:14
- 最近打卡:2025-04-28 14:10:14
版主
- 积分
- 2508

|
发表于 2025-1-24 16:44:12
|
显示全部楼层
打卡第十五集
任务一
任务二
#include "tim.h"
u32 Count_T1 = 0;
//void TIM1_Count_Init(void)
//{
// T1_CT = 1;
// T1_M1 = 0;
// T1_M0 = 0;
// T1_GATE = 0;
//
// TH1 = (65536-Count_num)>>8;
// TL1 = (65536-Count_num);
//
// P3PU |= 0x20;
// TR1 = 1;
// ET1 = 1;
//}
//void Timer1_Isr(void) interrupt 3
//{
// Count_T1 ++;
//}
//void T1_RunTask(void)
//{
// u32 count_th_tl=0;
// count_th_tl = ((u16)TH1<<8) + (u16)TL1;
// count_th_tl-=65526;
//
// SEG7_ShowLong(Count_T1*Count_num+count_th_tl,10);
//}
void Timer1_Isr(void) interrupt 3
{
static u32 count_p33 = 0;
if(P33==0)
{
count_p33++;
}
else
{
if(count_p33>0)
{
Count_T1 = count_p33;
}
count_p33=0;
}
}
void Timer1_Init(void) //100微秒@24.000MHz
{
AUXR |= 0x40; //定时器时钟1T模式
TMOD &= 0x0F; //设置定时器模式
TL1 = 0xA0; //设置定时初始值
TH1 = 0xF6; //设置定时初始值
TF1 = 0; //清除TF1标志
TR1 = 1; //定时器1开始计时
ET1 = 1; //使能定时器1中断
}
void T1_RunTask(void)
{
// SEG7_ShowLong(Count_T1,10);
SEG7_ShowString("%07.01f",((float)Count_T1)/10);
}
AI8051U教学视频第15集定时器做计shu器学习程序.zip
(193.25 KB, 下载次数: 5)
|
|