#include#defineucharunsignedchar#defineuintunsignedint#defineulongunsignedlong#defineLED_DATP0sbitLED_SEG0=P2^7;sbitLED_SEG1=P2^6;sbitLED_SEG2=P2^5;sbitLED_SEG3=P2^4;#defineTIME_CYLC100//12M晶振,定时器10ms中断一次我们1秒计算一次转速//1000ms/10ms=100#definePLUS_PER10//码盘的齿数,这里假定码盘上有10个齿,即传感器检测到10个脉冲,认为1圈#defineK1.65//校准系数unsignedcharcodetable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};uchardataDisbuf[4];//显示缓冲区uintTcounter=0;//时间计数器bitFlag_Fresh=0;//刷新标志bitFlag_clac=0;//计算转速标志bitFlag_Err=0;//超量程标志voidDisplayFresh();//在数码管上显示一个四位数voidClacSpeed();//计算转速,并把结果放入数码管缓冲区voidinit_timer();//初始化定时器T0\T1voidDelay(uintms);//延时函数voidit_timer0()interrupt1/*interruptaddressis0x000b*/{TF0=0;//定时器T0用于数码管的动态刷新TH0=0xC0;TL0=0x00;Flag_Fresh=1;Tcounter++;if(Tcounter>TIME_CYLC){Flag_clac=1;//周期到,该重新计算转速了}}voidit_timer1()interrupt3/*interruptaddressis0x001b*/{TF1=0;//定时器T1用于单位时间内收到的脉冲数//要速度不是很快,T1永远不会益处Flag_Err=1;//如果速度很高,我们应考虑另外一种测速方法:T测速法}voidmain(void){Disbuf[0]=0;//开机时,初始化为0000Disbuf[1]=0;Disbuf[2]=0;Disbuf[3]=0;init_timer();while(1){if(Flag_Fresh){Flag_Fresh=0;DisplayFresh();//定时刷新数码管显示}if(Flag_clac){Flag_clac=0;ClacSpeed();//计算转速,并把结果放入数码管缓冲区Tcounter=0;//周期定时清零TH1=TL1=0x00;//脉冲计数清零}if(Flag_Err)//超量程处理{Disbuf[0]=0x9e;//开机时,初始化为0000Disbuf[1]=0x9e;Disbuf[2]=0x9e;Disbuf[3]=0x9e;while(1){DisplayFresh();//不再测速等待复位i}}}}//在数码管上显示一个四位数voidDisplayFresh(){P2|=0xF0;LED_SEG0=0;LED_DAT=table[Disbuf[0]];Delay(1);P2|=0xF0;LED_SEG1=0;LED_DAT=table[Disbuf[1]];Delay(1);P2|=0xF0;LED_SEG2=0;LED_DAT=table[Disbuf[2]];Delay(1);P2|=0xF0;LED_SEG3=0;LED_DAT=table[Disbuf[3]];Delay(1);P2|=0xF0;}//计算转速,并
2024/3/2 19:19:54 400KB 光电传感器、测速、protus、pcb
1
实验程序,使用了函数指针,定时器断句,套路比较深,有函数指针比较绕,请见谅
2024/3/2 6:30:22 4.16MB ESP826 WIFI STM32F
1
秉火的RFIC模块RC522例程发现F103指南者的有问题,自己改了下,主要是LCD函数有问题,滴答定时器也有点问题。
2024/2/29 17:22:53 9.73MB STM32F 指南者 RC522
1
自己编写的stm32f103程序,程序作用是将stm32的定时器功能复用为编码器模式
2024/2/29 15:36:22 3.71MB stm 32
1
810个脚本教程,新手必备。
一部分的目录东西太多了行为控制脚本鼠标的路线Unity3D教程:游戏玩家服务器的制作Unity3D教程:实例化JS脚本控制逐渐淡出的欢迎界面Unity3D教程:界面插件NGUI的使用(2)脚本控制物体的变换脚本的运行顺序研究Unity3D教程:物体跟随鼠标点击处移动Unity3D音乐开关与音量条Unity3D教程:GUILayout.Window和GUI.Window的区别在游戏中改变地形高度教你如何创建unity3d多个定时器,以及定时器的其他操作Unity3D使用LitJson解析服务器上的JSONIOS下文件保存和读取Unity3D教程:游戏开发算法(二)ClickShowWindow点击显示窗口鼠标选中物体并拖动物体的方法在触屏中如何用触摸获取场景中的三维物体啊?Unity3D教程:掌握多线程!Unity3D教程:制作简单小汽车游戏OnGUI的视觉化编辑unity3d角色血条Unity3D格斗游戏运动特效MenuItem自定义菜单项Unity3D脚本:导弹追踪代码Unity3D教程:UI自动适合屏幕分辨率中慢动作与加速动作的实现触屏选中Unity3D场景中的GameObject对象代码
2024/2/27 1:08:50 46.89MB Unity3D
1
动态心电图绘制,通过qt定时器,实现心电图从左往右进行绘制,到达坐标轴最大值后,再从左往右继续进行绘制。
增加:文章地址:https://blog.csdn.net/DoleH/article/details/86250510
2024/2/18 9:10:28 5MB 动态 心电图 QtCharts Qt
1
VC2010编写的工控仪表基于对话框方便移植界面相当完美该注意的地方我都加上了注释方便大家观看我用了个定时器让表从0到100然后从100到0不停走动大家要用的时候把定时器去掉直接调用函数就可以在表上显示对应的数据。
2024/2/15 14:15:52 31.73MB 工控仪表
1
水中测距超声波换能器PCB文件包括变压器升压,带通滤波,对数放大,支持AD模式采集回波信号,支持定时器捕获/外部中断方式采集回波信号,给有需要的朋友!
2024/2/15 12:11:41 921KB 水中测距
1
基于AT89C51单片机的电子时钟,使用汇编语言编写,注释详细,使用定时器T0及数码管动态显示,在proteus软件里面完美仿真,欢迎51单片机初学者参考和借鉴。
2024/2/14 14:56:33 57KB 51 单片机 电子钟 proteus
1
这个程序是要完成两个功能的,一个是实现多线程画线,另一是使用定时器,其实想要的结果是看到多线程画线是同时画线,而定时器画线是先后画线的;
通过对比可以发现使用多线程的好处
2024/2/9 10:02:03 3.57MB 多线程 MFC
1
共 371 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡