欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5870|回復: 6
打印 上一主題 下一主題
收起左側

單片機占空比可調模擬 proteus仿真及程序

[復制鏈接]
跳轉到指定樓層
樓主
51單片機占空比可調模擬的仿真原理圖:

單片機源程序:
  1. /********************************************************************
  2.                             天馬電子
  3. *********************************************************************/
  4. #include<reg52.h>  

  5. #define uchar unsigned char           //宏定義無符號字符型
  6. #define uint  unsigned  int           //宏定義無符號整型

  7. uchar b;                //中斷值
  8. uchar N=0;                //占空比計數值
  9. uchar X=50;                //占空比初始值百分比

  10. uchar z=0;

  11. uchar key_up;
  12. uchar key_down;

  13. /************************************************************************
  14.                                                         按鍵初始化
  15. *************************************************************************/
  16. sbit P2_0=P2^0;//占空比加
  17. sbit P2_1=P2^1;//占空比減

  18. sbit PWM=P3^7;//控制PWM的占空比輸出

  19. /************************************************************************
  20.                                                         調速按鍵掃描函數
  21. *************************************************************************/

  22. void get_key(void)//按鍵掃描函數

  23. {
  24. while(P2_0==0)//按鍵加計數標志
  25. {key_up=1;
  26. }
  27. while(P2_1==0)//按鍵減計數標志
  28. {key_down=1;
  29. }
  30. }

  31. /************************************************************************
  32.                                                         定時器中斷執行函數
  33. *************************************************************************/
  34. void timer0( ) interrupt 1 //定時器0工作方式1
  35. {

  36. TH0=(65536-1)/256;          //重裝計數初值
  37. TL0=(65536-1)%256;          //重裝計數初值
  38. b++;
  39. get_key();
  40. if (key_up==1)
  41.        {
  42.            if(X!=100)//判斷是否計數到100
  43.               {
  44.                X++;//加一
  45.                key_up=0;
  46.                            }
  47.         }
  48. if (key_down==1)
  49.        {
  50.             if(X!=0)//判斷是否計數到0
  51.               {
  52.                    X--;//減一
  53.                key_down=0;
  54.                }
  55.         }
  56. }
  57. /************************************************************************
  58.                                                         程序主函數
  59. *************************************************************************/
  60. void main()
  61. {
  62. TMOD=0X01;                          //定時器中斷0
  63. TH0=(65536-2)/256;          //定時時間高八位初值
  64. TL0=(65536-2)%256;          //定時時間低八位初值
  65. EA=1;                                  //開CPU中斷
  66. ET0=1;                                  //開T/C0中斷
  67. TR0=1;
  68. /****************************PWM處理部分*********************************************/
  69.    while(1)
  70.     {
  71.           PWM=1;
  72.       while(1)
  73.       {
  74.         b=0;
  75.         while(!b);
  76.            if (N==X)
  77.                PWM=0;
  78.             if(N==100)break;
  79.                N++;
  80. /*************************************************************************************/                       

  81.               }
  82.              N=0;
  83.      }

  84. }
  85. /******************************程序結束************************************************/
復制代碼


占空比可調模擬仿真程序.rar (57.81 KB, 下載次數: 60)


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

使用道具 舉報

沙發
ID:154932 發表于 2016-12-28 21:23 | 只看該作者
學習中
回復

使用道具 舉報

板凳
ID:214666 發表于 2017-6-26 10:48 | 只看該作者
不能下載 我和傷心
回復

使用道具 舉報

地板
ID:215047 發表于 2017-6-27 10:54 | 只看該作者
有用,然而我下載不了
回復

使用道具 舉報

5#
ID:98356 發表于 2017-11-27 14:41 | 只看該作者
謝謝分享            
回復

使用道具 舉報

6#
ID:578183 發表于 2019-7-5 23:04 | 只看該作者
感謝分享,學習中
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表