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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機(jī)PWM輸出按鍵不能控制

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:322939 發(fā)表于 2020-4-13 15:02 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
各位大佬,請教下用一個定時器做PWM輸出,按鍵控制時,如果定時器時間設(shè)5US初值(即200KHZ頻率時),按鍵不能控制PWM停止輸出,幫看看下面的程序這樣設(shè)置有沒問題?謝謝!
  1. #include<51.h>

  2. #define uint unsigned int

  3. #define uchar unsigned char

  4. bit ti_flag=0,Led_new_flag=0,Pwm_off_on=0,time_10f_flag=0,P_IO_flag=0;time_20f_flag=0,NTC_ON_OFF_flag=0,Roie_flag;
  5. volatile uint time_te_flag=0,count=0;Cont=0,j=0,s=0;
  6. volatile uint T_PCA2,I_samp=0,I_vaue=0,Time_200us_flag=200;
  7. volatile uint TIME_200ms_flag=0,TIME_ACC_flag=0; //LED閃所采集時間標(biāo)志
  8. volatile uchar num=0,Tim_1ms_flag=0;
  9. volatile double ZKB;

  10. sbit PM_out=P3^6;
  11. /***********定時器0初始化***************/
  12. void Init(void)
  13. {
  14.         AUXR|=0x80; //定時器時鐘1T模式

  15. TMOD|=0x00; //設(shè)置定時器模式

  16. TL0=0xc4; //設(shè)置定時初值5US
  17.         TH0=0xff; //設(shè)置定時初值
  18. TF0=0; //清除TF0標(biāo)志
  19. ET0=1;
  20.         EA=1;
  21.         TR0=1;
  22. /***************定時器0****************/
  23. void timer0(void) interrupt 1
  24. {
  25. Time_200us_flag--;
  26. if(Time_200us_flag==0) //1ms
  27. {
  28. Time_200us_flag=200;
  29. ti_flag=1;
  30. keyScan();  //按鍵掃描
  31.   j++;
  32.         }
  33. if(Pwm_off_on)
  34. {
  35. num++;
  36. if(num>=2)

  37. num=0;

  38. if(num<ZKB) //產(chǎn)生PWM

  39. PM_out=1;

  40. else
  41. {
  42. PM_out=0;
  43.     }
  44.    }
  45. }
  46. /*************按鍵掃描及處理***************/
  47. void keyScan()
  48. {

  49. static bit key1_lock=0;
  50. static uchar count1=0;

  51.         if(0==key)
  52.         {

  53. if((count1++>=25)&&(key1_lock==0)&&(PINT==1))//延時濾波25ms
  54.         {
  55.         key1_lock=1;
  56.         Pwm_off_on=~Pwm_off_on;

  57.         if(Pwm_off_on==0)
  58.         PM_out=0;

  59.    }
  60.         }
  61. else
  62. {
  63.         key1_lock=0;//按鍵自鎖標(biāo)志清0

  64. count1=0; //消抖計數(shù)清0
  65. }
  66. if(PINT==0)
  67. {
  68.         Power=0;

  69.         }
  70.         }
  71. /***************主程序****************/
  72. void main(void)
  73. {

  74. Init();
  75. while(1);
  76. }
復(fù)制代碼


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

使用道具 舉報

沙發(fā)
ID:275826 發(fā)表于 2020-4-13 15:54 | 只看該作者
一直在中斷,檢測不到按鍵操作
回復(fù)

使用道具 舉報

板凳
ID:322939 發(fā)表于 2020-4-13 16:41 | 只看該作者
tyrl800 發(fā)表于 2020-4-13 15:54
一直在中斷,檢測不到按鍵操作

除了降低頻率(時間設(shè)大),有沒其它辦法?
回復(fù)

使用道具 舉報

地板
ID:322939 發(fā)表于 2020-4-13 16:43 | 只看該作者
tyrl800 發(fā)表于 2020-4-13 15:54
一直在中斷,檢測不到按鍵操作

因為如果把頻率調(diào)到低于30KHZ,在控溫時輸出到發(fā)熱芯那里會吱吱響
回復(fù)

使用道具 舉報

5#
ID:213173 發(fā)表于 2020-4-13 16:54 | 只看該作者
中斷周期5us,所有的程序都在中斷中運(yùn)行,時間夠用嗎?
回復(fù)

使用道具 舉報

6#
ID:322939 發(fā)表于 2020-4-13 16:58 | 只看該作者
wulin 發(fā)表于 2020-4-13 16:54
中斷周期5us,所有的程序都在中斷中運(yùn)行,時間夠用嗎?

那么如何提高PWM頻率又不影響其它程序運(yùn)行?
回復(fù)

使用道具 舉報

7#
ID:322939 發(fā)表于 2020-4-13 17:06 | 只看該作者
wulin 發(fā)表于 2020-4-13 16:54
中斷周期5us,所有的程序都在中斷中運(yùn)行,時間夠用嗎?

原來定時器的時間設(shè)100US中斷沒問題,但是在PID控溫時負(fù)載會吱吱響,必須要把頻率提高才能解決。
回復(fù)

使用道具 舉報

8#
ID:213173 發(fā)表于 2020-4-13 17:53 | 只看該作者
LAW1100 發(fā)表于 2020-4-13 17:06
原來定時器的時間設(shè)100US中斷沒問題,但是在PID控溫時負(fù)載會吱吱響,必須要把頻率提高才能解決。

1.優(yōu)化程序,很簡單的PWM程序?qū)懙挠悬c(diǎn)啰嗦。
2.提高M(jìn)CU時鐘頻率,加快運(yùn)行速度。
3.中斷只留必須的任務(wù),其它非即時響應(yīng)的任務(wù)放在主函數(shù)運(yùn)行。比如按鍵掃描。
4.中斷周期按預(yù)估中斷任務(wù)所需時間不小于200%,留足夠時間給主程序使用。
回復(fù)

使用道具 舉報

9#
ID:322939 發(fā)表于 2020-4-14 08:31 | 只看該作者
wulin 發(fā)表于 2020-4-13 17:53
1.優(yōu)化程序,很簡單的PWM程序?qū)懙挠悬c(diǎn)啰嗦。
2.提高M(jìn)CU時鐘頻率,加快運(yùn)行速度。
3.中斷只留必須的任務(wù) ...

多謝,如果不用中斷使用時鐘分頻是否可行?
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 最新国产精品视频 | 成人免费观看视频 | 欧美日一区二区 | www.亚洲国产精品 | 欧美在线观看一区二区 | 婷婷久久网 | 国产精品国产成人国产三级 | 亚洲天堂网站 | 91精品国产乱码久久久久久久久 | 人人做人人澡人人爽欧美 | 99在线免费观看 | av在线一区二区三区 | 成人在线视频网址 | 日本人麻豆 | 久久久久久99 | 欧美综合一区二区 | 国产一区久久 | 国产精品亚洲一区二区三区在线 | 日韩电影中文字幕 | 欧美亚洲视频在线观看 | av一级久久 | 国产伦一区二区三区视频 | 中文字幕一区二区三区精彩视频 | yiren22 亚洲综合 | 国产成人99久久亚洲综合精品 | 特黄特色大片免费视频观看 | 国产免费播放视频 | 中文字幕一级 | 日韩一区二区视频 | www.com久久久| 亚洲欧美日韩精品久久亚洲区 | 一区二区三区免费 | 成人网av | 精品九九| 成人免费小视频 | 福利二区 | 色资源在线 | 日韩欧美国产一区二区 | 成人精品免费视频 | 中文字幕一区二区三区在线乱码 | 欧美一a一片一级一片 |