[发明专利]一种用ARM单片机产生快速指数型脉冲输出方法有效
申请号: | 201510835332.6 | 申请日: | 2015-11-26 |
公开(公告)号: | CN105375904B | 公开(公告)日: | 2019-01-01 |
发明(设计)人: | 王伟程;罗永明 | 申请(专利权)人: | 深圳市思榕科技有限公司 |
主分类号: | H03K4/00 | 分类号: | H03K4/00;H02P8/14 |
代理公司: | 深圳力拓知识产权代理有限公司 44313 | 代理人: | 龚健 |
地址: | 518000 广东省深圳市龙华新区龙*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 arm 单片机 产生 快速 指数 脉冲 输出 方法 | ||
本发明公开了一种用ARM单片机产生快速指数型脉冲输出方法,包括以下步骤:步骤1定时器设置;步骤2输入所要输出脉冲序列的必要参数;步骤3计算指数曲线并将每个点的值保存于数组中;步骤4在定时器的中断更新周期中执行下列步骤,实现将已计算完成的曲线数组输出。本发明提供了一种用ARM单片机产生快速指数型脉冲输出的方法;实现了指数曲线的计算,并保存在数组中;实现了用定时器对曲线的快速输出;实现了指数曲线的加减速的对称输出。
技术领域
本发明涉及AMR单片机技术设备领域,具体是一种用ARM单片机产生快速指数型脉冲输出方法。
背景技术
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。
在单片机+步进伺服马达驱动系统中,要求运行时马达有加减速的功能,以减少机械装置的冲击,现在多是采用简单的定时器+IO端口操作,模拟输出线性脉冲和采用运动控制器的驱动方案来实现,采用运动控制器的驱动方案会导致成本过高,不能用在要求低成本的场合,采用单片机模拟线性肪冲输出,精度差,频率不稳定,不能平滑过渡,运动机构冲击大。
发明内容
本发明的目的在于提供一种用ARM单片机产生快速指数型脉冲输出方法,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:
一种用ARM单片机产生快速指数型脉冲输出方法,包括以下步骤:
步骤1定时器设置:
1.1初始化定时器硬件,使其工作在脉冲调宽模式,占空比设为50%;
1.2开通定时器周期更新中断功能,将脉宽比较器设为最大值;
1.3使定时器开始计时工作,并允许ARM单片机可以响应定时器的周期中断信号;
1.4使定时器处于系统周期中断状态,此状态没有脉冲输出;
步骤2输入所要输出脉冲序列的必要参数;
步骤3计算指数曲线并将每个点的值保存于数组中;
循环执行以下步骤,循环次数等于总脉冲数:
3.1计算最终频率与步骤3.3的计算结果的差值,首次计算时取启始频率值;
3.2将步骤3.1的计算结果加步骤3.5的计算结果再除以加速时间,首次计算时取0值;
3.3将步骤3.2的计算结果取整;
3.4将步骤3.3的计算结果保存入数组中备用;
3.5将步骤3.2的计算结果取余数;
3.6若步骤3.2的计算结果与最终的频率相等则退出循环,完成计算;
步骤4在定时器的中断更新周期中执行下列步骤,实现将已计算完成的曲线数组输出:
4.1清除相关的中断标志位;
4.2判断曲线计算已完成,在本次脉冲序列的首次输出时,执行步骤4.3,否则跳过步骤4.3,执行步骤4.4;
4.3将定时器的更新中断周期设置为启始频率,定时器的比较器值设置为更新周期的一半;
4.4对输出脉冲进行计数;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市思榕科技有限公司,未经深圳市思榕科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510835332.6/2.html,转载请声明来源钻瓜专利网。