leo8086
获得 0 次赞
帮助过2人
这个可以用定时器的捕获模式实现啊。参考下面的资料 style:normal;font-variant:normal;">当捕获/比较寄存器与定时器总线相连:可在满足捕获条件时,将 TAR 的值写入捕获寄存器;可在 TAR 的值与比较器值相等时,设置标志位。通过 TACCTLx 中的 CAP 选择模式,该模块既可用于捕获模式,也 可用于比较模式。用 CMx 选择捕获条件,可以禁止捕获,上升沿捕获,下降沿捕获或者上下沿都捕获。 可用 CCISx 选择捕获的输入信号源,输入信号可以来自外部引脚,也可来自内部信号,还可暂存在一个触 发器中由 SCCI 信号输出。 [1] 捕获模式 当 TACCTLx 中的 CAP=1,该模块工作在捕获模式,这时如果在选定的引脚上发生设定的脉冲触发沿 (上升沿,下降沿或任意跳变) ,则 TAR 中的值将写到 TACCRx 中。 每个捕获/比较寄存器都能被软件用于时间标记,可用于各种目的。例如,测量软件程序所用时间,测 量硬件事件间的时间,测量系统频率。