久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5105|回復: 0
收起左側

ATmega128 定時器測試

[復制鏈接]
ID:80436 發表于 2015-5-21 23:45 | 顯示全部樓層 |閱讀模式
  1. 功能說明/*全部定時1S*/

  2. #define F_CPU 16000000UL

  3. #include "DS12864.h"

  4. #include <avr/io.h>

  5. #include <avr/interrupt.h>

  6. volatile unsigned int count0=0,flag0=0;

  7. volatile unsigned int count1=0,flag1=0;

  8. volatile unsigned int count2=0,flag2=0;

  9. volatile unsigned int count3=0,flag3=0;

  10. /**************************************************************

  11. 隸屬模塊:定時器測試模塊

  12. 函數名稱:Timer0_Init()

  13. 函數功能: 初始化

  14. 入口參數: 無

  15. 返回參數:無

  16. ***************************************************************/

  17. void Timer0_Init()

  18. {

  19. TCNT0 = 0x06;

  20. TCCR0 = 0x03;//64分頻

  21. TIMSK |= (1<<TOIE0);//使能定時器0中斷

  22. }

  23. /**************************************************************

  24. 隸屬模塊:定時器測試模塊

  25. 函數名稱:Timer1_Init()

  26. 函數功能: 初始化

  27. 入口參數: 無

  28. 返回參數:無

  29. ***************************************************************/

  30. void Timer1_Init()

  31. {

  32. TCNT1H = 0x3C;

  33. TCNT1L = 0xB0;

  34. TCCR1A = 0x00;

  35. TCCR1B = 0x03;//64分頻

  36. TIMSK |= (1<<TOIE1);//使能定時器1中斷

  37. }

  38. /**************************************************************

  39. 隸屬模塊:定時器測試模塊

  40. 函數名稱:Timer2_Init()

  41. 函數功能: 初始化

  42. 入口參數: 無

  43. 返回參數:無

  44. ***************************************************************/

  45. void Timer2_Init()

  46. {

  47. TCNT2 = 0x06;

  48. TCCR2 = 0x03;//64分頻

  49. TIMSK |= (1<<TOIE2);//使能定時器2中斷

  50. }

  51. /**************************************************************

  52. 隸屬模塊:定時器測試模塊

  53. 函數名稱:Timer3_Init()

  54. 函數功能: 初始化

  55. 入口參數: 無

  56. 返回參數:無

  57. ***************************************************************/

  58. void Timer3_Init()

  59. {

  60. TCNT3H = 0x3C;

  61. TCNT3L = 0xB0;

  62. TCCR3A = 0x00;

  63. TCCR3B = 0x03;//64分頻

  64. ETIMSK |= (1<<TOIE3);//使能定時器3中斷

  65. }

  66. /************************測試函數**************************/

  67. int main(void)

  68. {

  69. DDRD = 0xF0;

  70. DDRE = 0xF0;

  71. LCD12864_Init();

  72. SREG &=~(1<<7);

  73. Timer0_Init();

  74. Timer1_Init();

  75. Timer2_Init();

  76. Timer3_Init();

  77. SREG |= (1<<7);

  78. LCD12864_Dis_Str(0,0,"定時器0:");

  79. LCD12864_Dis_Str(0,1,"定時器1:");

  80. LCD12864_Dis_Str(0,2,"定時器2:");

  81. LCD12864_Dis_Str(0,3,"定時器3:");

  82.     while(1)

  83.     {

  84.         //TODO:: Please write your application code

  85.   if(count0>1999){

  86.   count0=0;

  87.   flag0=(flag0+1)%10;

  88.   LCD12864_Dis_Ctr(5,0,flag0+0x30);

  89.   }

  90.   if(count1>4)

  91.   {

  92.    count1=0;  

  93.    flag1=(flag1+1)%10;

  94.    LCD12864_Dis_Ctr(5,1,flag1+0x30);

  95.   }

  96.   if(count2>999)

  97.   {

  98.    count2=0;  

  99.    flag2=(flag2+1)%10;

  100.    LCD12864_Dis_Ctr(5,2,flag2+0x30);

  101.   }

  102.   if(count3>4)

  103.   {

  104.    count3=0;  

  105.    flag3=(flag3+1)%10;

  106.    LCD12864_Dis_Ctr(5,3,flag3+0x30);

  107.   }

  108.     }

  109. }

  110. /**************************************************************

  111. 隸屬模塊:定時器測試模塊

  112. 函數名稱:SIGNAL(TIMER0_OVF_vect)

  113. 函數功能: 定時器0中斷函數

  114. 入口參數: 無

  115. 返回參數:無

  116. ***************************************************************/

  117. SIGNAL(TIMER0_OVF_vect)

  118. {

  119. TCNT0 = 0x06;

  120. count0++;

  121.    

  122. }

  123. /**************************************************************

  124. 隸屬模塊:定時器測試模塊

  125. 函數名稱:SIGNAL(TIMER1_OVF_vect)

  126. 函數功能: 定時器1中斷函數

  127. 入口參數: 無

  128. 返回參數:無

  129. ***************************************************************/

  130. SIGNAL (TIMER1_OVF_vect)

  131. {

  132. TCNT1H = 0x3C;

  133. TCNT1L = 0xB0;

  134. count1++;

  135. }

  136. /**************************************************************

  137. 隸屬模塊:定時器測試模塊

  138. 函數名稱:SIGNAL(TIMER2_OVF_vect)

  139. 函數功能: 定時器2中斷函數

  140. 入口參數: 無

  141. 返回參數:無

  142. ***************************************************************/

  143. SIGNAL (TIMER2_OVF_vect)

  144. {

  145. count2++;

  146. }

  147. /**************************************************************

  148. 隸屬模塊:定時器測試模塊

  149. 函數名稱:SIGNAL(TIMER3_OVF_vect)

  150. 函數功能: 定時器3中斷函數

  151. 入口參數: 無

  152. 返回參數:無

  153. ***************************************************************/

  154. SIGNAL (TIMER3_OVF_vect)

  155. {

  156. TCNT3H = 0x3C;

  157. TCNT3L = 0xB0;

  158. count3++;

  159. }
復制代碼


回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 黄色在线免费观看 | 免费精品视频在线观看 | 亚洲精品乱 | 日韩一区二区三区在线 | 国产精品一区二区av | 久久精品性视频 | 日本三级播放 | 久久com | 国产一区二区三区在线视频 | 羞羞的视频在线观看 | 免费a网 | 日韩av在线中文字幕 | av永久免费 | 日本a视频| 国精品一区二区 | 成人午夜在线 | 女女爱爱视频 | 日韩在线观看 | 精品av天堂毛片久久久借种 | 亚洲自拍一区在线观看 | 精品国产视频 | 亚洲国产日韩欧美 | 久久久一区二区三区 | 综合久久av | 伊人免费在线 | 欧美v片| 青青草av在线播放 | 国产一区精品在线 | 欧美成人一区二区 | 午夜a v电影 | 精品国产乱码一区二区三区 | 欧产日产国产精品99 | 狠狠爱一区二区三区 | 亚洲一区不卡在线 | 超碰综合 | 午夜影院黄 | 97国产在线视频 | 久久中文字幕视频 | 日韩在线视频播放 | 天天爽天天操 | av日韩在线播放 |