浙江理工大学。
rm嵌入式系统技术及应用》
课程报告。题目:基于stm32的呼吸灯设计。
专业:电气工程及其自动化。
班级:10电气工程及其自动化1班。
姓名:杨家卫。
学号:b103828
指导老师:顾敏明。
本次设计基于对这一学期相关内容知识的整合,将相关知识应用在野火开发板上,实现设计目标的过程。
stm32系列基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的arm cortex-m3内核。按性能分成两个不同的系列:stm32f103“增强型”系列和stm32f101“基本型”系列。
增强型系列时钟频率达到72mhz,是同类产品中性能最高的产品;基本型时钟频率为36mhz,以16位产品的**得到比16位产品大幅提升的性能,是16位产品用户的最佳选择。两个系列都内置32k到128k的闪存,不同的是sram的最大容量和外设接口的组合。时钟频率72mhz时,从闪存执行**,stm32功耗36ma,是32位市场上功耗最低的产品,相当于0.
5ma/mhz。
本学期就野火开发板平台我们实验了流水灯,按键灯,嘀嗒时钟,通讯,屏幕点亮,触屏等,并深入了解了arm cortex-m3内核构架,内部的相关控制器,以及相应程序的编写。
以此为基础,本人制定了制作该平台上呼吸灯的设计方向。
呼吸灯:顾名思义,灯光在微电脑控制之下完成由亮到暗的逐渐变化,感觉像是在呼吸。广泛被用于数码产品,电脑,音响,汽车等各个领域,起到很好的视觉装饰效果(见霹雳游侠中的汽车前扫描器)。
实验描述及工程配置清单:
实验描述:在pc3连到led1上,用pwm形式实现led1呼吸灯效果。
硬件连接:pc3-led1。
使用到的库文件:startup/start_stm32f10x_
cmsis/core_
cmsis/system_
fwlib/stm32f10x_
fwlib/stm32f10x_
实际编写文件: user/
user/stm32f10x_
user/
user/实验**:
1. 配置gpio
void led_gpio_config(void)
/*定义一个gpio_inittypedef类型的结构体*/
gpio_inittypedef gpio_initstructure;
/*开启gpioc的外设时钟*/
rcc_apb2periphclockcmd( rcc_apb2periph_gpioc, enable);
/*选择要控制的gpioc引脚*/ gpio_ =gpio_pin_3 | gpio_pin_4 | gpio_pin_5;
/*设置引脚模式为通用推挽输出*/
gpio_ =gpio_mode_out_pp;
/*设置引脚速率为50mhz */
gpio_ =gpio_speed_50mhz;
/*调用库函数,初始化gpioc*/
gpio_init(gpioc, &gpio_initstructure
/* 关闭所有led灯 */
gpio_setbits(gpioc, gpio_pin_3 | gpio_pin_4 | gpio_pin_5);
2. 必要的宏定义用于管脚pwm输出参数设定。
#define dy_pwm 500 //设置明亮的总级数(级数过大会出现闪烁)
#define dy_speed 100 //设置每一个明亮级的停留时间(值域:0~65535)
#define dy_max 150 //设置最大明亮(值域:小于明亮总级数)
3. 延时程序。
void delay (unsigned int a) /延时程序。
unsigned char i;
while( -a !=0)
for(i = 0; i <1; i++)
4. pwm输出子程序。
void display (unsigned int a) /显示程序(pwm宽度)
led1( 0 );led小灯亮。
delay (a延时a的长度。
led1( 1 );led小灯灭。
delay (dy_pwm-a);/延时总pwm长度减a
5. main文件。
int main(void)
/* led 端口初始化 */
led_gpio_config();
n=0;t=1;
huan=0; /huan是循环切换标志。
while (1)
if(huan ==0) /变亮循环。
for(i = 0; i < dy_speed; i++)
display(t);
t++;if(t>(dy_max-2))
huan = 1;
if(huan ==1) /变暗循环。
for(i = 0; i < dy_speed; i++)
display(t);
t--;if(t<2)
huan = 0;
实验结果:实现了对开发板上的led1的呼吸灯效果,并实现一些参数的可调,在程序调试期对程序效果进行调整。
嵌入式系统报告
北京联合大学信息学院。嵌入式系统应用课程设计 实验报告。题目 基于arm9的电子时钟设计。时间2013.11.26 一 课程设计评分表1 二 设计任务书2 三 概要设计2 四 详细设计3 五 调试过程及结果分析10 六 设计 调试中的体会及建议13 七 参考文献13 课程设计评分表。基于arm9的电...
嵌入式系统报告
目录。一背景介绍 1 二系统总体设计 1 2.1 博创netarm2410 s开发平台 1 2.2 硬件体系结构 2 2.2 软件体系结构 2 三系统具体设计 3 四系统调试结果 3 五个人具体工作 4 5.1 本机qtopia虚拟平台的建立 5 5.2 qt交叉编译环境的建立与开发板库文件的加载 ...
嵌入式系统课程报告
嵌入式系统 课程报告。学生姓名 车良康 学号 20091002977 班序号 116092 14 指导教师 徐战亚 中国地质大学 武汉 信息工程学院。2011 年 10 月。题目 仿picasa 浏览系统。1 引言。1.1 项目背景。picasa是一款可帮助您在计算机上立即找到 修改和共享所有 的软...