?? init.c
字號:
/*********************************************************************/
//系統時鐘、端口、AD、DA、TIMER、PCA初始化
/*********************************************************************/
#include<C8051F000.h>
#include<define.h>
void SYSCLK_Init()
{
OSCICN=OSCICN|0x03; //啟用內部晶振16MHZ
}
void PORT_Init()
{
XBR0=0x10; //連接CEX0、CEX1
XBR1=0x00;
XBR2=0x40;
PRT0CF=0xFF; //PO推挽輸出
}
/*void ADC_Init()
{
ADC0CN=0x05; //ADC0禁止定時器3觸發左對齊
REF0CN=0x07; //允許溫度傳感器工作
AMX0SL|=0x00; //選擇通道0作為AD輸入
ADC0CF=0x80; //分頻系數(為16〕與增益(為2)設置
EIE2|=0x02; //允許ADC中斷
}
void DAC0_Init()
{
DAC0CN=0x84; //DAC允許,左對齊方式
}
void Timer3_Init(unsigned int counts)
{
TMR3CN=0x02; //停止定時器3,清除TF3,系統時鐘為時基
TMR3RL=~counts+1; //賦初值
TMR3=TMR3RL;
EIE2&=!0x01; //關T3中斷
TMR3CN|=0x04; //啟動T3
}*/
void PCA_Init()
{
PCA0MD=0x02; //CPU等待時PCA0正常工作;系統時鐘的1/4為計數脈沖源溢出中斷禁止
PCA0CPM0=0x02; //模塊0:8位脈寬調制方式、脈寬調制允許、電平切換匹配中斷禁止
PCA0CPM1=0x02; //模塊1
// EIE1|=0x08; //允許PCA0中斷
CR=0; //關PCA0
}
void space_rate(unsigned char space) //占空比設定
{
PCA0CPL0=space;
PCA0CPH0=space;
PCA0CPL1=space;
PCA0CPH1=space;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -