#include <STM8S105K.h>
// 輸入參數:ms -- 要延時的毫秒數,這里假設 CPU 的主頻為 2MHZ
void DelayMS(unsigned int ms) // 函數功能:延時函數
{
unsigned char i;
while(ms != 0)
{
for(i=0;i<250;i++);
for(i=0;i<75;i++);
ms--;
}
}
main()
{
int i;
CLK_ICKR = CLK_ICKR | 0x08; // 打開芯片內部的低速振蕩器 LSI
while((CLK_ICKR & 0x10) == 0); // 等待振蕩器穩定
// 通過設置蜂鳴器控制寄存器,來打開蜂鳴器的功能,蜂鳴器控制寄存器的設置:
// BEEPDIV[1:0] = 00 BEEPDIV[4:0] = 0e BEEPEN = 1
// 蜂鳴器的輸出頻率 = Fls
// ( 8 * (BEEPDIV + 2) )= 128K / (8 * 16) = 1K
//InitBEEP();//初始化蜂鳴器
//BEEP_LSICalibrationConfig(128000);//校準蜂鳴器頻率
BEEP_CSR|=0x40;//蜂鳴器鳴叫頻率 2K
BEEP_CSR = 0x2e;
for(i=0;i<10;i++)
{
DelayMS(250);
}
BEEP_CSR = 0x1e; // 關閉蜂鳴器
while(1);
}
|