#include <io8515.h> /*====================================== 微秒级精确延时函数,晶振8M: Delay = 0.125 *((tt*4-1)+9)微秒 其中9包括了调用方的 r16 赋值 1t rcall 3t nop 1t ret 4t brne指令在当判断条件不成立时是单周期 最后一次判断只有1个周期,补一个nop 简化计算 = 0.5tt + 1 (us) ======================================*/ void shortdelay(unsigned char tt) { asm("_L2: subi R16,1"); asm(" nop") asm(" brne _L2"); asm(" nop"); asm(" ret"); } void main() { shortdelay( 18 ); while(1)
{ shortdelay( 48 ); } }
// 1t // 1t // 2t/1t // 1t // 4t //延时10us // 25us
本文关键字:暂无联系方式AVR单片机,单片机-工控设备 - AVR单片机