450 likes | 749 Views
轻松进入 STM32 Cortex-M3 世界. 从 EK-STM32F 学习开发套件说起. 万利电子有限公司 刘强 liuq@manley.com.cn. 概述. 关于 STM32 Cortex-M3 关于 EK-STM32F 学习开发套件 模仿 / 借鉴 STM32 系列应用系统硬件设计 IAR 集成开发环境使用入门 怎样编制一个应用程序. 关于 STM32F 的优点. 兼容性好 STM32F101 STM32F103 QFN36-LQFP48-LQFP144-BGA100 速度快 代码运行 中断响应 位操作. 代码小
E N D
轻松进入STM32 Cortex-M3世界 从EK-STM32F学习开发套件说起 万利电子有限公司 刘强 liuq@manley.com.cn
概述 • 关于STM32 Cortex-M3 • 关于EK-STM32F学习开发套件 • 模仿/借鉴 • STM32系列应用系统硬件设计 • IAR集成开发环境使用入门 • 怎样编制一个应用程序
关于STM32F的优点 • 兼容性好 • STM32F101 • STM32F103 • QFN36-LQFP48-LQFP144-BGA100 • 速度快 • 代码运行 • 中断响应 • 位操作 • 代码小 • 16位/32位 Thumb2指令 • 功能全 • I2C/SPI/UART • USB/CAN • ADC/PWM • TIMER/WDT/RTC • DMA • 价格低 • 十多元~四十多元人民币
关于STM32F的缺点 • 新上市 • 了解少
STM32F适合做什么? • 替代绝大部分10元以上的8位/16位MCU的应用 • 替代目前常用的嵌入Flash的ARM7 MCU的应用 • 与简单图形及语音相关的应用 • 与小型OS相关的应用 • 与要求较高速度要求相关的应用 • 与低功耗相关的应用
STM32F不合适做什么? • Linux, ucLinux, Windows CE • MPEG… • 1024x768,800x600… • 程序代码大于128K的应用 • 但是…
STM32F系列将在18周后… • EMI • Nand Flash • Nor Flash • SRAM • SDIO • I2S • 2-PWM • …
EK-STM32F简介(1) • 带有仿真器的学习开发套件 • ST LINK II仿真器 • STM32F103VB评估系统 • 演示程序 • 推广期间价格199元/套
EK-STM32F简介(2) • ST LINK II仿真器 • 支持板上STM32F103VB评估系统 • 通过20pin插座支持仿真用户目标系统
EK-STM32F简介(3) • STM32F103VB评估系统 • 电源 • 最小系统 • USART/I2C/SPI(SD) • USB/CAN • Key(GPIO) • LED(GPIO) • LCD(GPIO) • ADC • RTC
EK-STM32F简介(4) • IAR EWARM V4.42支持 • IAR EWARM KS 32K免费测试版本 • IAR EWARM EV 30天试用版本 • IAR EWARM BL 正式版本 • ST LINK II 驱动程序STM32Driver.dll • MedWin3将支持ST Cortex-M3/ARM
模仿/借鉴 - 轻松进入STM32 Cortex-M3世界的捷径 • 关于STM32系列Cortex-M3 • 关于EK-STM32F学习开发套件 • STM32系列应用系统硬件设计 • IAR集成开发环境使用入门 • 怎样编制一个应用程序
系统硬件设计-最小系统(1) • 系统电源电压 • VDD • VDDA • VBAT • Vref+ • Vref- • VSS • 退耦电容 • VDD(5) • VDDA(2) • VBat(1) • Vref(2)
系统硬件设计-最小系统(2) • 启动选择跳线(JP3,JP4) • Flash • System Memory • SRAM • 复位电路 • 电阻 • 电容 • 二极管 • 振荡器时钟 • 4-16MHz • 32K • JTAG接口(JP15)
系统硬件设计-最小系统小结 • 系统电源 • 后备电池 • 退耦电容 • 晶体振荡器 • 复位电路 • 启动选择
系统硬件设计-USART • USART • TX1/RX1: PA9/PA10 • TX2/RX2: PA2/PA3 • RS232电平转换 • ST3232 • 两个DB9 • 选择跳线(JP5) • U0TX/U0RX • U1TX/U1RX
系统硬件设计-SPI(1) • SPI方式访问SD卡 • 选择跳线(JP9) • SD POWER • MISO • MOSI • SCK • CS
系统硬件设计-I2C • I2C访问EEPROM 24C02 • 选择跳线(JP11) • SDA • SCL • 上拉电阻
系统硬件设计-LCD(1) • GPIO实现驱动4 x 16 LCD • 选择跳线(JP12) • Seg 15:8 • Seg 7:0
系统硬件设计-USB(1) • 带有软件使能控制的USB接口 • 选择跳线(JP8) • USB DM • USB DP • USB En
系统硬件设计-CAN • CAN • CAN负载跳线(JP2) • 选择跳线(JP14)
系统硬件设计-Joystick & Key • Joystick(JP18) • Key(JP17)
系统硬件设计-LED • LED • 选择跳线(JP16)
系统硬件设计-ADC • ADC,电位器模拟电压信号 • 选择跳线(JP19)
系统硬件设计-最小系统小结 • USART • SPI • I2C • LCD • USB • CAN • GPIO • ADC
集成开发环境使用入门(1) • 运行IAR EWARM集成开发环境 • 打开工作区/项目
集成开发环境使用入门(2) • 选择器件STM32F10x
集成开发环境使用入门(3) • 选择第三方驱动程序
集成开发环境使用入门(4) • 装载驱动程序动态链接库
集成开发环境使用入门(5) • 执行调试程序命令
集成开发环境使用入门(6) • 进入调试状态 • 跟踪 • 单步 • 断点 • 运行 • 查看数据 • 修改数据 • …
集成开发环境使用入门(7) • 全速运行程序
集成开发环境使用小结 • 运行IAR EWARM集成开发环境 • 打开工作区/项目 • 选择器件STM32F10x • 选择第三方驱动程序 • 装载驱动程序动态链接库 • 执行调试程序命令 • 进入调试状态
怎样编制一个应用程序(1) int main(void) { #ifdef DEBUG debug(); #endif /* System Clocks Configuration */ RCC_Configuration(); /* GPIO ports pins Configuration */ GPIO_Configuration(); /* NVIC Configuration */ NVIC_Configuration(); /* Configure the systick */ SysTick_Config(); LcdShow_Init(); Led_Config(); Button_Config(); while(1) { write_string("STM3"); /*STM32 LCD demo*/ delay();
怎样编制一个应用程序(2) write_string("M32 "); delay(); write_string("32 L"); delay(); write_string("2 LC"); delay(); write_string(" LCD"); delay(); write_string("LCD "); delay(); write_string("CD D"); delay(); write_string("D DE"); delay(); write_string(" DEM"); delay(); write_string("DEMO"); delay(); } }
应用程序和资料 • http://www.manley.com.cn/downfile/EKSTM32FManual.pdf • http://www.manley.com.cn/downfile/installSTLink.exe • http://www.manley.com.cn/downfile/EKSTM32F_examples.exe
服务 • ST MCU技术支持 • 软件 • 硬件 • ST MCU现货销售 • STM32 • STR7,STR9 • uPSD3000 • 开发工具 • IAR JLINK • ST LINK • EK系列学习开发套件 • DK系列评估套件
联系我们 • 万利电子有限公司 • 南京市新模范马路17号02幢二层 • (025) 8323 5502 • http://www.manley.com.cn • 联合万利电子有限公司 • 深圳市南园路68号上步大厦9楼D/E座 • (0755) 8332 3358 • http://www.unimanley.com