拿到STM32F4 Discovery已经很长时间了,最近想用它做一些数字信号处理的实验,今天花些时间熟悉了其基本的使用用法,写此教程共勉之。 STM32 Discovery的相关资料可以在官网上获得:www.st.com/stm32f4-discovery,这里我们以官方的演示工程Demonstration为例,介绍其工程配置与程序下载方法,该工程实际上就是Discovery出厂时的默认代码。 一、下载代码包 在官网上下载库函数以及示例代码”STSW-STM32068″ […]
标签: STM32
STM32 | UID(全球唯一ID)介绍与应用
每个STM32芯片在出厂时都具有一个全球唯一的芯片ID(UID),该ID为96位,其存储地址分布如下: Start Address : 0x1FFF F7E8 Address offset: 0x00 U_ID(00-31) Address offset: 0x04 U_ID(32-63) Address offset: 0x08 U_ID(64-96) 该ID的应用领域(引用自Datasheet): ●用来作为序列号(例如USB字符序列号或者其他的终端应用) ●用来作为密码,在编写闪存时,将此 […]
STM32 | 串口初始化发送0xFE的Bug
最近在使用STM32F103串口功能时,发现第一个发出的串口数据帧总是不能被正确识别,在监听串口的原始报文后,我发现原来是数据帧前面多了一个0xFE。在经过一些尝试性的程序调整之后,我发现这个问题竟然和串口时钟初始化所在的位置有关。 这是存在问题的初始化程序: 这是修改后工作正常的代码: 这两者唯一的区别在于后者将串口时钟初始化放在了GPIO引脚初始化之前! 我现在还没有办法解释这种情况发生的原因,但是我推测是一些隐晦的时序问题导致串口数据线上产生了一个错误的数据,我还将进一步跟踪这个问题。(文 […]
STM32 | STM32的低功耗设计
在谈到低功耗处理器时,我们第一个想到的总是MSP430,但其实STM32也能拥有不错的低功耗特性。通过合理的进行软件设置,STM32在工作时的功耗可以降至数十mA,而待机功耗可以降到数uA。总的来说,降低STM32功耗的方法主要有以下三种: 1. 关闭不需要的外设时钟 STM32的所有外设都可以独立开启和关断,通过将不需要的AHB/APB的时钟关闭,可以起到降低总待机功耗的作用。各个模块的典型功耗如下所示: Figure 1. APB1外设的典型功耗 Figure 2. APB2外设的典型功耗 […]
STM32 | STM32F4 Discovery开发板简介
不久之前在淘宝上购买了一块STM32F4-Discovery开发板,根据自己的使用情况以及官方提供的说明手册,撰写了这篇关于该开发板的初步介绍,以供初学者参考。 Figure 1. F4-Discovery外观与包装 F4-Discovery是ST公司推出的官方开发套件,从开发板板载的资源来看,该开发板在设计上着重突出了F4的数字信号处理能力。其板载的芯片有1片STM32F407VGT6,1个三轴MEMS,1个音频MEMS,以及1片音频DAC。在接口上,其有一个miniUSB接口(用于供电及调试 […]
活动 | STM意法半导体2012全国研讨会记录
本周三,我前往南京绿地洲际酒店参与了ST公司的全国巡回研讨会。 本次研讨会主要介绍了ST公司MCU家族的两款新系列:STM32F0与STM32F3。 STM32F0系列用于成本敏感的领域,主频在48MHz,可将STM32F1系列进行直接替换,降低产品成本。相比F1系列,STM32F0中加入了1路32位定时器与2路模拟比较器功能。 STM32F3系列基于Cortex-M4,可以认为是F4系列的低成本替代品。相比F4系列,F3系列的主频只有72MHz,但保留了其DSP运算与浮点运算的优势,同时在ST […]
STM32 | STM32F10x启动文件的选择
STM32的启动文件根据型号不同,可分为以下几种: – startup_stm32f10x_ld_vl.s: for STM32 Low density Value line devices – startup_stm32f10x_ld.s: for STM32 Low density devices – startup_stm32f10x_md_vl.s: for STM32 Medium density Value line devices – […]
STM32 | 为什么选择STM32
自从1976年Intel 8048诞生以来,单片机经历了8位、增强型8位、16位三个时代。 最早的电子工程师使用8位机作为硬件平台,利用汇编语言编写程序。当时的单片机程序空间有限,一般只有1-2KB的ROM可供使用。之后出现了8051单片机,程序空间提高到了4KB,使高级语言的使用也成为了可能。近十年来,增强型8位机发展迅猛,有加强型8051单片机、AVR单片机、PIC单片机等,这些单片机具有很大的ROM与RAM空间,可以使用C语言编程。同时这些单片机具有丰富的外设资源,可以满足工业、消费电子、 […]