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

立即注冊 登錄
返回首頁

uid:79077的個人空間

日志

51單片機中輸出PWM信號時采用全局變量為何會造成輸出失真

已有 728 次閱讀2015-5-6 15:23 | 單片機

注:我用的是protues仿真,# include<reg51.h>                                           //頭文件
sbit pulse=P1^0;//脈沖輸出口
sbit pulse2=P1^1;
int pwm1;  //此處為要輸入的全局變量,為何設置全局變量pwm1和pwm2然后放到中斷中讓其輸出,產生的頻率會直接把計算式放到中斷不同,而且是錯誤的?
int pwm2; //如果這樣,要想從外部輸入定時器信息怎么辦?這些變量就算直接放到中斷中,也會造成輸出信號紊亂
  int pwm3;  
int pwm4;

void t0sss() interrupt 1        //定時器中斷0為確定輸出頻率
{
          TH0=pwm1;//重新賦值,500就代表高低電平的半周期,TH和TL中的是計數器初值,中斷則是計數器從初值到溢出之后發生的,輸出一個信號,如果要產生脈寬,則設置第二個定時器中斷,輸出相反信號
    TL0=pwm2;

   pulse=~pulse;
   TR1=1;                                         //啟動定時器中斷1,類似于嵌套結構
   
}
void t1sss() interrupt 3        //定時器中斷1,輸出特定脈寬
{

      TH1=pwm3;//重新賦值,
    TL1=pwm4;
   pulse=~pulse;
   TR1=0;                         //

}
main()
{
   TMOD=0x11;//使用模式1
   TH0=pwm1;//重新賦值,這里是
   TL0=pwm2;
   TH1=pwm3;//重新賦值,
   TL1=pwm4;
   ET0=1;
   EA=1;
   TR0=1;
   ET1=1;

while(1);         //
   {
           pwm1=(65536-500)/256;//計劃pwm信號改變值從這里開始,后期擬吧這個變量改變成外界直接輸入
           pwm2=(65536-500)%256;
        pwm3=(65536-100)/256; 
        pwm4=(65536-100)%256 ;

}
}

路過

雞蛋

鮮花

握手

雷人

評論 (0 個評論)

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

Powered by 單片機教程網

返回頂部
主站蜘蛛池模板: 国产精品高潮呻吟久久 | 亚洲精品日日夜夜 | 特一级毛片 | 国产精品美女久久久av超清 | 9久久精品 | 午夜在线电影网 | 国产精品观看 | 日本色高清 | 日本久久久久久 | 九九热在线免费视频 | 天天干夜夜操 | 亚洲久久一区 | 波多野结衣中文视频 | 久久久资源 | 色视频欧美 | 欧美精品第三页 | www.久久久久久久久久久久 | 亚洲精品在线视频 | 天天操天天干天天爽 | 一区二区三区视频在线免费观看 | 日本黄视频在线观看 | 国产精品久久久久久高潮 | 精品日韩一区二区 | 特级特黄特色的免费大片 | 国产一区二区精品在线观看 | 日韩成人在线一区 | 亚洲视频一区在线 | 久久黄色网 | 伊人春色在线观看 | 亚洲国产精品第一区二区 | 天天影视网天天综合色在线播放 | 国产成人精品免高潮在线观看 | 日韩国产精品一区二区三区 | 五月激情综合 | 国产网站在线播放 | 亚洲精品久久久 | 国产成人影院 | www.亚洲| 99国内精品久久久久久久 | 国产超碰人人爽人人做人人爱 | 国产精品久久久久999 |