历史上的今天
返回首页

历史上的今天

今天是:2024年10月20日(星期日)

正在发生

2021年10月20日 | stm8l TIM2定时器使用

2021-10-20 来源:eefocus

1、配置定时器
void TIM2_Config(void)
{
    TIM2_DeInit();
    CLK_PeripheralClockConfig(CLK_Peripheral_TIM2, ENABLE); 
    TIM2_TimeBaseInit(TIM2_Prescaler_1, TIM2_CounterMode_Up, 128);
    TIM2_SetCounter(128);                                
    TIM2_ITConfig(TIM2_IT_Update, ENABLE);
    TIM2_ARRPreloadConfig(ENABLE);
    TIM2_Cmd(ENABLE);                                     //计数器使能,开始计数  
}

2、配置系统时钟CLK
void CLK_Config(void)
{   
    CLK_DeInit();
    
    CLK_HSEConfig(CLK_HSE_OFF);
    //启动LSI时钟源
    CLK_LSICmd(ENABLE); 
    //使能时钟切换
    CLK_SYSCLKSourceSwitchCmd(ENABLE);
    //选择内部低速时钟作为时钟源
    CLK_SYSCLKSourceConfig(CLK_SYSCLKSource_LSI);
    //设置系统时钟分频
    CLK_SYSCLKDivConfig(CLK_SYSCLKDiv_1);
    //等待时钟稳定
    while (CLK_GetSYSCLKSource() != CLK_SYSCLKSource_LSI)
    {}
}

3、系统初始化配置
void SYSTEM_Config(void)
{   
    /* 关全局中断 */
    disableInterrupts();
    
    /* 时钟配置 */
    CLK_Config();

    /* TIM2配置 */
    TIM2_Config();

    /* 使能中断 */
    enableInterrupts(); 
}

3、main函数
void main(void)
{   
    SYSTEM_Config();
    
    while (1)
    {     
         ;
    }
}

5、中断处理
/**
  * @brief TIM2 Update/Overflow/Trigger/Break /USART2 TX Interrupt routine.
  * @param  None
  * @retval None
  */
INTERRUPT_HANDLER(TIM2_UPD_OVF_TRG_BRK_USART2_TX_IRQHandler,19)
{
    /* In order to detect unexpected events during development,
       it is recommended to set a breakpoint on the following instruction.
    */

    TIM2_ClearFlag(TIM2_FLAG_Update);
    g_uiTim2Count++;
}

推荐阅读

史海拾趣

Allen Avionics Inc公司的发展小趣事

对不起,我无法提供关于Allen Avionics Inc 公司的相关故事。

APM Hexseal公司的发展小趣事

APM Hexseal的产品很快在军事领域获得了广泛应用。公司的密封靴子通过了严格的军事检查和独立的QPL等效项,证明了其卓越的性能和可靠性。此外,APM Hexseal还协助开发了MIL-B-5423规范(现为MIL-DTL-5423),为军方的新设备保护要求设定了初始标准。这一合作不仅提升了APM Hexseal在军事领域的影响力,也为其在电子行业中的发展打开了新的大门。

昆泰芯微电子(CONNTEK)公司的发展小趣事

昆泰芯微电子实行立体作战的研发模式,整合了芯片设计、电子应用设计、工业设计等多家专业设计公司。这种研发模式不仅为公司带来了更多的创新机会,也为工程师们提供了更多的挑战和成长机遇。公司注重员工的培训和发展,有专员负责新人的岗前培训,进行岗位知识的输送以及疑难问题的解答。同时,公司也鼓励员工参与实际项目,由专业领域的前辈进行引领,让员工在实践中快速成长。

Fabrimex AG公司的发展小趣事

1995年,Fabrimex GmbH成立,作为电子组装和电源生产的生产公司。这一举措标志着公司进一步向国际化发展迈进。通过设立生产公司,Fabrimex AG能够更好地控制产品质量和生产成本,提高市场竞争力。同时,公司还加强了在全球范围内的销售活动,进一步扩大了市场份额。

Enterpoint公司的发展小趣事

在Enterpoint公司的发展过程中,他们始终将客户服务放在首位。公司建立了一套完善的客户服务体系,为客户提供从产品咨询、技术支持到售后服务的全方位支持。这种对客户的关注和投入,不仅赢得了客户的信任和好评,也为公司的品牌建设打下了坚实的基础。

API Delevan公司的发展小趣事

为了进一步扩大市场份额,API Delevan公司积极寻求与国内外合作伙伴的合作,共同开拓市场。通过参加国际电子展会、举办技术研讨会等方式,公司不断提升品牌知名度和影响力。同时,API Delevan还注重客户关系管理,为客户提供优质的产品和服务,赢得了客户的信任和忠诚。

问答坊 | AI 解惑

Systemverilog 资料下载

FPGA的验证一直以来是不受重视的。 通常在RTL仿真后,采用SignalTap 和Chipscope来解决验证的问题。 当FPGA规模变大,编译时间很长,设计又很复杂时,这种方法的局限性就显露出来。 借鉴ASIC的验证概念,是解决这个问题的有效手段。     ...…

查看全部问答>

深度解析LPC1100低功耗设计的七个秘密

作者:恩智浦半导体  Rob Cosaro ARM Cortex-M0内核使LPC1100的功耗数据与当前的低功耗微控制器保持一致,但这种内核的处理效率远远高于目前的8位和16位处理器。这可以降低电池供电应用的平均电流,延长电池寿命,也可减少其他应用的功 ...…

查看全部问答>

VxWorks中关于GB2312转换成UTF-8的问题

请教各位,我现已将汉字取十六进制值,得到GB2312码,现将该码转换成utf-8码,该如何实现,请帮忙写个代码赐教!…

查看全部问答>

WinowsXP下读取的汉字传输到WinCE系统下后的显示问题

我写的一个在winCE下运行的程序显示从WindowsXp系统发过来的读取TXT文件得到的汉字数据,但是总是显示方框,我用MultiByteToWideChar()强制转化后显示“??”,请问如何解决? 代码如下: Cstring m_no;         m_no.Fo ...…

查看全部问答>

怎么样准确地获得本机声卡设备名(device name)或者 device object指针

我想在底层通过驱动向真正的声卡发包让它读或者写(播放/录音), ///...获取声卡设备 ///...生成irp NTSTATUS status = IoCallDriver(pRealDev, Irp);                         ...…

查看全部问答>

不要再怀疑了!LED日光灯挺好的!

说说LED日光灯的优势和普及趋势。 1、LED做成日光灯管的生产门槛较低。现成的各类配件(塑料管,铝塑管,内置电源,PCB,堵头)极其丰富,有电子组装经验的工厂能在短期内批量生产出来; 2、使用安装方法简便,可以在原灯架上改,也可以使用厂家 ...…

查看全部问答>

MIL-STD-1553B入门视频教程 1553B总线资料课件

MIL-STD-1553B入门视频教程 1553B总线资料课件     MIL-STD-1553B入门视频教程,详细介绍了MIL-STD-1553B总线的历史背景、优点和应用;MIL-STD-1553B总线的基础知识介绍(1553B的网络结构、1553B工作模式、1553B传输方式、1553B数据 ...…

查看全部问答>

stm32I2C在keil里的频率怎么设置

板子上用的是外置的11.0592M 的, 调试时,不管我怎么设置pll的倍频数,I2C的调试窗口总是显示freq设置错误。不明白这个设置还有什么讲究吗?我看了那个函数,是取了硬件时钟后自己设置的(我用的他们的库)。那个取回的硬件时钟频率似乎有问 ...…

查看全部问答>

我的s3c2440定时器0无法进入中断,

  我的定时器0设置如下,但是运行时如法进入中断,难道设置有错误??     void timer0_init(void) {        rSRCPND   =  rSRCPND  |   (0x1<<10);&nbs ...…

查看全部问答>

关于DSP外部端口EMIF地址映射问题

 在使用DSP(我有的是5502)有外部端口EMIF与外部扩展存储器连接时,需要考虑他们的地址移位问题嘛?我看了数据手册,反而更有点被绕晕了,手册如下图所示说明,但是实际中是不是还是要先移位才能正确操作呢?那位大虾用过指点一下吧?…

查看全部问答>