78K0系列微控制器TM0n特殊操作与LVS0n/LVR0n设置

需积分: 37 76 下载量 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等),在大规模生产中应谨慎使用,因为使用片上调试功能可能会限制闪存的重写次数,从而影响可靠性。