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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 10551|回復(fù): 9
收起左側(cè)

avr單片機 PWM調(diào)速程序及原理圖

  [復(fù)制鏈接]
ID:115464 發(fā)表于 2016-4-20 16:07 | 顯示全部樓層 |閱讀模式
16單片機 PWM調(diào)速!!!!
0.png

源程序:
  1. #include<iom16v.h>
  2. #include<macros.h>

  3. #define uint unsigned int
  4. #define uchar unsigned char
  5. #define Left OCR1A
  6. #define Right OCR1B
  7. #define ADD 1.15;   //宏定義,加速系數(shù)

  8. uchar i;
  9. uchar flag;      //是否減速標(biāo)志位
  10. uchar TCRT5000_IN;

  11. uint Max_Speed;
  12. uchar Min_Speed;

  13. /*************************************************
  14. 函數(shù)名稱:Init_TCRT5000
  15. 函數(shù)功能:初始化紅外傳感器TCRT5000
  16. 函數(shù)說明:設(shè)置PA口為輸入,監(jiān)測傳感器信號*********/
  17. void Init_TCRT5000()
  18. {
  19. DDRA = 0X00;
  20. PORTA = 0XFF;
  21. }

  22. /*************************************************
  23. 函數(shù)名稱:Max()
  24. 函數(shù)功能:判斷最大速度
  25. 函數(shù)說明:判斷最大速度,將其值放入Max_Speed中*****/
  26. void Max()
  27. {
  28. if(Left >= Right)
  29. {
  30.   Max_Speed = Left * ADD;
  31. }
  32. else
  33. {
  34.   Max_Speed = Right * ADD;
  35. }
  36. if(Max_Speed >= 0xf7)
  37. {
  38.   Max_Speed = 0xf7;
  39. }
  40. Min_Speed = 0x20 ;
  41. }

  42. /*************************************************
  43. 函數(shù)名稱:Scan_TCRT5000
  44. 函數(shù)功能:TCRT5000進行掃描,返回跑到信息
  45. 函數(shù)說明:*********/
  46. void Scan_TCRT5000()
  47. {
  48. TCRT5000_IN = PINA&0x1F;
  49. switch(TCRT5000_IN)
  50. {
  51.    /*  OOOOO  *///全滅
  52.    case 0x00:
  53.        break;
  54.    /*  *****  *///全亮
  55.    case 0x1f:
  56.        OCR1A=0x00;
  57.        OCR1B=0x00;
  58.            break;
  59.    /*  O*OOO  */
  60.    case 0x08:
  61.        OCR1A=Min_Speed;
  62.            OCR1B=Max_Speed;
  63.            break;
  64.    /*  *OOOO  */
  65.    case 0x10:
  66.        OCR1A=Min_Speed;
  67.            OCR1B=Max_Speed;
  68.               break;
  69.    /*  O**OO  */
  70.    case 0x0c:
  71.        OCR1A=Min_Speed;
  72.            OCR1B=Max_Speed;
  73.            break;
  74.    /*  **OOO  */
  75.    case 0x18:
  76.        OCR1A=Min_Speed;
  77.            OCR1B=Max_Speed;
  78.            break;
  79.     /*  ***00*/
  80.     case 0x1c:
  81.        OCR1A=Min_Speed;
  82.            OCR1B=Max_Speed;
  83.            break;
  84.    /*  OOO*O  */
  85.    case 0x02:
  86.            OCR1A=Max_Speed;
  87.            OCR1B=Min_Speed;
  88.            break;
  89.    /*  OOOO*  */
  90.    case 0x01:
  91.        OCR1A=Max_Speed;
  92.            OCR1B=Min_Speed;
  93.            break;
  94.    /*  OO**O  */
  95.    case 0x06:
  96.        OCR1A=Max_Speed;
  97.            OCR1B=Min_Speed;
  98.            break;
  99.    /*  OOO**  */
  100.    case 0x03:
  101.        OCR1A=Max_Speed;
  102.            OCR1B=Min_Speed;
  103.            break;
  104.    /*  OO***  */
  105.    case 0x07:
  106.        OCR1A=Max_Speed;
  107.            OCR1B=Min_Speed;
  108.            break;  
  109.    default:
  110.        break;
  111.   }
  112. }

  113. /*************************************************
  114. 函數(shù)名稱:Init_Speed
  115. 函數(shù)功能:定時器1初始化,產(chǎn)生兩路PWM信號
  116. 函數(shù)說明:通過改變?nèi)肿僉eft,Right控制小車速度**/
  117. void Init_Speed()
  118. {
  119. DDRD |= 0X30;
  120. TCCR1A=0xA1;
  121. TCCR1B=0x0A;
  122. OCR1A=0xa0;
  123. OCR1B=0xa0;
  124. }

  125. /**********************************************
  126. 函數(shù)名稱:Stop
  127. 函數(shù)功能:小車停止
  128. 函數(shù)說明:Right=0,Left=0*********************/
  129. void Stop()
  130. {
  131. OCR1A=0x00;
  132. OCR1B=0x00;
  133. }

  134. /**********************************************
  135. 函數(shù)名稱:Init_Timer0
  136. 函數(shù)功能:初始化定時器0
  137. 函數(shù)說明:初始化定時器0
  138.           設(shè)1024分頻
  139.                   100ms觸發(fā)一次中斷,速度加1**********/
  140. void Init_Timer0()
  141. {
  142. TCCR0 = 0x05;
  143. TCNT0 = 0x00;
  144. TIMSK |= BIT(2);
  145. SREG |= BIT(7);
  146. }

  147. void main()
  148. {
  149. uchar speed;
  150. TCRT5000_IN = PINA&0x1F;
  151. Init_Speed();
  152. Init_TCRT5000();
  153. Init_Timer0();
  154. while(1)
  155. {
  156.   TCRT5000_IN = PINA&0x1F;
  157.   while(TCRT5000_IN != 0x04)
  158.   {
  159.    SREG &= ~BIT(7);   //關(guān)閉中斷
  160.    Scan_TCRT5000();
  161.    TCRT5000_IN = PINA&0x1F;
  162.    flag = 1;
  163.   }

  164.   while(TCRT5000_IN == 0x04)
  165.   {
  166.    if(flag == 1)
  167.    {
  168.            Left = 0xb0;
  169.     Right = 0xb0;
  170.         flag =0;
  171.         SREG |= BIT(7);   //打開中斷
  172.    }
  173.    TCRT5000_IN = PINA&0x1F;
  174.   }
  175. }
  176. }

  177. /*定時器0中斷函數(shù)*/
  178. #pragma interrupt_handler Timer0:10
  179. void Timer0()
  180. {
  181. TCNT0 = 0x00;
  182. i++;
  183. if(i == 100)
  184. {
  185.   i=0;
  186.   Left++;
  187.   if(Left >= 0xfe)
  188.   {
  189.    Left = 0xfe;
  190.   }
  191.   OCR1B++;
  192.   if(OCR1B >= 0xfe)
  193.   {
  194.    OCR1B = 0xfe;
  195.   }
  196.   Max();
  197. }
  198. }
復(fù)制代碼


PWM調(diào)速.zip

294.58 KB, 下載次數(shù): 98, 下載積分: 黑幣 -5

評分

參與人數(shù) 2黑幣 +55 收起 理由
楊哲1234 + 5 共享資料的黑幣獎勵!
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復(fù)

使用道具 舉報

ID:76408 發(fā)表于 2018-1-31 16:42 | 顯示全部樓層
都是好東西,謝謝分享。
回復(fù)

使用道具 舉報

ID:291837 發(fā)表于 2018-3-20 10:03 | 顯示全部樓層
這個論壇太貼心了!謝謝分享!
回復(fù)

使用道具 舉報

ID:76408 發(fā)表于 2018-4-12 14:17 | 顯示全部樓層
好資料下載積分不夠,等有了再下載。
回復(fù)

使用道具 舉報

ID:25103 發(fā)表于 2018-8-9 23:09 | 顯示全部樓層

都是好東西,謝謝分享。
回復(fù)

使用道具 舉報

ID:6428 發(fā)表于 2018-11-8 19:33 來自手機 | 顯示全部樓層
好東西,謝謝分享
回復(fù)

使用道具 舉報

ID:25103 發(fā)表于 2019-2-23 18:23 | 顯示全部樓層
都是好東西,謝謝分享
回復(fù)

使用道具 舉報

ID:820812 發(fā)表于 2020-11-24 15:39 來自手機 | 顯示全部樓層
都是好東西,謝謝分享
回復(fù)

使用道具 舉報

ID:704812 發(fā)表于 2021-4-5 15:10 | 顯示全部樓層
真是好東西,感謝分享
回復(fù)

使用道具 舉報

ID:703120 發(fā)表于 2022-11-11 07:39 來自手機 | 顯示全部樓層
太好了,就是找這個
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 午夜成人在线视频 | 欧美一区二区三区在线 | 91久久夜色精品国产网站 | 99精品视频免费观看 | 日韩视频专区 | 久久久久久国产精品 | 成人精品鲁一区一区二区 | 亚洲图片一区二区三区 | 羞羞在线观看视频 | 精精国产xxxx视频在线播放7 | 欧美激情精品久久久久久免费 | 国产日韩欧美精品一区二区三区 | 亚洲在线免费观看 | 国产美女自拍视频 | 一级黄色片在线免费观看 | 日韩在线成人 | 浮生影院免费观看中文版 | 91超碰在线| 亚洲色欧美另类 | 国产国产精品久久久久 | 国产h视频 | 成人高清网站 | 日韩精品免费一区二区在线观看 | 国内精品一区二区 | 欧美一区二区三区视频 | 成人免费区一区二区三区 | 黄色毛片在线观看 | 亚洲国产精品久久久久秋霞不卡 | 日韩乱码在线 | 欧美在线a | 特黄色一级毛片 | 国产精品久久久久无码av | 精品国产乱码久久久久久影片 | www.操.com | 国产精品久久精品 | 成人在线观看免费 | 色综合视频在线 | 精品亚洲一区二区三区四区五区 | 成人区精品一区二区婷婷 | 午夜小电影 | 国产高清免费 |