天堂草原最受欢迎的角色,天堂动漫,天堂在线,色天堂下载,天堂中文在线资源,亚洲男人天堂

技術熱線: 4007-888-234

技術支持

QLdsPIC3]流水燈[C30+dsPIC30F6014A]

更新時間: 2019-03-23

深圳市英銳恩科技有限公司:臺灣麥肯單片機(Micon MDT單片機)亞太地區A級代理商

QLdsPIC3]流水燈[C30+dsPIC30F6014A]
//實驗目的:通過LED流水燈實驗,熟悉dsPIC30F6014A的簡單編程
//軟件思路:
//          1、PORTD口的低8位的流水燈實驗
//          2、用TMR1的定時做流水燈的延時時間
//          3、改變FCY的值可以改變流水燈的速度
//硬件規劃:撥碼開關S1全置ON,其他撥碼開關OFF

#include             //dsPIC30F6014標準頭文件

  _FOSC(CSW_FSCM_OFF & XT_PLL4);  //4倍頻晶振,Failsafe 時鐘關閉
  _FWDT(WDT_OFF);                 //關閉看門狗定時器
  _FBORPOR(PBOR_OFF & MCLR_EN);   //掉電復位禁止,MCLR復位使能。
  _FGS(CODE_PROT_OFF);            //代碼保護禁止
#define Fcy 5000000               //流水燈延時時間

int main(void)                    //主函數
{
/*設置LED控制寄存器和定時器*/
//初始化LED端口和按鍵開關端口
LATD = 0x0000;                   //關閉所有LED
TRISD = 0xFF00;                  //設定LED引腳為輸出
T1CON = 0;                       //關閉定時器1
TMR1 = 0;                        //啟動定時器1的計數寄存器為0
PR1 = (Fcy/256)/2;               //設定延時時間
T1CON = 0x8030;                  //配置定時器1 (定時器開, 在空閑模式定時器繼續工作,
                                 //控時間累加禁止, 預分頻比是1:256, 內部時鐘)
unsigned char i;                 //定義一循環變量
   while (1)                   
   {
     LATD=1;                     //先點亮PORTD0口LED
     for(i=0;i<8;i++)            //循環8次,依次點亮所有LED
      {
    while(!IFS0bits.T1IF);    //等待延時時間到
       LATD=LATD<<1;             //緩沖器左移一位,以便點亮下一位LED
       IFS0bits.T1IF=0;          //定時器中斷標志位清0
      }
   }
}

404
返回首頁 |  返回上一頁
联系我们: 鄂伦春自治旗| 同心县| 长白| 北海市| 博客| 繁昌县| 威远县| 临江市| 长汀县| 广昌县| 淅川县| 简阳市| 龙井市| 岳阳市| 汉源县| 新营市| 翁牛特旗| 凯里市| 收藏| 石首市| 旅游| 洛川县| 涞源县| 定边县| 句容市| 阿图什市| 建湖县| 分宜县| 潮州市| 静安区| 聊城市| 会理县| 大关县| 江津市| 定远县| 天长市| 江山市| 新巴尔虎右旗| 禄丰县| 赣榆县| 银川市|