标题:
STM32F10x在OTP MCU编程器中的应用
[打印本页]
作者:
520503
时间:
2013-12-2 23:04
标题:
STM32F10x在OTP MCU编程器中的应用
关键字:
ARM
Cortex
ADC
DMA
PWM
OTP
单片机
因其价格低廉、性能成熟在许多小家电中得以广泛应用。硬件编程器通常是其开发过程中必不可少的设备。本案是用于该类单片机的硬件编程器,可对该类单片机实现联机编程和脱机编程;还可以测试该类单片机的工作频率、工作电压等多项参数,一机多用。
1、STM32F101R8主要特性
STM32F10x系列是ST公司推出的基于ARM最新架构Cortex-M3内核的
MCU
。集成了存储器、时钟、复位和
电源
管理电路,DMA控制器,模数/数模转换器,快速IO口,多功能定时器及各种通讯端口。具有多种低功耗模式、在线调试端口。该系列MCU引脚、外设、软件具有高度兼容性,能应用到许多领域中。
本案选用了基本型器件STM32F101R8。这颗器件的主要特性有:
ARM
32位Cortex-M3 CPU,36MHz,单周期乘法和硬件除法器
64KB FLASH,10KB SRAM
2.0~3.6V,POR,PDR,PVD
内部8MHz、40kHz RC振荡器,PLL;外部4~16MHz晶体,32kHz用于RTC和备份域
7通道DMA控制器
3个4通道通用定时器,IC/OC/PWM
2个SPI口,最高18Mbis/s
2个I2C接口,支持SMBus
3个USART,支持ISO7816,LIN,IrDA,Modem
1个16通道12位ADC
低功耗模式:睡眠、停止、待机
SWD和JTAG在线调试
CRC计算,96位唯一ID
51个IO口
小型LQFP64封装
2、编程器硬件设计
编程器通过串口或其它通讯口与配套工具软件通讯,实现对芯片的联机编程。脱机时则通过按键控制对芯片的编程。
编程器硬件框图如图1所示。
图1 编程器硬件框图
编程器产生芯片所需的工作和编程电压,并根据需要控制所有电压的开启和关闭。同时,利用主控制器内部多通道ADC检测供电电压和编程电压,一旦电压发生异常即关断系统。
指示灯编程器用主控制器高驱动能力口线直接控制指示灯的开关,指示编程器的各种工作状态。
通过编程接口对OTP芯片编程,同时还供给芯片工作时钟,检测芯片内部振荡器的频率。
STM32F101R8的应用连接如图2所示。
图2 STM32F应用连接图
其中,CLK提供OTP芯片工作时钟;AD0 ~ AD4共5路电压输入,用于检测系统的工作电源和编程电压;f1_TST和f2_TST则用于检测OTP芯片的内部振荡器频率。RXD、TXD是编程器和上位机之间的通讯接口(UART),SCL和SDA是STM32F10x和OTP芯片之间的通讯接口(I2C,亦可用SPI等)。
L1、L2、L3连接到指示灯,BEEP连接到蜂鸣器,KEY连接到脱机编程按键。其余引脚控制编程电压和编程接口的开关。
3、编程器软件设计
3.1 主流程
软件主流程图如图3所示。
图3 软件主流程图
主流程看起来非常简单,因为程序充分利用了STM32F10x强大的中断能力
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0