STM32编码器模式的测试例程,代码中采用TIM2定时器的编码器模式,在主程序中利用延时函数监测单位时间内的脉冲数,并根据脉冲数计算速度。
程序中不包含电机输出控制和PID调速。
2024/6/10 16:25:18 316KB STM32 encoder 编码器
1
#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
基于STM32F407的旋钮编码器程序,亲测可用,打印转动时产生的脉冲数
2024/2/16 1:41:51 10.69MB 旋钮编码器 编码器模式
1
可串口显示脉冲数LCD显示转速基于stm32f103ze正交编码器读取
2023/12/14 15:58:22 6.66MB stm32 encoder
1
利用STM32定时器的同步,可以精准控制PWM脉冲数量(库函数版)
2023/7/30 2:56:57 3KB STM32 脉冲数 PWM 精准控制
1
繁难扭转倒立摆因此基于STM32f103c8t6为抑制中间。
经由角位移传感器的脉冲数及响应方案的的数学盘算来丈量角度信息,该信息被处置芯片STM32f103c8t6凑集并处置应前,经由PID算法举后退一步的信息处置。
从而患上出电机应该作出响应的照料数据。
最终STM32f103c8t6将患上出的响应数据转换成PWM波及转向抑制信号传递给LN298驱动器,从而驱动小型直流减速电机来举行位置更正。
更正的信息经由角位移传感器转换成电信号再次传递给抑制中间举行信息处置,信息再次传递给LN298举行电
2023/3/21 21:19:24 6.56MB 滚球
1
采用准分子激光对SiC陶瓷表面进行了不同脉冲数、不同单脉冲能量和不同反复频率的辐照实验,获得了SiC陶瓷的辐照损伤二维和三维表面形貌,并分析了微观作用机制。
结果表明,193nm准分子激光辐照SiC陶瓷时既产生光热作用又产生光化学作用,其中光热作用占主导;SiC表面损伤的宏观形貌与激光辐照参数相关,辐照脉冲数增加或单脉冲能量增加均会加重辐照损伤,增大激光反复频率会导致辐照损伤深度略微下降。
1
采用准分子激光对SiC陶瓷表面进行了不同脉冲数、不同单脉冲能量和不同反复频率的辐照实验,获得了SiC陶瓷的辐照损伤二维和三维表面形貌,并分析了微观作用机制。
结果表明,193nm准分子激光辐照SiC陶瓷时既产生光热作用又产生光化学作用,其中光热作用占主导;SiC表面损伤的宏观形貌与激光辐照参数相关,辐照脉冲数增加或单脉冲能量增加均会加重辐照损伤,增大激光反复频率会导致辐照损伤深度略微下降。
1
S型加减速算法,可完成由脉冲数反算速度曲线、由加减速率计算速度曲线和加减速时间计算速度曲线。
1
研究了调QEr:YAG激光消融离体牙本质过程中水雾的作用及其对消融后牙本质微结构的影响。
调QEr:YAG激光重复频率为3Hz,脉冲宽度为62ns,作用脉冲数为10,能量范围为4~70mJ,水雾流量分别为0,4,9,13mL/min时消融牙本质。
每种实验条件下消融10个牙本质样品,利用扫描电镜观察消融坑洞微结构。
实验结果表明,随着水雾流量的增加,调QEr:YAG激光对人牙本质的消融阈值呈逐步增加的趋势,牙本质所受机械损伤减小。
实验结果对了解调QEr:YAG激光消融牙硬组织的微观结构及牙科治疗应用具有参考价值。
2016/9/26 20:12:08 18.93MB 激光技术 调Q Er:YA 水雾流量
1
共 11 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡