用户手册
STM8S体验系统板STM8S105S4-PKT软件例程使用说明
1 前言
STM8S105S4-PKT是ST MCU体验套件中是基于STM8S105S4T6微控制器的,用于评估和体验STM8S功能的电路板。STM8S105S4T6是精简型的STM8S系列芯片之一,它基于ST公司的先进STM8内核,具有16K字节片上闪存以及一系列丰富的外设接口。通过ST-LINK、STX-RLINK 等调试工具,可以调试、烧写板载的STM8S105S4T6芯片。
STM8S105S4-PKT电路板提供的接口和外设有USART、ADC、LED灯、蜂鸣器以及触摸感应
按键等功能。
该体验套件利用这些接口与外设为用户提供了6个例程,供用户参考:
z Music:音乐播放例程;
z CSS:时钟切换及时钟安全系统的使用例程
z Sinwave:正弦波发生例程
z LED:LED控制例程
z UART:串口与PC通讯例程
z Touch Sensing:RC电容触摸式按键例程
注:
1)本例程仅适用于STM8S体验系统板STM8S105S4-PKT。
2)所有的例程均使用Cosmic C语言编译器,用户请预先安装Cosmic C编译器。
3)所有项目均基于STVD 4.1.2集成开发环境,用户请预先安装相应软件。c语言编译器怎么用?
4)所有例程使用ST-Link或STX-RLink作为在线调试工具,请在进行在线调试前确认PC与调
试工具的硬件连接。
硬件功能描述STM8S105S4-PKT软件例程使用说明2 硬件功能描述
2.1 主要特性
● 通过套件中的ST-LINK或另外购买的STX-RLINK等调试工具支持免费的STVD开发环境,支
持Cosmic STM8的16K免费编译器
● 基于STM8S微控制芯片系列芯片之一的STM8S105S4T6
高级STM8内核,具有3级流水线的哈佛结构
内置16K字节Flash和2K字节RAM
内置1024字节EEPROM
44个引脚:最多34个通用I/O端口,其中15个大电流端口
2个普通16位定时器,1个可产生3路互补PWM输出的高级16位定时器
1个带有8位预分频器的8位基本定时器
10位ADC,最多有9个ADC输入通道
1个带有同步时钟输出的UART ,支持智能卡、红外IrDA和LIN接口
1个高达8M位/s的SPI
1个支持400K位/s的I2C
具有单线接口模块(SWIM)和调试模块(DM)
● 可以作为软硬件架构的参考设计
● 通过板上的触摸按键,可以体验STM8S的触摸按键方案和性能
● 通过板上的蜂鸣器,体验STM8S内置的蜂鸣器驱动单元
● 通过板上的扩展区,可以方便地扩展用户自己的外设和体验与STM8S接口操作
2.2 板上的资源
● 基于STM8内核的STM8S105S4T6芯片
● 可选择的8MHz主时钟外部晶振
● 三个GPIO驱动的LED灯
● 可以输入模拟信号的单通道电位器
● 一个复位按键
● 一个可由用户定义的按键
● 一个RS232(DB9)连接头
● 一个SWIM单线调试接口连接头
● 三个电容触摸感应式按键
● 一个蜂鸣器
● 采用PWM+RC滤波的模拟信号输出
3 参考代码说明
3.1 Music 例程说明
3.1.1 项目描述
本例程通过采用PWM信号驱动蜂鸣器播放音乐并调节音量与音调,来说明如何使用Timer,
ADC,GPIO,TLI:
9使用HSI为系统时钟源,并配置恰当的分频比;
9 Timer2 CC1通道配置为PWM模式用以驱动蜂鸣器;
9 Timer4 溢出中断用作LD4,LD3,LD2闪烁的时基;
9 TLI(PD7)中断(用户按键)用来切换音乐的音调;
9 ADC 采样电位器电压来调节占空比以控制音量。
3.1.2 项目文件
9main.c 包含 "main" 函数的主程序
stm8s105s4头文件,定义硬件寄存器
9stm8s105c_s.h
9 stm8_interrupt_vector.c 中断向量表
3.1.3 硬件环境
9将在线调试工具与目标板通过SWIM接口CN1相连;
9在J1接口连接9~12v的直流电;
9使用电位器RV1来调节蜂鸣器音量;
9使用用户按键B2可在高音调和低音调之间切换;
3.1.4 如何开始
可按照如下步骤调试:
1) 直接打开已经建立好的项目(..\Demo\Music\Demo.stw),或创建一个项目并且配置好所有
的项目选项(可按默认值配置);
2) 编译这个项目 ProjectÆRebuild all;
3) 下载程序到MCU进行调试: DebugÆStart/Stop Debug Session
4) 运行程序: DebugÆRun (F5)
Æ调节评估板上的电位器RV1来调节BUZZ音量;
Æ使用用户按键B2来切换乐曲的音调;
Æ3个LED灯(LD4, LD3, LD2) 依次点亮。
3.2 CSS 例程说明
3.2.1 项目描述:
本例程完成以下功能:
9将时钟源由HSI切换到HSE;
9使能CSS功能;
9 LED闪烁。
3.2.2 项目文件:
9main.c 包含 "main" 函数的主程序;
stm8s105s4头文件,定义硬件寄存器;
9stm8s105c_s.h
9 stm8_interrupt_vector.c 中断向量表。
3.2.3 硬件环境
9将在线调试工具与目标板通过SWIM接口CN1相连;
9在J1接口连接9~12v的直流电;
3.2.4 如何开始
可按照如下步骤调试:
1) 直接打开已经建立好的项目(..\Demo\CSS\Demo.stw),或创建一个项目并且配置好所有的
项目选项(可按默认值配置);
2) 编译这个项目 Project->Rebuild all;
3) 下载程序到MCU进行调试: Debug->Start/Stop Debug Session
4) 运行程序: Debug->Run (F5)
Æ观察LED闪烁的频率;
Æ在运行过程中将晶振去掉,再观察LED的闪烁频率是否变化;
(注:若将晶振重新放回,LED的闪烁频率不会恢复正常,直至下一次复位。)
3.3 Sinwave 例程说明
3.3.1 项目描述:
本例程输出不同占空比的PWM信号通过外部RC电路产生3路不同相位的正弦波:
9使用HSI为系统时钟源,并配置恰当的分频比;
9 Timer1 CC1,CC2,CC3通道配置为PWM模式;
3.3.2 项目文件:
9main.c        包含 "main" 函数的主程序
9stm8s105c_s.h
stm8s105s4头文件,定义硬件寄存器
9math.h                  cosmic算术运算头文件
9stm8_interrupt_vector.c    中断向量表
3.3.3 硬件环境:
9将在线调试工具与目标板通过SWIM接口CN1相连;
9在J1接口连接9~12v的直流电;
9用示波器观察PB2~PB0上的波形。
3.3.4 如何开始:
可按照如下步骤调试:
1) 直接打开已经建立好的项目(..\Demo\Sinwave\Demo.stw),或创建一个项目并且配置好所
有的项目选项(可按默认值配置)
2) 除默认配置外,project->settings->Linker->Std.Libraries 将Float选项使能;
3) 编译这个项目 Project->Rebuild all;
4) 下载程序到MCU进行调试: Debug->Start/Stop Debug Session
5) 运行程序: Debug->Run (F5);
6) 观察PB2~PB0的波形,如下图所示:
Æ PC1引脚输出PWM信号,经RC滤波后产生PB0上的模拟正弦信号。
Æ同样可根据原理图看到用于产生PB1,PB2上正弦信号的控制信号。
图1Sinwave调试波形
PB2
PB1
PB0
PC1
3.4 LED 例程说明
3.4.1 项目描述:
本例程通过对LED的控制,来说明如何使用PWM,TLI,GPIO:
9使用HSI为系统时钟源,并配置恰当的分频比;
9 TIM2 CC2 输出PWM信号控制LD2亮度;
9 TIM3 CC1 输出PWM信号控制LD3闪烁频率;
9 TLI(PD7)中断用来打开/关闭LD4.