108feeac249428b163ab766a28da39deeafd597c.svn-base 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. /******************************************************************************/
  2. /* -- 居加居-- */
  3. /*
  4. // 文件名:
  5. // 说明:
  6. // 编写人员:kinve
  7. // 编写日期:2018-8-21
  8. // 程序维护:
  9. // 维护记录:
  10. //
  11. //
  12. */
  13. // 免责声明:
  14. // (c) Anxinke Corporation. All rights reserved.
  15. /******************************************************************************/
  16. #include "Timer.h"
  17. uint16 Timer0_THTL;
  18. //keil设置为16mhz=16000kHz
  19. //12分频 (1~65535)/(16000khz/12) 0.000 75 ~ 49.1 ms
  20. void Timer0_init ( uint8 ms )
  21. {
  22. if ( ms < 1 || ms > 49 )
  23. {
  24. return;
  25. }
  26. Timer0_THTL = 65536 - ms * 16000 / 12;
  27. TIMER0_MODE1_ENABLE;
  28. CKCON &= ~ ( 1 << 3 ); //T0M: 0=12分频,1=不分频
  29. TH0 = HIBYTE ( Timer0_THTL ); //initial counter values
  30. TL0 = LOBYTE ( Timer0_THTL );
  31. set_ET0; //enable Timer0 interrupt
  32. set_EA; //enable interrupts
  33. set_TR0; //Timer0 run
  34. }