78K0系列微控制器TM0n特殊操作与LVS0n/LVR0n设置
需积分: 37 88 浏览量
更新于2024-08-10
收藏 18.89MB PDF 举报
"TM0n的特殊用途涉及到在NEC 78K0/Kx2系列微控制器中的定时器操作,特别是关于TM0n、CR01n、INTTM01n、LVS0n和LVR0n的使用。本文档主要针对78K0/KB2、78K0/KC2、78K0/KD2、78K0/KE2和78K0/KF2系列芯片。"
在78K0/Kx2系列微控制器中,TM0n是一个定时器,而CR01n则用作比较寄存器。正常情况下,在TM0n操作(TMC0n3和TMC0n2不等于00)时,不允许重写CR01n的值,因为这可能导致异常操作。然而,如果CR01n被用于PPG(脉冲宽度调制)输出且其占空比已被修改,可以按照特定步骤安全地修改CR01n的值:
1. 禁止INTTM01n中断(设置TMMK01n为1)。
2. 当TM0n的值等于CR01n的值(TOC0n4为0)时,禁止定时器输出反转。
3. 修改CR01n的值。
4. 等待一个TM0n计数时钟周期。
5. 允许TM0n和CR01n相等时的定时器输出反转(设置TOC0n4为1)。
6. 清除INTTM01n的中断标志(设置TMIF01n为0)。
7. 重新允许INTTM01n中断(设置TMMK01n为0)。
LVS0n和LVR0n是用来设置TO0n引脚输出的默认值。它们可以在不需要定时器操作时(TMC0n3和TMC0n2为00)控制定时器输出的反转。根据LVS0n和LVR0n的组合,可以实现不同状态的输出:
- LVS0n和LVR0n均为0:输出保持不变(低电平)。
- LVS0n为0,LVR0n为1:强制输出低电平。
- LVS0n为1,LVR0n为0:强制输出高电平。
- LVS0n和LVR0n均为1:禁止设置输出。
这些特性使得在不同的应用场合下,可以根据需要灵活调整定时器的输出状态。
该文档适用于78K0系列的不同型号,包括但不限于78F0500A到78F0547DA等。需要注意的是,对于带有片上调试功能的型号(如78F0503DA、78F0513DA等),在大规模生产中应谨慎使用,因为使用片上调试功能可能会限制闪存的重写次数,从而影响可靠性。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2021-03-26 上传
130 浏览量
2021-04-01 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
猫腻MX
- 粉丝: 20
- 资源: 2万+
最新资源
- Angular程序高效加载与展示海量Excel数据技巧
- Argos客户端开发流程及Vue配置指南
- 基于源码的PHP Webshell审查工具介绍
- Mina任务部署Rpush教程与实践指南
- 密歇根大学主题新标签页壁纸与多功能扩展
- Golang编程入门:基础代码学习教程
- Aplysia吸引子分析MATLAB代码套件解读
- 程序性竞争问题解决实践指南
- lyra: Rust语言实现的特征提取POC功能
- Chrome扩展:NBA全明星新标签壁纸
- 探索通用Lisp用户空间文件系统clufs_0.7
- dheap: Haxe实现的高效D-ary堆算法
- 利用BladeRF实现简易VNA频率响应分析工具
- 深度解析Amazon SQS在C#中的应用实践
- 正义联盟计划管理系统:udemy-heroes-demo-09
- JavaScript语法jsonpointer替代实现介绍