2025-11-08 06:25:04
TMOD指令就是告诉单片机哪个定时器用哪种工作模式对吧?简单说就是设置定时器的工作方式,比如脉冲宽度怎么算。比如定时器0用模式1的话,脉冲时间就是定时器初值乘时钟周期。这样就能控制输出高低电平的时间长短了。
为什么是这个答案呢?因为TMOD寄存器直接控制定时器的模式选择和触发方式。比如当TMOD=0x01时,定时器0工作在模式1(16位自动重装),脉冲宽度等于TACCR0的值乘以时钟周期。假设时钟周期是1MHz的话,那脉冲宽度就是1000乘1毫秒等于1毫秒对吧?再比如TMOD=0x05时,定时器1用模式2(8位自动重装),脉冲宽度就是TAHTR的值乘时钟周期再除以256。所以设置不同模式才能实现不同频率的脉冲输出。不过实际应用中还要看单片机的时钟频率和配置参数,比如有的芯片时钟是8MHz的话,结果就会翻倍。
本题链接: