stm8l 定时器

合集下载

STM8L超低功耗MCU精彩问答

STM8L超低功耗MCU精彩问答

主题:STM8L——引领8位MCU产品向超低功耗扩展---精彩问答[1问:]STM8L总线数据传输速度可达多高?[答:]CPU的时钟频率为16MHz[1900-1-1][2问]如何实现ARM内核的低功耗设计[答:]STM8L不是ARM内核的[2009-11-1810:14:01][3问:]STM8L的产品的工作主频能有多大?可以在待机时改变频率以节省电能吗? [答:]最高16MHz,16MIPS,待机前可以降频[2009-11-1810:14:57][4问:]STM8加密除了在下载的时候禁止读写以外,还有什么好办法呢?[答:]每个芯片有唯一的ID,可以在程序中做加密处理[2009-11-1810:15:34][5问:]STM8很多寄存器需要在某种状态下才允许修改的,能否详细说明一下?[答:]这个问题能够提的具体一点吗?[2009-11-1810:15:35][6问:]8位微控制器STM8L的外设接口是怎样设置的?[答:]你指什么外设?[2009-11-1810:20:30][7问:]STM8L单片机和TI的msp430系列MCU有什么不同,与TI的功耗比相比有什么优势?谢谢[答:]STM8L是8位机,因此比16位机便宜。

STM8L可达16MIPS,与MSP430速度相当。

STM8L的许多工作模式,功耗比TI还低[2009-11-1810:22:51][8问:]STM8L是几级流水的?工作频率是多少?指令周期是多少?有多少单指令周期指令和双指令周期的指令?[答:]3级16MHz Max指令集与STM8S相同STM8L的内核是CISC内核,指令周期从一个周期至最长10几个周期(除法指令)都有。

[2009-11-1810:24:03][9问:]调试方式有几种?FLASH和RAM?可以选择吗?[答:]可以选择Flash或RAM运行程序。

[2009-11-1810:24:05][10问:]支持几种IDE?请简单介绍,谢谢[答:]ST推荐STVD还有Raisonance的IDE也可以。

STM8L系列超低功耗8位微控制器 说明书

STM8L系列超低功耗8位微控制器 说明书

STM8L1xx 典型应用和结构框图
医疗器械 血糖仪 胰岛素泵 糖尿病监护 血压计 胆固醇计 病人监控 心脏监护 仪表 电表/气表/水表/热表 称重 报警系统 中央处理单元 有线/无线传感器 门禁 通用移动设备 手机及配件 3D鼠标及遥控器 游戏机和玩具 GPS手表 体育设施
内部的16MHz RC振荡器 1~16MHz晶体 振荡器 内部的38kHz RC振荡器 32.768kHz晶体 振荡器 运行于16MHz的 STM8核心 嵌套的中断控制器 32个中断向量 多达40个外部中断 SWIM 调试模块 多达41个I/O端口 12位ADC 25个通道
STM8L系列
超低功耗8位微控制器
微控制 超节能
2009年9月
/mcu
STM8L超低功耗MCU系列
意法半导体公司开发出了基于8位STM8内核的超低功耗微控制器.借助一个优秀的面向未来的超低功耗平台,采 用了全新的超低漏电工艺和优化的体系结构,STM8L系列微控制器集合了高性能与超低功耗于一身.STM8L系列 现有三个子系列,可以满足对低功耗有特殊要求的多种应用.
STM8L一览
现在已有26个兼容的产品
Flash容量 (字节) STM8L152C8
64 K 32 K 16 K 8K
STM8L152R8 STM8L152M8 STM8L151R8 STM8L151M8
STM8L151C8 STM8L152K6 STM8L151G6 STM8L151K6 STM8L152K4 STM8L151G4 STM8L151K4 STM8L151F3 STM8L101F3 STM8L151G3 STM8L151K3 STM8L101G3 STM8L101K3 STM8L151G2 STM8L101G2 28引脚 QFN (4x4) 32引脚 LQFP (7x7)/ QFN (5x5) 48引脚 LQFP (7x7)/ QFN (7x7) STM8L152C6 STM8L151C6 STM8L152C4 STM8L151C4

STM8L中文参考手册-1

STM8L中文参考手册-1

本参考手册的目标应用程序开发人员。

它提供了完整的信息如何使用stm8l05xx,stm8l15xx 和stm8l16xx微控制器的存储器和外围设备。

该stm8l05xx / stm8l15xx / stm8l16xx是一个家庭的不同存储密度的微控制器和外围设备。

这些产品是专为超低功耗应用。

可用的外设的完整列表,请参阅产品数据表。

订购信息,引脚说明,机械和电气设备的特点,请参阅产品数据表。

关于STM8 SWIM通信协议信息和调试模块,请参阅用户手册(um0470)。

在STM8的核心信息,请参阅STM8的CPU编程手册(pm0044)。

关于编程,擦除和保护的内部快闪记忆体,请参阅STM8L闪存编程手册(pm0054)。

1 中央处理单元(CPU)。

30。

1.1 引言301.2 CPU的寄存器。

30。

1.2.1 描述CPU寄存器。

..。

301.2.2 STM8 CPU寄存器图。

..。

341.3 全球配置寄存器(cfg_gcr)。

34。

1.3.1 激活水平。

..。

341.3.2 游泳禁用。

..。

351.3.3 描述全局配置寄存器(cfg_gcr)。

..。

35 1.3.4 全局配置寄存器图及复位值。

..。

352 启动ROM . . . 363程序存储器和数据存储器。

37。

3.1引言373.2术语。

37。

3.3个主要的快闪存储器的特点。

38。

3.4记忆的组织。

39。

3.4.1低密度设备的存储器组织。

393.4.2介质密度的装置记忆的组织。

..。

403.4.3介质+密度装置记忆的组织。

..。

413.4.4高密度存储器组织。

..。

423.4.5专有代码区(译)。

433.4.6用户区(UBC)。

433.4.7数据的EEPROM(数据)。

..。

463.4.8主程序区。

463.4.9选项字节。

..。

463.5内存保护。

47。

3.5.1读出保护。

473.5.2内存访问安全系统(质量)。

473.5.3使写访问选项字节。

493.6内存编程493.6.1同时读写(读写网)。

STM8L探索套件学习笔记-TIM定时器(五)

STM8L探索套件学习笔记-TIM定时器(五)

STM8L探索套件学习笔记-TIM定时器(五)
STM8L 的定时器分:高级定时器TIM1,通用定时器TIM2/3/5,基础定时器TIM4。

其中高级定时器和通用定时器都是16 位定时器,不同之处高级定时器有DMA 功能,基础定时器是8 位定时器,它们的更详细功能可以参考说明
手册。

今天我们使用基础定时器TIM4 做一个延时的任务,采用两种方式实现:查
询和中断的方法。

1 查询的方法就是查询状态寄存器中的UIF 位(update interrupt flag)是否置位,主要代码:
void delay_ms(u16 n_ms)
{
/* Init TIMER 4 */
CLK_PeripheralClockConfig(CLK_Peripheral_TIM4, ENABLE);
/* Init TIMER 4 prescaler: / (2)= /64 */
TIM4->PSCR = 6;
/* HSI div by 1 --> Auto-Reload value: 16M / 64 = 1/4M, 1/4M / 1k = 250*/ TIM4->ARR = 250;
/* Counter value: 2, to compensate the initialization of TIMER*/
TIM4->CNTR = 2;
/* clear update flag */。

STM8L问答

STM8L问答

[1问:] STM8L总线数据传输速度可达多高?[答:] CPU的时钟频率为16MHz[2问] 如何实现ARM内核的低功耗设计[答:] STM8L不是ARM内核的[3问:] STM8L的产品的工作主频能有多大?可以在待机时改变频率以节省电能吗? [答:] 最高16MHz,16MIPS,待机前可以降频[4问:] STM8加密除了在下载的时候禁止读写以外,还有什么好办法呢?[答:] 每个芯片有唯一的ID,可以在程序中做加密处理[5问:] STM8很多寄存器需要在某种状态下才允许修改的,能否详细说明一下?[答:] 这个问题能够提的具体一点吗?[6问:] 8位微控制器STM8L的外设接口是怎样设置的?[答:] 你指什么外设?[7问:] STM8L单片机和TI的msp430系列MCU有什么不同,与TI的功耗比相比有什么优势?谢谢[答:] STM8L是8位机,因此比16位机便宜。

STM8L可达16MIPS,与MSP430速度相当。

STM8L的许多工作模式,功耗比TI还低[8问:] STM8L是几级流水的?工作频率是多少?指令周期是多少?有多少单指令周期指令和双指令周期的指令?[答:] 3级16MHz Max指令集与STM8S相同STM8L的内核是CISC内核,指令周期从一个周期至最长10几个周期(除法指令)都有。

[9问:] 调试方式有几种?FLASH和RAM?可以选择吗?[答:] 可以选择Flash或RAM运行程序。

[10问:] 支持几种IDE?请简单介绍,谢谢[答:] ST推荐STVD还有Raisonance的IDE也可以。

[11问:] 目前stm8的编译器不是很好用,我想问一下是否有让iar支持stm8的计划啊?我想要是有的话,stm8的推广会更顺利一些……[答:] 再耐心等待吧,计划中的[12问:] 宣传资料上看到有关于stm芯片片内都有唯一的ID号,而且在加密时可以派上用场!请教这序列号在什么地方?我应该怎么读取?有相关例程么?[答:] 请下载最新版本的参考手册和数据手册,上面有说明[13问:] 如何设置代码在flash运行还是在sram中运行?[答:] 默认在Flash运行,但也可以选择在RAM运行。

STM8教程实验8-定时器TIM1

STM8教程实验8-定时器TIM1

STM8教程实验8-定时器TIM1例程⼋ TIM1这⼀节,我们将向⼤家介绍如何使⽤STM8的定时器中的基本定时功能,STM8的定时器功能⼗分强⼤,有TIM1⾼级定时器,也有TIM2、TIM3等通⽤定时器,还有TIM4基本定时器。

在STM8S参考⼿册⾥⾯,定时器的介绍占了1/3的篇幅,⾜见其重要性。

这⼀节,我们分别介绍TIM1的基本定时功能16位⾼级控制定时器(TIM1)简介:TIM1由⼀个16位的⾃动装载计数器组成,它由⼀个可编程的预分频器驱动。

TIM1有4个通道,分别是1到4。

分别对应于四个不同的捕获/⽐较通道。

⾼级控制定时器适⽤于许多不同的⽤途:基本的定时测量输⼊信号的脉冲宽度(输⼊捕获)产⽣输出波形(输出⽐较,PWM和单脉冲模式)对应与不同事件(捕获,⽐较,溢出,刹车,触发)的中断与TIM5/TIM6或者外部信号(外部时钟,复位信号,触发和使能信号)同步⾼级控制定时器⼴泛的适⽤于各种控制应⽤中,包括那些需要中间对齐模式PWM的应⽤,该模式⽀持互补输出和死区时间控制。

⾼级控制定时器的时钟源可以是内部时钟,也可以是外部的信号,可以通过配置寄存器来进⾏选择。

TIM1的时基单元包括,如下图所⽰:● 16位向上/向下计数器● 16位⾃动重载寄存器●重复计数器●预分频器16位计数器,预分频器,⾃动重载寄存器和重复计数器寄存器都可以通过软件进⾏读写操作。

⾃动重载寄存器由预装载寄存器和影⼦寄存器组成。

可在在两种模式下写⾃动重载寄存器:●⾃动预装载已使能(TIM1_CR1寄存器的ARPE位置位)。

在此模式下,写⼊⾃动重载寄存器的数据将被保存在预装载寄存器中,并在下⼀个更新事件(UEV)时传送到影⼦寄存器。

●⾃动预装载已禁⽌(TIM1_CR1寄存器的ARPE位清除)。

在此模式下,写⼊⾃动重载寄存器的数据将⽴即写⼊影⼦寄存器。

更新事件的产⽣条件:●计数器向上或向下溢出。

●软件置位了TIM1_EGR寄存器的UG位。

STM8教程实验8-定时器TIM1

STM8教程实验8-定时器TIM1

例程八 TIM1这一节,我们将向大家介绍如何使用STM8的定时器中的基本定时功能,STM8的定时器功能十分强大,有TIM1高级定时器,也有TIM2、TIM3等通用定时器,还有TIM4基本定时器。

在STM8S参考手册里面,定时器的介绍占了1/3的篇幅,足见其重要性。

这一节,我们分别介绍TIM1的基本定时功能16位高级控制定时器(TIM1)简介:TIM1由一个16位的自动装载计数器组成,它由一个可编程的预分频器驱动。

TIM1有4个通道,分别是1到4。

分别对应于四个不同的捕获/比较通道。

高级控制定时器适用于许多不同的用途:基本的定时测量输入信号的脉冲宽度(输入捕获)产生输出波形(输出比较,PWM和单脉冲模式)对应与不同事件(捕获,比较,溢出,刹车,触发)的中断与TIM5/TIM6或者外部信号(外部时钟,复位信号,触发和使能信号)同步 高级控制定时器广泛的适用于各种控制应用中,包括那些需要中间对齐模式PWM的应用,该模式支持互补输出和死区时间控制。

高级控制定时器的时钟源可以是内部时钟,也可以是外部的信号,可以通过配置寄存器来进行选择。

TIM1的时基单元包括,如下图所示:● 16位向上/向下计数器● 16位自动重载寄存器● 重复计数器● 预分频器16位计数器,预分频器,自动重载寄存器和重复计数器寄存器都可以通过软件进行读写操作。

自动重载寄存器由预装载寄存器和影子寄存器组成。

可在在两种模式下写自动重载寄存器:● 自动预装载已使能(TIM1_CR1寄存器的ARPE位置位)。

在此模式下,写入自动重载寄存器的数据将被保存在预装载寄存器中,并在下一个更新事件(UEV)时传送到影子寄存器。

● 自动预装载已禁止(TIM1_CR1寄存器的ARPE位清除)。

在此模式下,写入自动重载寄存器的数据将立即写入影子寄存器。

更新事件的产生条件:●计数器向上或向下溢出。

●软件置位了TIM1_EGR寄存器的UG位。

●时钟/触发控制器产生了触发事件。

STM8L中文参考手册(4)-

STM8L中文参考手册(4)-

STM8L中文参考手册(4)-20 16位通用定时器(TIM2、TIM3、tim5)20.1简介本章介绍TIM2、TIM3和tim5是相同的定时器每个定时器包括一个由可编程分频器驱动的16位上下自动重载计数器它可以用于多种目的,包括:●定时产生●测量输入信号的脉冲长度(输入捕获)●产生输出波形(输出比较、脉宽调制和脉冲模式)●各种中断能力事件(捕获、比较、溢出)●与其他定时器或外部信号(外部时钟、复位、触发使能)同步定时器时钟可以来自内部时钟,也可以来自配置寄存器或外部源本章仅介绍通用定时器的主要特性。

它参考了与19:16高级控制定时器(TIM1)相对应的部分中的每个功能的更详细的信息页28320.2 TIMx 主要功能通用TIMx TIM2/TIM3功能包括:●16位向上、向下、向上/向下自动刷新计数器●3位可编程分频器允许将计数器的时钟频率分成1至128的任意2次方两个独立的低电平通道:输入捕获输出比较脉冲宽度调制产生(边沿对齐)-一个脉冲输出模式低电平中断输入,用于复位定时器输出信号,或处于已知状态●输入捕捉2可通过来自comp2比较器:更新的中断和DMA请求产生以下事件:当计数器溢出时,计数器初始化(软件)输入捕捉输出比较中断输入触发事件(开始、停止、内部/外部触发初始化或计数)20.3.1时间单元定时器时基单元包括:●16位可逆计数器时钟源是内部时钟(fsysclk)它由预分频器计数器的时钟ck_cnt驱动,预分频器计数器直接连接到ck_psc时钟馈送分频器分频器的实现如下:7位计数器(在timx_pscr寄存器中)由基于低预分频器的3位寄存器控制它可以控制飞行中寄存器缓冲区的变化。

它可以将计数器的时钟频率转换为1、2、4、8、16、32、64或128计数器的时钟频率计算如下:fCk _ CNT = fck _ PSC/2(PSCR[2:0)计数器操作请参考第19.3.4页:上部288,模式部分19.3.5:在第290页向下计数,模式19.3.6:中心对齐(向上/向下计数)29220.3.2时钟/触发控制器参见第296页第19.4节:TIM1时钟/触发控制器20.3.3采集/比较通道输入级参见第310页第19.5节:TIM1采集/比较通道有两个输入通道,如图122:输入级框图通道2内部连接到比较器输出级参见第19.5.4页:315,输出级19.5.5:强制输出模式在第316页,第19.5.7页:脉宽调制模式在第318页如图124所示。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

STM8L探索套件学习笔记-TIM定时器(五)2011-04-21 08:28
STM8L的定时器分:高级定时器TIM1,通用定时器TIM2/3/5,基础定时器TIM4。

其中高级定时器和通用定时器都是16位定时器,不同之处高级定时器有DMA 功能,基础定时器是8位定时器,它们的更详细功能可以参考说明手册。

今天我们使用基础定时器TIM4做一个延时的任务,采用两种方式实现:查询和中断的方法。

1查询的方法就是查询状态寄存器中的UIF位(update interrupt flag)是否置位,主要代码:
void delay_ms(u16 n_ms)
{
/* Init TIMER 4 */
CLK_PeripheralClockConfig(CLK_Peripheral_TIM4, ENABLE);
/* Init TIMER 4 prescaler: / (2^6) = /64 */
TIM4->PSCR = 6;
/* HSI div by 1 --> Auto-Reload value: 16M / 64 = 1/4M, 1/4M / 1k = 250*/
TIM4->ARR = 250;
/* Counter value: 2, to compensate the initialization of TIMER*/
TIM4->CNTR = 2;
/* clear update flag */
TIM4->SR1 &= ~TIM4_SR1_UIF;
/* Enable Counter */
TIM4->CR1 |= TIM4_CR1_CEN;
while(n_ms--)
{
while((TIM4->SR1 & TIM4_SR1_UIF) == 0) ;
TIM4->SR1 &= ~TIM4_SR1_UIF;
}
/* Disable Counter */
TIM4->CR1 &= ~TIM4_CR1_CEN;
}
2 中断的方法,更有效率,具体看附件。

相关文档
最新文档