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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3924|回復(fù): 4
打印 上一主題 下一主題
收起左側(cè)

發(fā)個(gè)我用了很久的單片機(jī)PWM調(diào)節(jié)程序,0-9共10檔調(diào)節(jié)。

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
是基于51單片機(jī)制作的,此pwm程序注釋的很多,特別適合新手學(xué)習(xí)。本程序使用定時(shí)實(shí)現(xiàn)定時(shí),使用開關(guān)語句實(shí)現(xiàn)檔位調(diào)節(jié)。上電時(shí)檔位0,停止時(shí)檔位0,最大可加至檔位9。 PWM-十檔增減.rar (54.38 KB, 下載次數(shù): 63)
仿真是新弄的Proteus 8 的文件。


單片機(jī)源程序如下:
  1. /*直流輸出的脈寬調(diào)整,0-9共
  2. 10檔9為最大輸出,0-9的變
  3. 化規(guī)律為最小-最大,用兩鍵實(shí)現(xiàn)增和減。
  4. 朱旭東  
  5. 2011年11月4日 使用STC15F104E時(shí),無顯示, 而且只有P3口 */

  6. #include <reg52.h>
  7. sbit KEY2 = P3^2;
  8. sbit KEY1 = P3^3;
  9. sbit KEY3 = P3^4;
  10. sbit PWM =P3^5;
  11. sbit PWM1 = P3^1;
  12. unsigned char CYCLE; //定義周期 如果是10 則周期是10 x 定時(shí)時(shí)間
  13. unsigned char PWM_ON ;//定義高電平時(shí)間
  14. void delay(unsigned int cnt)
  15. {
  16. while(--cnt);
  17. }

  18. main()
  19. {
  20. unsigned char PWM_Num=0;//定義檔位

  21. P0=0x3f;
  22. P3=0xff;//因?yàn)?04E上電時(shí)P3.3為低電平
  23. TMOD |=0x01;//定時(shí)器設(shè)置 1ms in 12M crystal
  24. TH0=(65536-1000)/256;
  25. TL0=(65536-1000)%256;//定時(shí)1mS

  26. IE= 0x82;  //打開中斷
  27. TR0=1;

  28. CYCLE = 20;// 時(shí)間可以調(diào)整 這個(gè)是20步調(diào)整 周期20ms 如果閃爍可減小定時(shí)或周期
  29. while(1)
  30.   {
  31. if(!KEY1)//加
  32.   {
  33.    delay(60000);//104延時(shí), 使用51時(shí)需要60000/12
  34.    if(!KEY1)
  35.      {
  36.       while(!KEY1);//松手檢查
  37.       PWM_Num++;
  38.           if(PWM_Num==10)PWM_Num=9;
  39.        switch(PWM_Num){
  40.        case 0:P0=0x3f;PWM_ON=0;break;//高電平時(shí)長
  41.        case 1:P0=0x06;PWM_ON=2;break;
  42.        case 2:P0=0x5b;PWM_ON=4;break;
  43.        case 3:P0=0x4f;PWM_ON=6;break;
  44.        case 4:P0=0x66;PWM_ON=8;break;
  45.        case 5:P0=0x6d;PWM_ON=10;break;
  46.        case 6:P0=0x7d;PWM_ON=12;break;
  47.        case 7:P0=0x07;PWM_ON=16;break;
  48.        case 8:P0=0x7f;PWM_ON=18;break;
  49.        case 9:P0=0x6f;PWM_ON=20;break;
  50.        default:break;
  51.      }
  52.    }
  53.   }

  54. if(!KEY2)//減
  55.   {
  56.    delay(60000);//104延時(shí), 使用51時(shí)需要60000/12
  57.    if(!KEY2)
  58.      {
  59.       while(!KEY2);//松手檢查
  60.       PWM_Num--;
  61.           if(PWM_Num==-1)PWM_Num=0;
  62.        switch(PWM_Num){
  63.        case 0:P0=0x3f;PWM_ON=0;break;//高電平時(shí)長
  64.        case 1:P0=0x06;PWM_ON=2;break;
  65.        case 2:P0=0x5b;PWM_ON=4;break;
  66.        case 3:P0=0x4f;PWM_ON=6;break;
  67.        case 4:P0=0x66;PWM_ON=8;break;
  68.        case 5:P0=0x6d;PWM_ON=10;break;
  69.        case 6:P0=0x7d;PWM_ON=12;break;
  70.        case 7:P0=0x07;PWM_ON=16;break;
  71.        case 8:P0=0x7f;PWM_ON=18;break;
  72.        case 9:P0=0x6f;PWM_ON=20;break;
  73.        default:break;
  74.      }
  75.    }
  76.   }

  77.   if(!KEY3)  //停止
  78.   {
  79.    delay(60000);//104延時(shí), 使用51時(shí)需要60000/12
  80.    if(!KEY3)
  81.      {
  82.       while(!KEY3);//松手檢查
  83.       PWM_ON=0;
  84.       PWM_Num=0;
  85.       P0=0x3f;
  86.      }
  87.      }

  88. }
  89. }


  90. /********************************/
  91. /*      定時(shí)中斷                */
  92. /********************************/
  93. void tim(void) interrupt 1 using 1
  94. {
  95. unsigned char count; //
  96. TH0=(65536-1000)/256;
  97. TL0=(65536-1000)%256;//定時(shí)1mS

  98. if (count==PWM_ON)//達(dá)到所設(shè)高電平次數(shù)
  99. ……………………

  100. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼



評分

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

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏2 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:196311 發(fā)表于 2017-6-21 21:30 | 只看該作者
剛好想搞pwm,下載參考一下,謝謝
回復(fù)

使用道具 舉報(bào)

板凳
ID:211296 發(fā)表于 2017-6-28 22:37 來自手機(jī) | 只看該作者
jxdianqi 發(fā)表于 2017-6-21 21:30
剛好想搞pwm,下載參考一下,謝謝

謝謝,好東西
回復(fù)

使用道具 舉報(bào)

地板
ID:215255 發(fā)表于 2018-1-8 16:56 | 只看該作者
Proteus 8的原理圖沒有給出啊
回復(fù)

使用道具 舉報(bào)

5#
ID:248394 發(fā)表于 2018-1-13 16:56 | 只看該作者
MAKR 剛好想找相關(guān)的資料
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 黄色精品 | 日本三级全黄三级三级三级口周 | 成人a免费| 国产综合久久 | 欧美日韩在线精品 | 精品视频一区二区三区 | 国产精品久久久久免费 | 91视频国产精品 | 日本视频在线 | 免费在线观看一区二区三区 | 国产一级特黄真人毛片 | 国产欧美在线观看 | www.久久影视 | 久久九九99 | 欧州一区二区 | 亚洲天堂久久新 | 免费成人高清 | 国产日韩欧美一区 | 久久精品亚洲国产奇米99 | 国产9 9在线 | 中文 | 国产日韩欧美综合 | 精品国产精品三级精品av网址 | 日本精品久久久久久久 | 伊大人久久 | 中文字幕亚洲一区 | 97超碰人人草 | 亚洲午夜在线 | 亚洲免费在线观看 | 欧美一区二区三区视频在线观看 | 成人中文字幕av | 中文字幕亚洲欧美日韩在线不卡 | 日韩成人在线观看 | 欧洲一区二区视频 | 欧美日韩黄色一级片 | 国产一区二区a | 婷婷丁香综合网 | 午夜视频免费在线观看 | 日本在线免费看最新的电影 | 国产成人精品一区二区三区视频 | 亚洲看片| 国产欧美一区二区三区在线播放 |