《STM8的C语言编程》.pdf
文本预览下载声明
献
给
迷
茫
中
的
STM8
初
学
者
本文内容整理与网络,适用于对单片机有一定的了解和熟悉的人.
希望你们能够快速上手并应用STM8.
本文所有例程适用于COSMIC和IAR编译器,更多学习资料可以
登录我们的 官网 和 论坛 查找。
— QIYONG
1 32
第 页 共 页
目 录
STM8的C语言编程(1)--基本程序与启动代码分析1
STM8的C语言编程(2)--变量空间的分配5
STM8的C语言编程(3)--GPIO输出6
STM8的C语言编程(4)--GPIO输出和输入8
STM8的C语言编程(5)--8 位定时器应用之一9
STM8的C语言编程(6)--8 位定时器应用之二10
STM8的C语言编程(7)--16 位定时器的中断应用14
STM8的C语言编程(8)--UART 应用16
STM8的C语言编程(9)--EEPROM应用20
STM8的C语言编程(10)--修改CPU的时钟22
STM8的C语言编程(11)--切换时钟源25
STM8的C语言编程(12)--AD 转换27
STM8的C语言编程(13)--蜂鸣器29
STM8的C语言编程(14)--PWM30
2 32
第 页 共 页
STM8 C 1
STM8 C 1
SSTTMM88 CC 11
的 语言编程( )--基本程序与启动代码分析
现在几乎所有的单片机都能用C 语言编程了,采用C 语言编程确实能带来很多好处,至少可读性比汇
编语言强多了。
在STM8 的开发环境中,可以通过新建一个工程,自动地建立起一个C 语言的框架,生成后开发环境
会自动生成2个C 语言的程序,一个是main.c,另一个是stm8_interrupt_vector.c。main.c 中就是一
个空的main()函数,如下所示:
/* MAIN.C file
*
* Copyright (c) 2002-2005 STMicroelectronics
*/
main()
{
while (1);
}
而在stm8_interrupt_vector.c 中,就是声明了对应该芯片的中断向量,如下所示:
/* BASIC INTERRUPT VECTOR TABLE FOR STM8 devices
* Copyright (c) 2007 STMicroelectronics
*/
typedef void @far (*interrupt_handler_t)(void);
struct interrupt_vector
{
unsigned char interrupt_instruction;
interrupt_handler_t interrupt_handler;
};
@far @interrupt void NonHandledInterrupt (void)
{
/* in order to detect unexpected events dur
显示全部