⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 STM8S105S4程序
💻 C
字号:
/******************** 2011电子科技协会 ********************
;名称 :STM8自带蜂鸣器使用
;作者   : 郑品洪
;日期   : 07/25/2011
;描述 : ;注!此功能需用ST Link辅助设置,协会实验板无法正常工作,这里仅作参考
;***********************************************************/
#include <stm8s105s4.h>
#define uchar unsigned char
uchar t;

void init(void)              //初始化函数
{
    CLK_ICKR|=0x08;             // 打开芯片内部的低速振荡器LSI
    while((CLK_ICKR&0x10)==0);        // 等待振荡器稳定
    
    TIM2_EGR=0X01;       //允许产生更新事件
    TIM2_PSCR=0X01;     //分频,使频率为1MHz
        
    TIM2_ARRH=0XC3;     //更新后计数器的值
    TIM2_ARRL=0X50;
        
    TIM2_CR1=0X05;      //允许定时器工作
    TIM2_IER=0X01;     //允许更新中断
    _asm("rim");       //汇编语句,启动定时器
    
}

void main()
{
    uchar i;
    init();
    while(1)
  {
     BEEP_CSR=0x26;         //一秒2KHz 
        while((t>=20)&&(t<40))
            BEEP_CSR=0x2e;       //一秒1KHz 
        while((t>=40)&&(t<60))
          BEEP_CSR=0x3e;      //一秒500Hz 
        while((t>=60)&&(t<80))
          BEEP_CSR&=0xdf;      //一秒关闭 
        if(t>=80)
          t=0;    
    }    
}

@far @interrupt void TIM2_UP_IRQHandler (void)    //中断函数

{
   TIM2_SR1 = 0x00; 
     t++;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -