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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

幫幫我看看這個程序用60S2可以下載進去嗎?

[復制鏈接]
跳轉到指定樓層
樓主
ID:64215 發表于 2014-8-22 14:27 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#include <REG52.H>
#include <intrins.h>  
#define unchar unsigned char
#define unint  unsigned int   
unsigned char PWMDTY0=0,PWMDTY1=0,PWM_Freq=0;   
void DelayMs(unchar ms);  
void PWM_clock(unchar clock);  
void PWM_start(unchar module,unchar mode);   
////////////////////// 延時子程序/////////////////////////////  
void DelayMs(unchar ms) //在11.0592M晶振下,stc10f系列(單周期指令)的ms級延時
{unint i;  
while(ms--)
   {   
    for(i = 0; i < 850; i++);   
   }
}
////////////////////主函數入口////////////////////////////   
           sfr CCON     = 0xD8; //PCA控制寄存器
           sfr CMOD     = 0xD9; //PCA模式寄存器  
           sfr CCAPM0   = 0xDA; //PCA模塊0模式寄存器 //模塊0對應P1.3/CEX0/PCA0/PWM0(STC12C5A60S2系列)     
           sfr CCAPM1   = 0xDB; //PCA模塊1模式寄存器 //模塊1對應P1.4/CEX1/PCA1/PWM1(STC12C5A60S2系列)
           sfr CL       = 0xE9; //PCA 定時寄存器 低位
           sfr CH       = 0xF9; //PCA 定時寄存器 高位  
           sfr CCAP0L   = 0xEA; //PCA模塊0的 捕獲寄存器 低位
           sfr CCAP0H   = 0xFA; //PCA模塊0的 捕獲寄存器 高位
           sfr CCAP1L   = 0xEB; //PCA模塊1的 捕獲寄存器 低位
           sfr CCAP1H   = 0xFB; //PCA模塊1的 捕獲寄存器 高位
           sfr PCA_PWM0 = 0xF2; //PCA PWM 模式輔助寄存器0
           sfr PCA_PWM1 = 0xF3; //PCA PWM 模式輔助寄存器1
           sbit CF   = 0xDF;     //PCA計數溢出標志位
           sbit CR   = 0xDE;     //PCA計數器 運行控制位
       sbit CCF1 = 0xD9;     //PCA模塊1中斷標志
       sbit CCF0 = 0xD8;     //PCA模塊0中斷標志   
           //*CCAPOH = CCAPOL = 0XC0; //模塊0輸出 占空因數為25%
           //*CCAPOH = CCAPOL = 0X80; //模塊0輸出 占空因數為50%
           //*CCAPOH = CCAPOL = 0X40; //模塊0輸出 占空因數為75%
          
           void PWM_clock(unchar clock);
           void PWM_start(unchar module,unchar mode);   
                          
void PWM_clock(unchar clock)
                           {   
                            CMOD |= (clock<<1);   
                            CL = 0x00;   
                            CH = 0x00;
                           }
void PWM_start(unchar module,unchar mode)   //(模塊選擇,選定模塊的工作方式)
                                {    CCAP0L = PWMDTY0;   
                                     CCAP0H = PWMDTY0;   //模塊0初始輸出 占空因數為50% (占空比=255-)   
                                     CCAP1L = PWMDTY1;   
                                     CCAP1H = PWMDTY1;   //模塊1初始輸出 占空因數為25%   
                                  if(module==0)    //只用模塊0   
                                  {      
                                  switch(mode)     
                                  {         case 0: CCAPM0 = 0X42;break; //模塊0設置為8位PWM輸出,無中斷      
                                            case 1: CCAPM0 = 0X53;break; //模塊0設置為8位PWM輸出,下降沿產生中斷      
                                            case 2: CCAPM0 = 0X63;break; //模塊0設置為8位PWM輸出,上升沿產生中斷      
                                            case 3: CCAPM0 = 0X73;break; //模塊0設置為8位PWM輸出,跳變沿產生中斷      
                                        default: break;     
                                   }   
                                   }   
                                    else if(module==1)  //只用模塊1   
                                   {      
                                   switch(mode)   
                                    {         case 0: CCAPM1 = 0X42;break; //模塊1設置為8位PWM輸出,無中斷        
                                                  case 1: CCAPM1 = 0X53;break; //模塊1設置為8位PWM輸出,下降沿產生中斷      
                                                  case 2: CCAPM1 = 0X63;break; //模塊1設置為8位PWM輸出,上升沿產生中斷      
                                                     case 3: CCAPM1 = 0X73;break; //模塊1設置為8位PWM輸出,跳變沿產生中斷      
                                                  default: break;     
                                        }   
                                        }   
                                         else if(module==2)  //   
                                         {
                                         switch(mode)   
                                          {         case 0: CCAPM0 = CCAPM1 = 0X42;break; //模塊0和1設置為8位PWM輸出,無中斷        
                                                    case 1: CCAPM0 = CCAPM1 = 0X53;break; //模塊0和1設置為8位PWM輸出,下降沿產生中斷        
                                                    case 2: CCAPM0 = CCAPM1 = 0X63;break; //模塊0和1設置為8位PWM輸出,上升沿產生中斷        
                                                    case 3: CCAPM0 = CCAPM1 = 0X73;break; //模塊0和1設置為8位PWM輸出,跳變沿產生中斷        
                                                    default: break;   
                                            }
                                            }   
                                                 CR=1; //PCA計數器開始計數
                                          }   
void PCA_Intrrpt(void) interrupt 7
                                          {   
                                          if(CCF0) CCF0=0;   
                                          if(CCF1) CCF1=0;   //軟件清零   
                                          if(CF)   CF=0;    //軟件清零  
                                                   }   
void main(void)
                {     
                PWMDTY0=127;   
                PWMDTY1=192;   
            PWM_Freq=255;   
            TMOD|=0x02; /* timer 0 mode 2: 8-Bit reload */   
            TH0=PWM_Freq;   
                TR0=1;            
            PWM_clock(2);      // PCA/PWM時鐘源為 定時器0的溢出   
                PWM_start(2,0);           // 模塊0,設置為PWM輸出,無中斷,初始占空因素為25%      
while(1)   
{      
                DelayMs(250);  
}
}

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

使用道具 舉報

沙發
ID:26188 發表于 2014-8-23 20:17 來自手機 | 只看該作者
可以用
回復

使用道具 舉報

板凳
ID:69905 發表于 2014-12-3 20:07 | 只看該作者
大神 能不能幫忙講一下這個程序的每段是干什么用的呀
回復

使用道具 舉報

地板
ID:183328 發表于 2017-3-25 15:56 | 只看該作者
不懂幫頂
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 凹凸日日摸日日碰夜夜 | 日本高清精品 | 国产精品久久欧美久久一区 | 中文字幕在线播放不卡 | 欧美视频免费在线 | 国产乱性 | 伊人热久久 | 欧美性受xxxx白人性爽 | 久久极品 | 日本人爽p大片免费看 | 精品视频国产 | 亚洲成人精品影院 | 欧美极品在线 | 国内精品伊人久久久久网站 | 99精品国产一区二区青青牛奶 | 一本一道久久a久久精品综合 | 国产一区二区自拍 | 一本岛道一二三不卡区 | 亚洲精品乱码久久久久久蜜桃91 | 免费观看的av| 久久亚洲国产 | 日韩亚洲视频 | 国产亚洲一区二区三区 | 青青久草 | 久久久成人精品 | a国产一区二区免费入口 | 一区二区在线不卡 | 成人在线一区二区 | 国产精品亚洲一区 | 毛片网站在线观看 | 日本在线免费看最新的电影 | 亚洲欧美综合精品另类天天更新 | 亚洲欧美精品久久 | 欧美视频精品 | 999国产精品视频免费 | 91传媒在线观看 | 久久精品女人天堂av | 狠狠操在线 | 伊人精品在线视频 | 午夜小电影 | 二区在线视频 |