单片机电机转速测量系统仿真系统采用单片机中T1计数器对转速脉冲进行计数。定时器T1 工作于外部事件计数方式,对转速脉冲计数; T0 工作于定时器方式。每到1 s 读1 次计数值,此值即为脉冲信号的频率,根据式( 1) 可计算出电机的转速。转速检测装置的软件系统主要包括: 测速主程序、数据处理子程序和显示子程序。单片机上电后,系统进入准备状态。首先进行初始化,然后读取脉冲数据进行运算,将转速显示在LCD上。需要这款仿真及C语言程序的爱好者可从文章配图左上角网址上了解。
该单片机电机转速测量系统仿真仿真采用测频法“M法”测量电机转速。即在一定测量时间T内,测量脉冲发生器(替代输入脉冲)产生的脉冲数m1来测量转速,计算式如下:n=60m/TP,式中:P-为转轴转一周脉冲发生器产生的脉冲数;n-转速单位:(转/分);T-定时时间单位:(秒)。在该方法中,测量精度是由于定时时间T和脉冲不能保证严格同步,以及在T内能否正好测量外部脉冲的完整的周期,可能产生的1个脉冲的量化误差。因此,为了提高测量精度,T要有足够长的时间。定时时间可根据测量对象情况预先设置。设置的时间过长,可以提高精度,但在转速较快的情况下,所计的脉冲数增大(码盘孔数已定情况下),限制了转速测量的量程。而设置的时间过短,测量精度会受到一定的影响。
转速部分软件设计思路: AT89S52单片机的P3.5口接收传感器的信号。电路由显示电路、AT89S52单片机,单片机时钟电路,复位电路,等组成。中断服务程序INT0,软件需要解决的是定时器T0的记数和外部计数器T1的协调工作。由于测量的转速范围大,所以低速和高速都要考虑在内,软件工作流程:传感器检测出电机转动一转的脉冲数,由单片机的P3.5端口送入单片机,由单片机的内部计数器T1计数,启动计数时,发送一个信号TR0=1,内部定时器T0开始时,TH0、TL0设定初值为0。
关键字:C51 单片机 电机转速 测量仿真系统
引用地址:
C51单片机在电机转速测量仿真系统中的设计
推荐阅读最新更新时间:2024-11-10 21:02
基于AT89C52单片机的液位检测系统
随着现代测量技术的发展,对测量系统提出了越来越高的要求。在自动蒸馏测控系统中,准确及时地检测出蒸馏过程中从冷凝管馏出的第一滴液滴是获取初馏点的前提;实时、准确地测量出量筒中回收液体体积的变化是控制蒸馏过程中不同时段不同蒸馏速度的依据。而目前担负着对冷凝管馏出的液滴进行检测、回收、计量、测速等任务的完成有诸多不尽人意的地方,需要更加完善、合理的液滴、液位检测跟踪控制系统。 从液位测量的方法看,按检测器与液体接触与否分为两大类:一是接触式测量,二是非接触式测量。当需要通过测量液位变化确定体积变化时,一般采用非接触式测量方法。但在大多数非接触式测量中,液位传感器测试范围较大,绝对分辨率均大于0.5ml,因而在体积变化范围为0-
[单片机]
STM32单片机对ADS1246芯片的驱动
ADS1246是TI公司大致在2009年中期推出的24位ADC,最高采样速率可达2Ksps,其为单通道器件,与之相对应的还有ADS1247和ADS1248三通道器件,但特性并非完全一致。据TI资料介绍,ADS1246在ADS1247/ADS1248功能上做出简化,保留了其部分特性。本次设计,需要用到24位单通道转换器件,于是考虑用到ADS1246,主控制器用STM32L系列。以下为ADS1246的引脚图 上图显示ADS1246引脚图,其CS/SCLK/DIN/DUT为SPI通讯接口,RESET/START/DRDY为控制与状态脚,AVDD/AVSS以及DVDD/DGND分别为模拟/数字电源供电端,REFP/REFN为基准源输入
[单片机]
单片机中断实验1
电路图: 功能:按键开关灯。 代码如下: #include reg51.h #include intrins.h sbit p1_0 = P1^0; void delay (void) { int a = 500; while(a--) _nop_(); } void LED_01() interrupt 0 using 1 { delay(); if (INT0 == 0) { p1_0 = !p1_0; while (INT0 == 0); } } void main () { p1_0 = 0; EA = 1; EX0 = 1; while(1); }
[单片机]
TI - MCU - MSP430使用指南31 -> BSL
在讲述BSL功能之前,首先我们需要了解以下MSP430的下载方式: JTAG: 很多MCU都使用的下载方式,具有速度快,可以仿真等优点,但是连线较多,需要: VCC, GND, TDI, TDO, TMS, TCK, TEST,RST 每个引脚具体功能如下图所示: SBW: SBW即Spy-Bi-Wire下载方式,包括电源的两个引脚在内的话,仅仅需要四个引脚: VCC, GND, SWDIO, SWCLK, 其中SWDIO为数据引脚,双向通信,SWCLK为时钟引脚,在MSP430内部有一个SBW控制器,可以解码SBW信号转换成JTAG信号,如下图所示: BSL: BSL即bootloader,是固化在MSP430内部R
[单片机]
单片机结构体内存的分配
什么是字节对齐 一个变量占用 n 个字节,则该变量的起始地址必须能够被 n 整除,即: 存放起始地址 % n = 0, 对于结构体而言,这个 n 取其成员种的数据类型占空间的值最大的那个。 为什么要字节对齐 内存空间是按照字节来划分的,从理论上说对内存空间的访问可以从任何地址开始,但是在实际上不同架构的CPU为了提高访问内存的速度,就规定了对于某些类型的数据只能从特定的起始位置开始访问。这样就决定了各种数据类型只能按照相应的规则在内存空间中存放,而不能一个接一个的顺序排列。 举个例子,比如有些平台访问内存地址都从偶数地址开始,对于一个int型(假设32位系统),如果从偶数地址开始的地方存放,这样一个读周期就可以读出这个
[单片机]
MCS-51单片机指令系统(2)
指令系统的分类 该指令系统使用44种助记符,它们代表着33种可能,可以实现51种操作。因此,有的功能可以有几种助记符。指令助记符与操作数的各种可能寻址方式的组合总共构造出111条指令。不同指令对标志位的影响不同,可能会影响PSW中(Cy、AC、OV、P)某些标志位的状态,且需要正确估算指令的字节数。 指令格式由两部分组成,即操作码和操作数。操作码:规定指令进行什么操作,操作数:指令操作的对象。有单字节指令、双字节指令、三字节不同长度的指令,格式不同:(1)单字节指令:操作码、操作数 同在一个字节中。(2)双字节指令:操作码+操作数。(3)三字节指令:操作码+操作数+操作数。 在MCS-51单片机中,立即数不能作为目的操
[单片机]
基于stc单片机的AT89S52离线烧录器程序
下面是部分 源码 预览,完整的代码请到 http://www.51hei.com/bbs/dpj-20605-1.html 下载 #include uart.h #include s51pro.h #include myfun.h #include znfat/znFAT.h extern unsigned char OutBuf ; extern unsigned char InBuf ; unsigned char idata psignbuf ; unsigned char code_buf ; sfr P1M0 = 0x92; sfr P1M1 = 0x91; //定义STC12单片机IO模式特殊
[单片机]
深入解析汽车MCU的软件架构
电动汽车(EV)正在成为首选的交通方式,为传统内燃机汽车提供了一种可持续发展的环保型替代方案。在电动汽车复杂的生态系统中,众多电子控制单元(ECU)在确保其高效运行方面发挥着至关重要的作用。电机控制单元(MCU)就是这样一个 ECU,它是电机性能背后的大脑。在这篇综合文章中,我们将探索电机控制单元的世界,研究它们的功能、组件以及影响汽车 MCU 领域的最新趋势。 了解电动汽车使用的电机 在深入研究电动汽车电机控制单元的复杂性之前,有必要了解电动汽车常用的各种电机类型。最常见的两种类型是无刷直流(BLDC)电机和永磁同步(PMS)电机。 无刷直流电机又称电子换向电机,无需电刷和换向器,从而提高了效率,减少了维护。从本质上讲,它的
[嵌入式]