?? common.c
字號:
#include "include.h"
void sys_init()
{
WDTCN=0XDE; //關看門狗
WDTCN=0XAD;
// OSCICN=0x07; //內部16M時鐘
OSCXCN=0X67; //使用外部20MHz晶振作為時鐘
// for(i=0;i<256;i++); //等待振蕩器啟動
while(!(OSCXCN&0X80)); //等待晶振工作穩定
OSCICN|=0x08; //使用外部時鐘源作為系統時鐘
OSCICN=0X08; //禁內部振蕩器
XBR0=0X04; //
XBR1=0X00; //INT0連接到端口
XBR2=0X40; //交叉開關允許
PRT0CF=0xFF; //設置為推挽輸出
PRT1CF=0xFF; //
PRT2CF=0xbf; //
PRT3CF=0xFF; //
}
void delayus()
{
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
}
void delay_ms(uint count)
{
uint ii,jj;
for(ii=0;ii<count;ii++)
{
for(jj=0;jj<2300;jj++)
{
_nop_();
}
}
}
void delay_us(uint count)
{
for(;count>0;count--)
{
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
}
}
void delay(uint i)
{
for(;i>0;i--);
}
uint qm(uchar n)
{
uint y=1;
for(;n>0;n--)
y*=2;
return y;
}
void uart_init(void)
{
SCON = 0x50; //模式1,8位UART,允許RX
TMOD = 0x20; // 定時器1,模式2,8位重裝
TH1 = -(24576000/9600/16)+1; //按波特率設置定時器1重裝載值
TR1 = 1; //啟動定時器1
CKCON|= 0x10; // 定時器1使用系統時鐘為時基
PCON|= 0x80; //SMOD0 = 1
TI = 1; //表示TX0就緒
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -