高速计数的几个问题及一些见解

最近课程进度正好讲到高速计数,有些学员反馈说高速计数很难,没有讲之前很多地方看不懂,我分析了每期学员的学习情况总结了几个问题及一些见解,希望对大家学习有所帮助:
一、不知到什么场合需要用到高速计数。
高速计数与普通计数器最大的区别在于计数频率高,根本原因是因为其原理有着本质上的区别。普通计数器是通过扫描计数输入条件是否发生变化来进行计数,其计数频率受扫描周期的影响,所以频率不会太高。而高速计数器则是通过外部高速输入i点直接采集外部高速事件到cpu中来实现计数,其计数频率不再受扫描周期限制,所以计数频率可以高达200khz。由此可知,高速计数主要是应用于计数频率较高的场合,应用时常与编码器配合使用,典型的应用有两个:
1)用于速度检测。
2)用于位置检测。
二、不知道高速计数程序该从何写起。
高速计数程序虽然步骤较多,但是还是有迹可循,编程步骤较为固定,总结了一下编程步骤不外乎一下几步:
1)选择合适的高速计数器以及定义符合要求的工作模式,该步采用hdef指令
如图1-1所示。hsc为高速计数编号1-5,mode为工作模式可选0、1、3、4、6、7、9、10。该指令定义了计数输入,方向及复位输入端子,如图1-2所示。
图1-1
图1-2
2)写高速计数器的控制字节。该步应用mov_b将控制字节写入对于地址中,如图1-3所示,控制字节表如图1-4所示。
图1-3
图1-4
3)设定新的预设值mov_dw(可选)
当需要达到某个计数值时触发动作,则需要提前设置一个预设值,高速计数预设值为一个32位双整数,所以用mov_dw指令,如图1-5所示。
图1-5
4)设定高速计数器的当前值mov_dw(可选)
需要计数从一个特定的值开始,如从0开始,则需要将当前值更新成0,当前值也是一个双整数,所以用mov_dw操作,如图1-6所示。
图1-6
高速计数常需要中断配合使用,需编写中断程序。高速计数器当前值等于预设值(cv=pv)时会产生中断;除0,1号模式外其他模式方向改变也会产生中断;有外部复位输入的模式下,当外部复位输入时也会产生中断。中断事件号如表1-7所示。
表1-7
注意:高速计数触发动作一定要cv=pv中断来触发,不能用比较指令。
5)允许中断eni。
6)连接中断程序和事件号atch,如图1-8所示。
图1-8
7)编写中断程序。
8)执行高速计数器hsc,如图1-9所示。
图1-9
不同的高速计数器,程序编写方法类似,只是控制字节及预设值地址等不相同,如表1-10所示。
表1-10
以上就是编写高速计数程序的基本步骤,只要理解了以上八步,高速计数程序再也难不倒你们了。
附上一个小案例供大家学习:利用高速计数器hsc0计旋转编码器的数值,当计到1000个数点亮q0.0,当计到2000时熄灭并清零当前值,如此循环不断,程序如图1-11至1-13所示。
图1-11
图1-12
图1-13

三星遭遇了“当头一棒” 华为有可能成为他们的救星
华为新机nova 5i已在工信部入网搭载了麒麟710处理器机身存储为128GB
苏州移动携手华为开通了全球首个5G BookRRU站点
如何使用RISC操作系统将树莓派变成复古PC
用于电动汽车与大容量存储的有源电池平衡技术
高速计数的几个问题及一些见解
思岚科技智能移动机器人具备完善的定位导航与路径规划能力
EMI/RFI屏蔽的基本原理
简述熔丝的结构、特点以及检查方法
PLC远程上下载物联网网关的概念和重要性
TP1000高性能AC/DC电源控制器概述、特性及应用
苹果iPhone 8系列手机今年将不会继续更新了
为有源天线设计选择正确的放大器
对锂离子安全性和可靠性产生影响的因素有哪些
西门子博途:如何创建新OB
DDR3存储器接口控制器IP核在视频数据处理中的应用
晶闸管的基础知识
国家集成电路产业投资基金,助推各地集成电路产业发展
感应马达是什么
变频器制动单元电路原理及检修技术