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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

51單片機產(chǎn)生可變占空比的pwm波Proteus仿真與源程序

[復制鏈接]
跳轉到指定樓層
樓主
ID:359769 發(fā)表于 2018-10-4 11:13 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
用51單片機產(chǎn)生可變占空比的pwm波,并在LCD上顯示波形

仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機源程序如下:
  1. #include <reg52.h>
  2. #include <stdio.h>
  3. #include <math.h>
  4. #include "1602.h"
  5. #include "delay.h"
  6. #include "key.h"
  7. #include "pwm.h"

  8. // 報警燈
  9. sbit LED_BLOW = P1^2;
  10. sbit LED_PVER = P1^3;
  11. extern count;
  12. unsigned char DisTempData[16];

  13. int last_state = 0;

  14. #define MAX_DUTY 80
  15. #define MIN_DUTY 20

  16. main()
  17. {
  18.     // LCD 初始化
  19.     lcd_init();

  20.     // 顯示
  21.     print_string("kemao");

  22.     // PWM初始化
  23.     timer0_init();

  24.     // 初始化為50%
  25.     count = 5;
  26.        
  27.         // 初始化LED
  28.           LED_BLOW = 0;
  29.     LED_PVER = 0;
  30.           key1 = 1;
  31.           key2 = 1;

  32.     while(1)
  33.     {

  34.         // 按鍵掃描
  35.         switch(scan())
  36.         {
  37.         case 1:
  38.             count++;
  39.             break;
  40.         case 2:
  41.             count--;
  42.             break;
  43.         default:
  44.             break;
  45.         }

  46.         // 邊界處理
  47.         if (count > 10)
  48.         {
  49.             count = 10;
  50.         }
  51.         if (count < 0)
  52.         {
  53.             count = 0;
  54.         }


  55.         // 占空比閾值判斷
  56.         if (last_state != count)
  57.         {
  58.             // 大于閾值
  59.             if (count*10 > MAX_DUTY)
  60.             {
  61.                 write_com(0x01);     //screen clear
  62.                 print_string("kemao--over");
  63.                                 LED_BLOW = 0;
  64.                                 LED_PVER = 1;
  65.             }
  66.             // 小于閾值
  67.             else if (count*10 < MIN_DUTY)
  68.             {
  69.                 write_com(0x01);     //screen clear
  70.                 print_string("kemao--blow");
  71.                                 LED_BLOW = 1;
  72.                                 LED_PVER = 0;

  73.             }
  74.             // 正常
  75.             else
  76.             {
  77.                 write_com(0x01);     //screen clear
  78.                 print_string(" keamo--ok");
  79.                                 LED_BLOW = 1;
  80.                                 LED_PVER = 1;
  81.             }

  82.             sprintf(DisTempData,"DUTY = %d ",count*10);//打印輸出結果
  83.             write_com(0xc0);    //DDRAM AD set to 00h,
  84.             print_string(DisTempData);

  85.         }

  86.         last_state = count;


  87.     }
  88. }
復制代碼

所有資料51hei提供下載:
protues仿真.rar (38.02 KB, 下載次數(shù): 127)
keil程序.rar (35.39 KB, 下載次數(shù): 93)
電路原理圖.rar (123.25 KB, 下載次數(shù): 49)




評分

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

查看全部評分

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

使用道具 舉報

沙發(fā)
ID:851900 發(fā)表于 2021-3-29 16:45 | 只看該作者
已下載,要是和keil程序一起打包就好了
回復

使用道具 舉報

板凳
ID:428114 發(fā)表于 2021-3-29 19:11 | 只看該作者
效果不好
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 97精品久久| 99re国产| 国产aⅴ| 亚洲视频一区二区 | av网址在线播放 | 浴室洗澡偷拍一区二区 | 亚洲欧美精品久久 | 一级美国黄色片 | 国产日韩久久 | 91免费看片 | 久久精品久久久 | 高清亚洲| 亚洲第一成年免费网站 | 成人av在线播放 | www.干| 国产成人99久久亚洲综合精品 | 免费黄色a级毛片 | 欧美日韩在线免费观看 | 婷婷色网| 搞黄视频免费看 | 99福利| 福利视频网 | 一区二区三区网站 | 99精品欧美一区二区三区 | 亚洲男人的天堂网站 | 成人在线网址 | a网站在线观看 | 日批免费观看 | 成人免费观看男女羞羞视频 | 国产精品国产精品国产专区不片 | 午夜精品一区二区三区在线观看 | 亚洲国产精品自拍 | 国产中文在线 | 美女久久久久久久 | 99视频网 | 视频第一区 | 午夜成人免费视频 | 自拍偷拍精品 | 久久久免费电影 | www.一级片 | 精品久久久久久亚洲综合网 |