?? pwmdac.c
字號:
/****************************************************************************
* File:PWMDAC.C
* 功能:使用PWM6輸出PWM信號,通過濾波電實現DAC轉換。由KEY1控制PWM的占空比,
* 每按一次按鍵將會改變一次PWM的占空比。
* 說明:將跳線器JP10短接。使用示波器觀察測試點PWM和PWMDAC。
****************************************************************************/
#include "config.h"
#define KEY1 0x00004000 /* P0.14引腳連接KEY1 */
/****************************************************************************
* 名稱:WaitKey()
* 功能:等待一個有效按鍵。本函數有去抖功能。
* 入口參數:無
* 出口參數:無
****************************************************************************/
void WaitKey(void)
{ uint32 i;
while(1)
{ while( (IOPIN&KEY1)!=0 ); // 等待KEY1鍵按下
for(i=0; i<500; i++); // 延時去抖
if( (IOPIN&KEY1)!=0 ) break;
}
while( (IOPIN&KEY1)==0 ); // 等待KEY1鍵放開
}
/****************************************************************************
* 名稱:main()
* 功能:使用PWM6輸出占空比可調的PWM波形。
****************************************************************************/
int main(void)
{ uint32 pwmdata; // PWM占空比控制變量
PINSEL0 = 0x00080000; // 設置PWM6連接到P0.9管腳
PINSEL1 = 0x00000000; // 其它管腳設置為GPIO
TargetInit(); // PWM初始化(target.c文件)
pwmdata = 1382;
while(1)
{ PWMMR0 = 2765; // 設置PWM周期,PWMMR0=2765
PWMMR6 = pwmdata; // 設置PWM占空比,PWMMR6=1382
PWMLER = 0x41; // PWMMR0、PWMMR6鎖存,更新PWM占空比
WaitKey(); // 等待按鍵
pwmdata += 100; // 改變PWM占空比控制變量
if(pwmdata>=2764) pwmdata=0;
}
return(0);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -