wulin 发表于 2022-2-12 06:04 感谢,我在STC8开发板上使用22.1184晶振就可以得到1us的方波了。 |
要理解基本概念,不能用中断实现,用中断1us没有人这样做的,找有时钟分频输出功能的单片机 |
你是89c51的话,用t2定时器,并且从ex引脚输出脉冲,可以达到理论上的最高速,如果配上倍频,即6t模式的话,勉强可输出1us的方波,其他方法都不可能实现。 |
你是89c51的话,用定时器2,并且从ex |
传统51单片机在12M晶振条件下执行pause = ~pause;需要2us时间。所以不能用定时器中断,用最精简代码编程也只能输出脉宽3us,占空50%,频率166.667KHz的方波。理论上晶振频率达36MHz才能满足基本条件。
|
请将 pause = ~pause; 改成 pause = TF0 ? 0 :!pause; 确定有无输出。 |
中断响应需要耗时3-6微秒。 |