STM32 I2C

Similar documents
STM32™ I²C

STM32 PDM

STM32™STM8™Flash

Moto Z

STM32F2xx STM32F4xx ADC

STM32

STM32F407/STM32F417 (IAP)

《將進酒》

河 南 蓝 皮 书 文 化 (2008) 网 络 文 学 主 要 是 指 在 网 上 原 创 的 文 学 作 品 作 为 网 络 文 化 的 主 力 部 分, 网 络 文 学 的 发 展 在 近 年 来 势 不 可 挡 作 为 凭 借 新 兴 媒 介 兴 起 的 文 学, 网 络 文 学 与 传 统

21 flash

STM32 DAC

模量 100, 通用型 气相法硅橡胶 ( 续 ) RBB-70 系列 RBB-2100 系列 RBB 硅橡胶 RBB 硅橡胶 RBB 硅橡胶 RBB 硅橡胶 RBB 硅橡胶 RBB 硅橡胶 RBB 硅橡胶 R

Microsoft Word - AN3259C

STM32Cube_FW_F4?RTC??????BUG

02

API功能简介

YYW1.nps

untitled

穨邱秀玲綜合展望報告.PDF

決議、附帶決議及注意事項

表 决, 审 议 程 序 符 合 有 关 法 律 法 规 和 本 公 司 章 程 的 规 定 3 本 议 案 尚 需 提 交 股 东 大 会 审 议, 与 该 等 交 易 有 利 害 关 系 的 关 联 股 东 将 放 弃 在 股 东 大 会 上 对 相 关 议 案 的 投 票 权 ( 二 ) 公

<4D F736F F D20B9F0D5FEB0ECB7A2A3A A3A93532BAC52E646F63>

103_02.xls

<313032A655A874B2D5B3CCA743BFFDA8FABCD0B7C7AAED2E786C73>

柳州历史上的今天内文改版式.FIT)

生 產 準 備 您 接 近 生 產 之 注 意 事 項 : 備 妥 住 院 用 物, 勿 遠 行 ( 生 產 用 物 包 ) 最 好 有 人 在 家 陪 伴, 或 和 陪 產 者 保 持 連 繫, 有 任 何 狀 況 可 立 即 趕 到 可 做 家 事 散 步 蹲 下 等 運 動, 以 不 太 累

省十二届人大常委会

Q8. 公 營 事 業 機 構 之 公 務 員 兼 具 勞 工 身 分 者, 於 97 年 3 月 19 日 以 前, 原 選 擇 參 加 勞 保, 調 任 其 他 公 營 事 業 機 構 時, 應 改 參 加 公 保 所 謂 調 任 其 他 公 營 事 業 機 構 之 判 別 依 據 ( 或 標

学生工作部处2010年工作总结

天人炁功行入與感應經驗分享

团 学 要 闻 我 校 召 开 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 3 月 17 日, 我 校 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 在 行 政 办 公 楼 五 楼 会 议 室 举 行, 校 团 委 委 员 各 院 ( 系 ) 团 委 书 记 校 学 生

经 济 高 速 增 长 和 其 后 又 比 其 他 发 达 资 本 主 义 国 家 更 为 顺 利 地 克 服 了 石 油 危 机 的 冲 击, 使 日 本 的 市 场 经 济 体 制 在 7 0 ~ 8 0 年 代 赢 得 了 国 际 社 会 的 广 泛 赞 誉 ( 其 间 虽 有 欧 美 国 家

2015 TB-1-06.indd

<4D F736F F D20B5DAC8FDCBC4D5C2D7F7D2B5B4F0B0B82E646F63>


商 业 城 大 华 标 准 70 万 70 万 驰 宏 锌 锗 瑞 华 标 准 140 万 150 万 亚 星 锚 链 江 苏 公 证 天 业 标 准 80 万 80

金 利 科 技 临 时 停 牌 凤 凰 光 学 重 要 事 项 未 公 告, 连 续 停 牌 安 源 煤 业 重 要 事 项 未 公 告, 连 续 停 牌 万 泽 股 份 临 时 停 牌 爱 康 科 技 重 大 事 项, 特 停

郑 州 煤 电 重 要 事 项 未 公 告, 连 续 停 牌 金 圆 股 份 重 大 事 项, 特 停 永 鼎 股 份 重 要 事 项 未 公 告, 连 续 停 牌 长 城 影 视 临 时 停 牌 天 兴 仪 表 临 时 停 牌

Untitled Document

欢迎辞

金 陵 饭 店 中 兴 华 已 报 备 按 照 国 资 委 要 求 定 期 轮 换 天 衡 已 报 备 按 照 国 资 委 要 求 定 期 轮 换 *ST 中 富 中 喜 已 报 备 业 务 约 定 书 到 期 普

辉 丰 股 份 重 大 事 项, 特 停 南 方 轴 承 临 时 停 牌 德 力 股 份 临 时 停 牌 瑞 丰 光 电 临 时 停 牌 联 建 光 电 临 时 停 牌 卡 奴 迪 路 临 时 停 牌

日 涨 幅 偏 离 值 达 到 7% 的 前 五 只 证 券 : 温 氏 股 份 ( 代 码 ) 涨 幅 偏 离 值 :11.68% 成 交 量 :1752 万 股 成 交 金 额 : 万 元 机 构 专 用 机 构 专 用

上市公司股东大会投票信息公告( )

股票代码: 股票简称:*ST新梅 编号:临

东 华 能 源 江 苏 苏 亚 金 诚 已 报 备 因 地 域 及 审 计 时 间 安 排 等 原 因 中 兴 华 已 报 备 客 户 重 新 选 聘 会 计 师 事 务 所 亿 帆 鑫 富 立 信 已 报 备 客

昆 明 机 床 瑞 华 已 报 备 前 任 服 务 年 限 较 长 毕 马 威 华 振 已 报 备 未 与 客 户 未 就 2015 年 审 计 收 费 达 成 一 致 意 见 中 国 核 电 天 健 已 报 备 定

光 一 科 技 重 大 事 项, 特 停 茂 业 商 业 重 要 事 项 未 公 告, 连 续 停 牌 浙 富 控 股 重 大 事 项, 特 停 键 桥 通 讯 重 大 事 项, 特 停 黑 牛 食 品 重 大 事 项, 特 停

卧 龙 地 产 重 要 事 项 未 公 告, 连 续 停 牌 春 兴 精 工 临 时 停 牌 *ST 沧 大 重 要 事 项 未 公 告, 连 续 停 牌 天 地 源 重 要 事 项 未 公 告, 连 续 停 牌 汇 冠 股 份

证券代码:000776   股票简称:延边公路   编号:2003-00

金 圆 股 份 重 大 事 项, 特 停 长 城 影 视 临 时 停 牌 天 兴 仪 表 临 时 停 牌 商 赢 环 球 重 要 事 项 未 公 告, 连 续 停 牌 荣 安 地 产 临 时 停 牌 中 南 文 化

<453A5CCEC4B5B55C C41CBAAB2F5D4C6BDD3BFDACAB9D3C3CBB5C3F756312E305F E646F63>

目录 简介... 1 修订历史... 2 运行微转换器加载器... 3 物理接口... 3 定义数据传输包格式... 3 命令... 4 命令示例... 5 LFSR 代码示例... 6 修订历史 2013 年 1 月 修订版 0 至修订版 A 更改 简介 部分 年 9 月 修订

HD ( ) 18 HD ( ) 18 PC 19 PC 19 PC 20 Leica MC170 HD Leica MC190 HD 22 Leica MC170 HD Leica MC190 HD Leica MC170 HD

PowerPoint 演示文稿

恒生银行 ( 中国 ) 银行结构性投资产品表现报告 步步稳 系列部分保本投资产品 产品编号 起始日 到期日 当前观察期是否发生下档触发事件 挂钩标的 最初价格 * 最新价格 累积回报 OTZR 年 5 月 5 日 2018 年 5 月 7 日 3 否 728 HK Equity 3.7

STM32 USART

附件四:

STM32F3??ADC??????????ADC

STM32F103xxADPCM

一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页

EEPROM Emulation Driver for the Kinetis E Series Microcontrollers Application Note

AN 502: Implementing an SMBus Controller in MAX II CPLDs

WF512_0x0-A-DS.fm

手册 doc

OTZR 年 12 月 13 日 2017 年 12 月 13 日 2 否 中国电信 不适用 中国移动 华能国际 EFZR 年 2 月 13 日 2018 年 2 月 13 日 1 否 盈富基金

N79A8211系列单片机内部NVM

TIA 222 G.pdf

STM32F2xx EEPROM

办函[2004]号

< Essential LEDtube > | < Philips >

华夏沪深三百 EFZR 年 9 月 14 日 2018 年 9 月 14 日 1 否 H 股指数上市基金 不适用 华夏沪深三百 EFZR 年 9 月 14 日 2018 年 9 月 14 日 1

欧盟符合性声明 根据 ATEX 指令 2014/34/ 欧盟用于点燃保护类型 d 或 de 的交流电机用于区域 1, 或 t 用于区域 21 B 版本 : 06/2018 文件 : KonfErkl_ATEX_d_t_B320_1300_05_CN Bauer Gear Mo

(Load Project) (Save Project) (OffLine Mode) (Help) Intel Hex Motor

获取 Access Token access_token 是接口的全局唯一票据, 接入方调用各接口时都需使用 access_token 开发者需要进行妥善保存 access_token 的存储至少要保留 512 个字符空间 access_token 的有效期目前为 2 个小时, 需定时刷新, 重复

<4D F736F F D20C7B0CBC4D5C2D7F7D2B5CCE22E646F6378>

管脚描述 X1 X KHz 晶振管脚 GND 地 RST 复位脚 I/O 数据输入 / 输出引脚 SCLK 串行时钟 Vcc1,Vcc2 电源供电管脚 订单信息部分 # 描述 DS1302 串行时钟芯片 8 脚 DIP DS1302S 串行时钟芯片 8 脚 SOIC 200mil DS

Microsoft PowerPoint - BECKHOFF技术_ADS通讯 [Compatibility Mode]

武汉华信高新技术股份有限公司

ISO h.PDF

僑生(含港澳生)及外籍生參加全民健康保險實施要點

运用多媒体提升实验教学有效性的研究.doc

Microsoft Word - LMB402CBC-AppNote-V0.1.doc

Microsoft Word - SAM-BA.doc

Tel:


目 前 看, 國 內 股 市 滬 綜 指 週 二 放 量 收 升 3.34%, 經 過 短 期 盤 整, 技 術 性 反 彈 條 件 已 具 備, 而 A 股 納 入 MSCI 指 數 的 概 率 上 升, 對 市 場 形 成 潛 在 利 好 支 持 風 險 提 示 : 市 場 目 前 仍 舊 虛

Microsoft Word - 01民政部門-綜合-定稿0416.doc

untitled


Application Note Transient Voltage Suppressors (TVS) for 表 1 VISHAY 的 SM6T 系列的电特性 25 C 型号 击穿电压 器件标识码 V BR AT I T I T 测试电流 (ma) 关态电压 V RM 漏电流 I RM AT V

MW100_NEW

生 產 準 備 您 接 近 生 產 之 注 意 事 項 : 備 妥 住 院 用 物, 勿 遠 行 ( 生 產 用 物 包 ) 最 好 有 人 在 家 陪 伴, 或 和 陪 產 者 保 持 連 繫, 有 任 何 狀 況 可 立 即 趕 到 可 做 家 事 散 步 蹲 下 等 運 動, 以 不 太 勞

FLASH地址空间分配

2014 年 87 月 259 日 K-HW508K / HW516K K-NL408K / NL416K 最新固件版本 :V3.200 容量 供应商 系列 型号 格式 可用性 兼容性能 备注 500G Seagate Pipeline HD2 ST CS - 可用 Seagate Pi

2 04%; 6 62, , , GDP50162, ( ) 2014, , ; , 9 9 ; 82558, 300/10, 158, 0 57/10 ; 25 73/10 ; 4 68 ( )

ICD ICD ICD ICD ICD

Chapter #

标题

SM2965

Transcription:

应用笔记 STM32 自举程序中使用的 I2C 协议 前言 本应用笔记说明了 STM32 微控制器自举程序中使用的 I2C 协议 它详细说明了每个支持的指令 若需器件自举程序 I2C 硬件资源和要求的更多信息, 请参考应用笔记 AN2606 STM32 微控制器系统存储器自举模式. 表 1. 适用产品 类型 料号或产品系列 微控制器 STM32F0 系列 : STM32F042xx STM32F072xx STM32F3 系列 : STM32F318xx STM32F328xx STM32F334xx STM32F358xx STM32F378xx STM32F303x4(6/8) STM32F4 系列 : STM32F401xx STM32F411xx STM32F405xx STM32F407xx STM32F415xx STM32F417xx STM32F429xx STM32F439xx 2014 年 5 月 DocID024055 Rev 2 1/49 www.st.com

目录 AN4221 目录 1 I2C 自举程序代码序列......................................... 5 2 自举程序指令集.............................................. 6 2.1 Get 指令................................................... 7 2.2 Get version 指令............................................ 10 2.3 Get ID 指令.................................................11 2.4 Read memory 指令.......................................... 13 2.5 Go 指令.................................................. 16 2.6 Write memory 指令.......................................... 19 2.7 Erase memory 指令......................................... 22 2.8 Write protect 指令........................................... 25 2.9 Write unprotect 指令......................................... 27 2.10 Readout protect 指令........................................ 28 2.11 Readout unprotect 指令...................................... 30 2.12 No-Stretch Write memory 指令................................. 32 2.13 No-Stretch Erase memory 指令................................ 35 2.14 No-Stretch Write protect 指令.................................. 38 2.15 No-Stretch Write unprotect 指令................................ 41 2.16 No-Stretch Readout protect 指令............................... 42 2.17 No-Stretch Readout unprotect 指令............................. 44 3 自举程序协议版本演进....................................... 47 4 修订历史.................................................. 48 2/49 DocID024055 Rev 2

表格索引 表格索引 表 1. 适用产品................................................................ 1 表 2. I2C 自举程序指令......................................................... 6 表 3. 自举程序协议版本........................................................ 47 表 4. 文档修订历史........................................................... 48 DocID024055 Rev 2 3/49 3

图片索引 AN4221 图片索引 图 1. 使用 I2C 的 STM32 自举程序................................................ 5 图 2. Get 指令 : 主机端......................................................... 8 图 3. Get 指令 : 器件端......................................................... 8 图 4. Get version: 主机端...................................................... 10 图 5. Get version: 器件端...................................................... 11 图 6. Get ID 指令 : 主机端...................................................... 12 图 7. Get ID 指令 : 器件端...................................................... 12 图 8. Read memory 指令 : 主机端................................................ 14 图 9. Read memory 指令 : 器件端................................................ 15 图 10. Go 指令 : 主机端......................................................... 17 图 11. Go 指令 : 器件端......................................................... 18 图 12. Write memory 指令 : 主机端................................................ 20 图 13. Write memory 指令 : 器件端................................................ 21 图 14. Erase memory 指令 : 主机端............................................... 23 图 15. Erase memory 指令 : 器件端............................................... 24 图 16. Write protect 指令 : 主机端................................................. 25 图 17. Write protect 指令 : 器件端................................................. 26 图 18. Write unprotect 指令 : 主机端............................................... 27 图 19. Write unprotect 指令 : 器件端............................................... 28 图 20. Readout protect 指令 : 主机端.............................................. 29 图 21. Readout protect 指令 : 器件端.............................................. 29 图 22. Readout unprotect 指令 : 主机端............................................ 30 图 23. Readout unprotect 指令 : 器件端............................................ 31 图 24. No-Stretch Write memory 指令 : 主机端....................................... 33 图 25. No-Stretch Write memory 指令 : 器件端....................................... 34 图 26. No-Stretch Erase memory 指令 : 主机端...................................... 36 图 27. No-Stretch Erase memory 指令 : 器件端...................................... 37 图 28. No-Stretch Write protect 指令 : 主机端........................................ 39 图 29. No-Stretch Write protect 指令 : 器件端........................................ 40 图 30. No-Stretch Write unprotect 指令 : 主机端...................................... 41 图 31. No-Stretch Write unprotect 指令 : 器件端...................................... 42 图 32. NoStretch Readout protect 指令 : 主机端...................................... 43 图 33. No-Stretch Readout protect 指令 : 器件端..................................... 44 图 34. No-Stretch Readout unprotect 指令 : 主机端................................... 45 图 35. No-Stretch Readout unprotect 指令 : 器件端................................... 46 4/49 DocID024055 Rev 2

I2C 自举程序代码序列 1 I2C 自举程序代码序列 图 1. 使用 I2C 的 STM32 自举程序 注 : 在 AN2606 中规定了每个产品自举程序的 I2C 从地址 进入系统存储器自举模式后, 并且此时 STM32 微控制器已配置好 ( 若需更详细信息, 请参考您的 STM32 系统存储器自举模式应用笔记 ), 自举程序代码开始扫描 I2C_SDA 线引脚, 等待检测它自身在总线上的地址 检测到之后, I2C 自举程序固件开始接收主机指令 DocID024055 Rev 2 5/49 48

自举程序指令集 AN4221 2 自举程序指令集 从 V1.1 协议版本开始支持 "No Stretch" 指令, 当自举程序完成操作之前主机必须长时间等待时, 它可以支持更好的进行指令管理 只要可能, 强烈建议使用 "No Stretch" 指令而不使用相应的普通指令 支持的指令列于表 2 中 指令 (1) 表 2. I2C 自举程序指令 指令代码 指令说明 Get (2) 0x00 获取自举程序当前版本所支持的版本和允许的指令 Get Version (2) 0x01 获取自举程序版本 Get ID (2) 0x02 获取芯片 ID Read Memory (2) 0x11 从存储器读取最多 256 字节, 由应用指定起始地址 Go (3) 0x21 跳转到内部 Flash 中的用户应用代码 Write Memory (3) 0x31 向存储器写入最多 256 字节, 由应用指定起始地址 No-Stretch Write Memory (3)(4) 0x32 向存储器写入最多 256 字节, 由应用指定起始地址 当操作正在进行时返回忙状态 Erase 0x44 使用双字节寻址模式擦除一个到所有的 Flash 页面或扇区 No-Stretch Erase (3)(4) 0x45 Write Protect 0x63 对一些扇区使能写保护 使用双字节寻址模式擦除一个到所有的 Flash 页面或扇区, 当操作正在进行时返回忙状态 No-Stretch Write Protect (4) 0x64 对一些扇区使能写保护, 当操作正在进行时返回忙状态 Write Unprotect 0x73 对所有 Flash 扇区禁用写保护 No-Stretch Write Unprotect (4) 0x74 Readout Protect 0x82 使能读保护 对所有 Flash 扇区禁用写保护, 当操作正在进行时返回忙状态 No-Stretch Readout Protect (4) 0x83 使能读保护, 当操作正在进行时返回忙状态 Readout Unprotect (2) 0x92 禁用读保护 No-Stretch Readout Unprotect (2)(4) 0x93 禁用读保护, 当操作正在进行时返回忙状态 1. 若收到了拒绝指令, 或指令执行期间发生了错误, 则自举程序会发送 NACK 字节, 然后返回到检查指令状态 2. 读保护 - 当 RDP ( 读保护 ) 选项激活时, 仅能使用此有限子集的指令 所有其它指令都会被 NACK, 对器件没有作用 取 消 RDP 之后, 其它指令变为激活 3. 若需了解哪些存储器空间可执行这些指令, 请参考 STM32 产品数据手册和 AN2606:STM32 微控制器系统存储器自举模 式 4. 仅 V1.1 的 I2C 协议才支持 No-Stretch 指令 6/49 DocID024055 Rev 2

自举程序指令集 No-Stretch 指令 当自举程序执行操作时, No-Stretch 指令可执行 Write Erase Write Protect Write Unprotect Read Protect Read Unprotect 操作而不延长 I2C 线 当自举程序执行的操作需要等待时间时, 这些指令允许与总线上的其它器件通信 这些指令与标准指令的不同之处在于指令结束 : 当主机在指令结束要求 ACK/NACK 时, 自举程序不会延长 I2C 线, 而是使用第三种状态 Busy (0x76) 来响应 当主机收到 Busy 状态时, 它会再对状态轮询, 读取一个字节, 直到收到 ACK 或 NACK 响应 通信安全 从编程主机到器件的所有通信都经过校验和验证 接收的数据字节块都经过异或计算 所有字节异或计算后算出一个字节, 加到每次通信的末尾 ( 校验和字节 ) 对所有收到的字节 数据 + 校验和 做异或计算, 最后结果必须为 0x00 对每个指令, 主机会发送一个字节及其补码 ( 异或 = 0x00) 每个包或接受 (ACK 应答 ) 或丢弃 (NACK 应答 ): ACK = 0x79 NACK = 0x1F 对于 No-Stretch 指令, 当操作正在进行时, 会发送 Busy 状态而不是 ACK 或 NACK: BUSY= 0x76 注 : 主机的帧可为下列之一 : 小心 : 发送指令帧 : 主机作为主发送端发起通信, 向器件发送两字节 : 命令代码 + XOR 等待 ACK/NACK 帧 : 主机作为主接收端发起 I2C 通信, 从器件接收一个字节 :ACK 或 NACK 或 BUSY 接收数据帧 : 主机作为主接收端发起 I2C 通信, 从器件收到响应 收到的字节数取决于指令 发送数据帧 : 主机作为主发送端发起 I2C 通信, 向器件发送需要的字节 发送的字节数取决于指令 I2C 通信实现了超时机制, 这是自举程序指令正确执行所必需要考虑的 此超时在同一指令的两个 I2C 帧间实现 例如, 对于 Write memory 指令, 在指令发送帧和地址存储器发送帧之间有超时机制 此外也将在同一 I2C 帧中的两个连续数据接收或发送实例之间插入同一超时周期 如果超时周期已过, 则生成系统复位以避免自举程序崩溃 有关每种 STM32 产品的 I2C 超时值, 请参考 AN2606, I2C 自举程序时序特性 一节 2.1 Get 指令 Get 指令可帮您得到自举程序版本及所支持的指令 当自举程序收到 Get 指令时, 它将自举程序版本和所支持的指令代码发送给主机, 如图 2 中所示 DocID024055 Rev 2 7/49 48

自举程序指令集 AN4221 图 2. Get 指令 : 主机端 图 3. Get 指令 : 器件端 8/49 DocID024055 Rev 2

自举程序指令集 STM32 发送的字节如下 : 对于 I2C 协议 V1.0: 字节 1:ACK 字节 2:N = 11 = 后续字节数 - 1, 不包括当前字节和 ACK 字节 3: 自举程序版本 0x10 = 1.0 版本 字节 4:0x00 - Get 指令 字节 5:0x01 - Get Version 字节 6:0x02 - Get ID 字节 7:0x11 - Read Memory 指令 字节 8:0x21 - Go 指令 字节 9:0x31 - Write Memory 指令 字节 10:0x44 - Erase 指令 字节 11:0x63 - Write Protect 指令 字节 12:0x73 - Write Unprotect 指令 字节 13:0x82 - Readout Protect 指令 字节 14:0x92 - Readout Unprotect 指令 字节 15:ACK For I2C protocol V1.1: 字节 1:ACK 字节 2:N = 17 = 后续字节数 - 1, 不包括当前字节和 ACK 字节 3: 自举程序版本 0x11 = 1.1 版本 字节 4:0x00 - Get 指令 字节 5:0x01 - Get Version 字节 6:0x02 - Get ID 字节 7:0x11 - Read Memory 指令 字节 8:0x21 - Go 指令 字节 9:0x31 - Write Memory 指令 字节 10:0x44 - Erase 指令 字节 11:0x63 - Write Protect 指令 字节 12:0x73 - Write Unprotect 指令 字节 13:0x82 - Readout Protect 指令 字节 14:0x92 - Readout Unprotect 指令 字节 15:0x32 - No-Stretch Write Memory 指令 字节 16:0x45 - No-Stretch Erase 指令 字节 17:0x64 - No-Stretch Write Protect 指令 字节 18:0x74 - No-Stretch Write Unprotect 指令 字节 19:0x83 - No-Stretch Readout Protect 指令 字节 20:0x93 - No-Stretch Readout Unprotect 指令 字节 21:ACK DocID024055 Rev 2 9/49 48

自举程序指令集 AN4221 2.2 Get version 指令 Get Version 指令用于获取 I2C 自举程序版本 当自举程序收到该指令时, 它会向主机发送如下信息 ( 自举程序版本 ) 图 4. Get version: 主机端 1. GV = Get Version. STM32 发送的字节如下 : 字节 1:ACK 字节 2: 自举程序版本 (0 < 版本 255)( 例如, 0x10 = 1.0 版本 ) 字节 3:ACK 10/49 DocID024055 Rev 2

自举程序指令集 图 5. Get version: 器件端 1. GV = Get Version 2.3 Get ID 指令 Get ID 指令用于得到芯片 ID ( 标识 ) 的版本 当自举程序收到该指令时, 它会向主机发送产品 ID STM32 器件发送的字节如下 : 字节 1:ACK 字节 2:N = 字节数 - 1 ( 对于 STM32, N = 1), 不包括当前字节和 ACK 字节 3-4:PID ( 产品 ID) 字节 3 = MSB 字节 4 = LSB 字节 5:ACK DocID024055 Rev 2 11/49 48

自举程序指令集 AN4221 图 6. Get ID 指令 : 主机端 1. GID = Get ID. 图 7. Get ID 指令 : 器件端 1. GID = Get ID. 12/49 DocID024055 Rev 2

自举程序指令集 2.4 Read memory 指令 Read Memory 指令用于从任何有效存储器地址读取数据 当自举程序收到 Read Memory 指令时, 它会向应用程序发送 ACK 字节 然后, 自举程序等待一个 4 字节的地址 ( 字节 1 为地址 MSB, 字节 4 为 LSB) 及校验和字节, 之后它会检查收到的地址 若地址有效且校验和正确, 则自举程序发送 ACK 字节 ; 否则它发送 NACK 字节并终止该指令 若地址有效且校验和正确, 则自举程序等待要发送的字节数 (N 字节 ) 及其补码字节 ( 校验和 ) 若校验和正确, 则自举程序从收到的地址开始向应用发送需要的数据 若校验和不正确, 则它会在终止指令之前发送 NACK 主机向 STM32 发送的字节如下 : 1. 字节 1-2:0x11+0xEE 2. 等待 ACK 3. 字节 3-6: 起始地址 ( 字节 3:MSB, 字节 6:LSB) 4. 字节 7: 校验和 :XOR ( 字节 3 字节 4 字节 5 字节 6) 5. 等待 ACK 6. 字节 8: 要读取的字节数 - 1 (0 < N 255) 7. 字节 9: 校验和 :XOR 字节 8 ( 字节 8 的补码 ) DocID024055 Rev 2 13/49 48

自举程序指令集 AN4221 图 8. Read memory 指令 : 主机端 1. RM = Read Memory. 14/49 DocID024055 Rev 2

自举程序指令集 图 9. Read memory 指令 : 器件端 1. RM = Read Memory. DocID024055 Rev 2 15/49 48

自举程序指令集 AN4221 2.5 Go 指令 Go 指令用于从应用程序指定的地址开始执行已下载的代码或任何其它代码 当自举程序收到 Go 指令时, 它会向应用发送 ACK 字节 然后, 自举程序等待一个 4 字节的地址 ( 字节 1 为地址 MSB, 字节 4 为 LSB) 及校验和字节, 之后检查收到的地址 若地址有效且校验和正确, 则自举程序发送 ACK 字节 ; 否则它发送 NACK 字节并终止该指令 注 : 若地址有效且校验和正确, 则自举程序固件会执行如下操作 : 1. 将自举程序所用外设的寄存器初始化至其默认复位值 2. 初始化用户应用的主堆栈指针 3. 跳转至收到的 ' 地址 + 4' 所编程的存储器位置 ( 对应于应用复位处理程序的地址 ) 例如, 若收到的地址为 0x08000000, 则自举程序跳转至编程为 0x08000004 地址的存储器位置 总之, 主机发送基址, 应用编程跳转 仅当用户应用正确设置了指向应用地址的向量表时, 跳转到应用才能工作 主机向 STM32 发送的字节如下 : 1. 字节 1:0x21 2. 字节 2:0xDE 3. 等待 ACK 4. 字节 3 至字节 6: 起始地址 字节 3:MSB 字节 6:LSB 5. 字节 7: 校验和 :XOR ( 字节 3 字节 4 字节 5 字节 6) 6. 等待 ACK 16/49 DocID024055 Rev 2

自举程序指令集 图 10. Go 指令 : 主机端 DocID024055 Rev 2 17/49 48

自举程序指令集 AN4221 图 11. Go 指令 : 器件端 18/49 DocID024055 Rev 2

自举程序指令集 2.6 Write memory 指令 Write Memory 指令用于向 RAM Flash 选项字节区域的任何有效存储器地址 ( 见下面的注 :) 写入数据 当自举程序收到 Write Memory 指令时, 它会向应用发送 ACK 字节 之后自举程序等待一个 4 字节的地址 ( 字节 1 为地址 MSB, 字节 4 为 LSB) 及校验和字节, 然后校验收到的地址 若收到的地址有效且校验和正确, 则自举程序发送 ACK 字节 ; 否则它发送 NACK 字节并终止该指令 若地址有效且校验和正确, 则自举程序会 : 1. 得到一个字节 N, 它包含要接收的数据字节数 2. 接收 ((N + 1) 字节 ) 用户数据及其校验和 (N 和所有数据字节的异或 ) 3. 从收到的地址开始将用户数据编程至存储器 在该指令结束时, 若写入操作成功, 则自举程序向应用发送 ACK 字节 ; 否则它发送 NACK 字节并终止指令 若 Write Memory 指令用于选项字节区域, 则在写入新值之前会擦除所有选项 在该指令结束时, 自举程序会生成系统复位, 以使选项字节的新配置生效 写入选项字节的最大块长度取决于 STM32 产品, 且从主机收到的地址必须为选项字节区域的起始地址 若需选项字节的更多信息, 请参考 STM32 产品参考手册 注 : 写入 RAM 或 Flash 的最大块长度为 256 字节 当写入 RAM 时, 请注意不要与自举程序固件使用的第一个 RAM 存储器重叠 当向写保护的扇区执行写操作时, 不会返回错误 主机向 STM32 发送的字节如下 : 1. 字节 1:0x31 2. 字节 2:0xCE 3. 等待 ACK 4. 字节 3 至字节 6: 起始地址 字节 3:MSB 字节 6:LSB 5. 字节 7: 校验和 :XOR (Byte3 Byte4 Byte5 Byte6) 6. 等待 ACK 7. 字节 8: 要接收的字节数 - 1 (0 < N 255) 8. N +1 数据字节 :( 最大 256 字节 ) 9. 校验和字节 :XOR (N, N+1 数据字节 ) 10. 等待 ACK DocID024055 Rev 2 19/49 48

自举程序指令集 AN4221 图 12. Write memory 指令 : 主机端 1. WM = Write Memory. 20/49 DocID024055 Rev 2

自举程序指令集 图 13. Write memory 指令 : 器件端 1. WM = Write Memory. DocID024055 Rev 2 21/49 48

自举程序指令集 AN4221 2.7 Erase memory 指令 Erase Memory 指令可使主机用双字节寻址模式擦除 Flash 页面或扇区 当自举程序收到 Erase Memory 指令时, 它会向主机发送 ACK 字节 然后自举程序接收两个字节 ( 要擦除的页面或扇区数 ) Flash 页面或扇区码 ( 每个都以双字节编码, MSB 在前 ) 校验和字节 ( 所发送字节的 XOR) 若校验和正确, 则自举程序擦除存储器并向主机发送 ACK 字节 ; 否则它向主机发送 NACK 字节, 指令终止 Erase Memory 指令规范 自举程序收到半个字 ( 两个字节 ), 它包含 N 要擦除的页面或扇区数 对于 N = 0xFFFY ( 其中 Y 为 0 到 F), 会执行特殊擦除 (0xFFFF 为全局批量擦除, 0xFFFE 和 0xFFFD 分别为批量擦除 bank1 和 bank2) 注 : 注 : 一些产品不支持批量擦除特性, 在这种情况下您发送的擦除指令可使用所有页面或扇区的数目 代码 0xFFFC 到 0xFFF0 为保留值 对于 0 N < 页面或扇区最大数的其它值, 会擦除 N + 1 个页面或扇区 自举程序接收 : 对于特殊擦除的情况, 一个字节 : 之前字节的校验和 0x00 对应 0xFFFF, 全局擦除 若擦除 N+1 个页面或扇区, 则自举程序接收 (2 x (N + 1)) 个字节, 其中的每半个字都包含了一个双字节编码的页面或扇区号, MSB 在前 这时所有前面字节的校验和都在一个字节接收 注 : 当向写保护的扇区执行擦除操作时, 不会返回错误 页面或扇区的最大数目与产品有关, 因此应提起注意 主机向 STM32 发送的字节如下 : 1. 字节 1:0x44 2. 字节 2:0xBB 3. 等待 ACK 4. 字节 3-4: 特殊擦除 (0xFFFx), 或者 要擦除的页面或扇区数 (N+1, 其中 :0 N < 页面或扇区的最大数目 ) 5. 等待 ACK ( 如未要求特殊擦除 ) 6. 其余字节 : 对于特殊擦除 (0x00), 为字节 3-4 的校验和, 或者 (2 x (N + 1)) 字节 ( 双字节编码的页面或扇区号, MSB 在前 ), 然后是字节 3-4 与其后所有字节的校验和 ) 7. 等待 ACK 22/49 DocID024055 Rev 2

自举程序指令集 图 14. Erase memory 指令 : 主机端 1. ER = Erase Memory. 注 : 一些产品不支持特殊擦除特性 对于这些产品, 此命令将被 NACK DocID024055 Rev 2 23/49 48

自举程序指令集 AN4221 图 15. Erase memory 指令 : 器件端 1. ER = Erase Memory. 2. 若 STM32 产品不支持特殊擦除指令, 则请求的特殊擦除指令将被 NACK 24/49 DocID024055 Rev 2

自举程序指令集 2.8 Write protect 指令 Write Protect 指令用于对部分或全部 Flash 扇区启用写保护 当自举程序收到 Write Protect 指令时, 它会向主机发送 ACK 字节 之后自举程序等待要接收的字节数 ( 要保护的扇区 ), 然后从应用收到 Flash 扇区码 在 Write Protect 指令结束时, 自举程序会发送 ACK 字节并生成系统复位, 以使选项字节的新配置生效 注 : Write Protect 指令流程如下 : 自举程序收到一个字节, 它包含 N 要写保护的扇区数 - 1 (0 N 255) 自举程序收到 (N + 1) 字节, 其中每个字节都包含扇区码 扇区总数和要保护的扇区号都不会被校验 这意味着即使指令的保护扇区数错误, 或扇区号错误, 都不会有错误返回 若执行了第二个 Write Protect 指令, 则第一个指令已经保护的 Flash 扇区会被解除保护, 只有第二个 Write Protect 指令内的扇区才会被保护 图 16. Write protect 指令 : 主机端 1. WP = Write Protect. DocID024055 Rev 2 25/49 48

自举程序指令集 AN4221 图 17. Write protect 指令 : 器件端 1. WP = Write Protect. 26/49 DocID024055 Rev 2

自举程序指令集 2.9 Write unprotect 指令 Write Unprotect 指令用于对全部 Flash 扇区禁用写保护 当自举程序收到 Write Unprotect 指令时, 它会向主机发送 ACK 字节 之后自举程序对全部 Flash 扇区禁用写保护, 然后发送 ACK 字节 会生成系统复位以使选项字节的新配置生效 图 18. Write unprotect 指令 : 主机端 1. WPUN = Write Unprotect. DocID024055 Rev 2 27/49 48

自举程序指令集 AN4221 图 19. Write unprotect 指令 : 器件端 1. WPUN = Write Unprotect. 2.10 Readout protect 指令 Readout Protect 指令用于启用 Flash 的读保护 当自举程序收到 Readout Protect 指令时, 它会向主机发送 ACK 字节并对 Flash 启用读保护 在 Readout Protect 指令结束时, 自举程序会发送 ACK 字节并生成系统复位, 以使选项字节的新配置生效 28/49 DocID024055 Rev 2

自举程序指令集 图 20. Readout protect 指令 : 主机端 1. RDP_PRM = Readout Protect. 图 21. Readout protect 指令 : 器件端 1. RDP_PRM = Readout Protect. DocID024055 Rev 2 29/49 48

自举程序指令集 AN4221 2.11 Readout unprotect 指令 注 : Readout Unprotect 指令用于禁用 Flash 的读保护 当自举程序收到 Readout Unprotect 指令时, 它会向主机发送 ACK 字节 之后自举程序会对全部 Flash 禁用读保护, 这会导致擦除全部 Flash 若该操作不成功, 则自举程序会发送 NACK, 读保护仍然有效 此操作与擦除所有 Flash 页面或扇区 ( 或者说, 若产品支持, 执行批量擦除 ) 所花费的时间相同, 因此主机应等待, 直到此操作结束 关于 Flash 擦除的时序, 请参考产品数据手册 在 Readout Unprotect 指令结束时, 自举程序会发送 ACK 并生成系统复位, 以使选项字节的新配置生效 图 22. Readout unprotect 指令 : 主机端 1. RDU_PRM = Readout Unprotect. 30/49 DocID024055 Rev 2

自举程序指令集 图 23. Readout unprotect 指令 : 器件端 1. RDU_PRM = Readout Unprotect. DocID024055 Rev 2 31/49 48

自举程序指令集 AN4221 2.12 No-Stretch Write memory 指令 No-Stretch Write Memory 指令用于向任何有效存储器区域写入数据 当自举程序收到 No-Stretch Write Memory 指令时, 它会向应用发送 ACK 字节 之后自举程序等待一个 4 字节的地址 ( 字节 1 为地址 MSB, 字节 4 为 LSB) 及校验和字节, 然后校验收到的地址 若收到的地址有效且校验和正确, 则自举程序发送 ACK 字节 ; 否则它发送 NACK 字节并终止该指令 若地址有效且校验和正确, 则自举程序会 : 1. 得到一个字节 N, 它包含要接收的数据字节数 2. 接收 ((N + 1) 字节 ) 用户数据及其校验和 (N 和所有数据字节的异或 ) 3. 从收到的地址开始将用户数据编程至存储器 4. 当操作正在进行时, 返回忙状态 (0x76) 在该指令结束时, 若写入操作成功, 则自举程序向应用发送 ACK 字节 ; 否则它发送 NACK 字节并终止指令 注 : 若 No-Stretch Write Memory 指令用于选项字节区域, 则自举程序会生成系统复位, 以使选项字节的新配置生效 写入存储器的最大块长度为 256 字节, 但对于选项字节的情况, 最大长度取决于 STM32 产品, 且从主机收到的地址必须为选项字节区域的起始地址 若需更多信息, 请参考 STM32 产品参考手册 当向写保护的扇区执行写操作时, 不会返回错误 主机向 STM32 发送的字节如下 : 1. 字节 1:0x32 2. 字节 2:0xCD 3. 等待 ACK 4. 字节 3 至字节 6: 起始地址 字节 3:MSB 字节 6:LSB 5. 字节 7: 校验和 :XOR (Byte3 Byte4 Byte5 Byte6) 6. 等待 ACK 7. 字节 8: 要接收的字节数 - 1 (0 < N 255) 8. N +1 数据字节 :( 最大 256 字节 ) 9. 校验和字节 :XOR (N, N+1 数据字节 ) 10. 等待 ACK ( 若忙则继续轮询 ACK/NACK) 32/49 DocID024055 Rev 2

自举程序指令集 图 24. No-Stretch Write memory 指令 : 主机端 1. WM = Write Memory. DocID024055 Rev 2 33/49 48

自举程序指令集 AN4221 图 25. No-Stretch Write memory 指令 : 器件端 1. WM = Write Memory. 34/49 DocID024055 Rev 2

自举程序指令集 2.13 No-Stretch Erase memory 指令 No-Stretch Erase Memory 指令可使主机用双字节寻址模式擦除 Flash 页面或扇区 当自举程序收到 Erase Memory 指令时, 它会向主机发送 ACK 字节 然后自举程序接收两个字节 ( 要擦除的页面或扇区数 ) Flash 页面或扇区码 ( 每个都以双字节编码, MSB 在前 ) 校验和字节 ( 所发送字节的 XOR) 若校验和正确, 则自举程序擦除存储器 ( 当操作正在进行时, 返回忙状态 (0x76)), 并向主机发送 ACK 字节 ; 否则它向主机发送 NACK 字节, 指令终止 No-Stretch Erase Memory 指令规范 自举程序收到半个字 ( 两个字节 ), 它包含 N 要擦除的页面或扇区数 对于 N = 0xFFFY ( 其中 Y 为 0 到 F), 会执行特殊擦除 (0xFFFF 为全局批量擦除, 0xFFFE 和 0xFFFD 分别为批量擦除 bank1 和 bank2) 注 : 注 : 一些产品不支持批量擦除特性, 在这种情况下您发送的擦除指令可使用所有页面或扇区的数目 代码 0xFFFC 到 0xFFF0 为保留值 对于 0 N < 页面或扇区最大数的其它值, 会擦除 N + 1 个页面或扇区 自举程序接收 : 对于特殊擦除的情况, 一个字节 : 之前字节的校验和 0x00 对应 0xFFFF, 全局擦除 若擦除 N+1 个页面或扇区, 则自举程序接收 (2 x (N + 1)) 个字节, 其中的每半个字都包含了一个双字节编码的页面或扇区号, MSB 在前 这时所有前面字节的校验和都在一个字节接收 注 : 当向写保护的扇区执行擦除操作时, 不会返回错误 页面或扇区的最大数目与产品有关, 因此应提起注意 主机向 STM32 发送的字节如下 : 1. 字节 1:0x44 2. 字节 2:0xBB 3. 等待 ACK 4. 字节 3-4: 特殊擦除 (0xFFFx), 或者 要擦除的页面或扇区数 (N+1, 其中 :0 N < 页面或扇区的最大数目 ) 5. 等待 ACK ( 如未要求特殊擦除 ) 6. 其余字节 : 对于特殊擦除 (0x00), 为字节 3-4 的校验和, 或者 (2 x (N + 1)) 字节 ( 双字节编码的页面或扇区号, MSB 在前 ), 然后是字节 3-4 与其后所有字节的校验和 ) 7. 等待 ACK ( 若忙则继续轮询 ACK/NACK) DocID024055 Rev 2 35/49 48

自举程序指令集 AN4221 图 26. No-Stretch Erase memory 指令 : 主机端 1. ER = Erase Memory. 注 : 一些产品不支持特殊擦除特性 对于这些产品, 此命令将被 NACK 36/49 DocID024055 Rev 2

自举程序指令集 图 27. No-Stretch Erase memory 指令 : 器件端 1. ER = Erase Memory. 2. 若 STM32 产品不支持特殊擦除指令, 则请求的特殊擦除指令将被 NACK DocID024055 Rev 2 37/49 48

自举程序指令集 AN4221 2.14 No-Stretch Write protect 指令 No-Stretch Write Protect 指令用于对部分或全部 Flash 扇区启用写保护 当自举程序收到 Write Protect 指令时, 它会向主机发送 ACK 字节 之后自举程序等待要接收的字节数 ( 要保护的扇区 ), 然后从应用收到 Flash 扇区码 当操作正在进行时, 返回忙状态 (0x76) 在 No-Stretch Write Protect 指令结束时, 自举程序会发送 ACK 字节并生成系统复位, 以使选项字节的新配置生效 注 : Write Protect 指令流程如下 : 自举程序收到一个字节, 它包含 N 要写保护的扇区数 - 1 (0 N 255) 自举程序接收 (N + 1) 字节, 其中每个字节都包含扇区码 扇区总数和要保护的扇区号都不会被校验 这意味着即使指令的保护扇区数错误, 或扇区号错误, 都不会有错误返回 若执行了第二个 Write Protect 指令, 则第一个指令已经保护的 Flash 扇区会被解除保护, 只有第二个 Write Protect 指令内的扇区才会被保护 38/49 DocID024055 Rev 2

自举程序指令集 图 28. No-Stretch Write protect 指令 : 主机端 1. WP = Write Protect. DocID024055 Rev 2 39/49 48

自举程序指令集 AN4221 图 29. No-Stretch Write protect 指令 : 器件端 1. WP = Write Protect. 40/49 DocID024055 Rev 2

自举程序指令集 2.15 No-Stretch Write unprotect 指令 No-Stretch Write Unprotect 指令用于对全部 Flash 扇区禁用写保护 当自举程序收到 Write Unprotect 指令时, 它会向主机发送 ACK 字节 之后自举程序对全部 Flash 扇区禁用写保护, 当操作正在进行时, 返回忙状态 (0x76) 最后它发送 ACK 字节 会生成系统复位以使选项字节的新配置生效 图 30. No-Stretch Write unprotect 指令 : 主机端 1. WPUN = Write Unprotect. DocID024055 Rev 2 41/49 48

自举程序指令集 AN4221 图 31. No-Stretch Write unprotect 指令 : 器件端 1. WPUN = Write Unprotect. 2.16 No-Stretch Readout protect 指令 No-Stretch Readout Protect 指令用于启用 Flash 的读保护 当自举程序收到 Readout Protect 指令时, 它会向主机发送 ACK 字节并对 Flash 启用读保护 当操作正在进行时, 返回忙状态 (0x76) 在 No-Stretch Readout Protect 指令结束时, 自举程序会发送 ACK 字节并生成系统复位, 以使选项字节的新配置生效 42/49 DocID024055 Rev 2

自举程序指令集 图 32. NoStretch Readout protect 指令 : 主机端 1. RDP_PRM = Readout Protect. DocID024055 Rev 2 43/49 48

自举程序指令集 AN4221 图 33. No-Stretch Readout protect 指令 : 器件端 1. RDP_PRM = Readout Protect. 2.17 No-Stretch Readout unprotect 指令 No-Stretch Readout Unprotect 指令用于禁用 Flash 的读保护 当自举程序收到 Readout Unprotect 指令时, 它会向主机发送 ACK 字节 之后自举程序会对全部 Flash 禁用读保护, 这会导致擦除全部 Flash 当操作正在进行时, 返回忙状态 (0x76) 若该操作不成功, 则自举程序会发送 NACK, 读保护仍然有效 在 No-Stretch Readout Unprotect 指令结束时, 自举程序会发送 ACK 并生成系统复位, 以使选项字节的新配置生效 44/49 DocID024055 Rev 2

自举程序指令集 图 34. No-Stretch Readout unprotect 指令 : 主机端 1. RDU_PRM = Readout Unprotect. DocID024055 Rev 2 45/49 48

自举程序指令集 AN4221 图 35. No-Stretch Readout unprotect 指令 : 器件端 1. RDU_PRM = Readout Unprotect. 46/49 DocID024055 Rev 2

自举程序协议版本演进 3 自举程序协议版本演进 表 3 列出了自举程序的版本 表 3. 自举程序协议版本 版本 说明 V1.0 初始协议版本 V1.1 此版本实现了新的 I2C 指令 :No-Stretch Write Memory No-Stretch Erase Memory No-Stretch Write Prtotect No-Stretch Write Unprotect No- Stretch ReadOut Protect No-Stretch ReadOut Unprotect DocID024055 Rev 2 47/49 48

修订历史 AN4221 4 修订历史 表 4. 文档修订历史 日期修订变更 2013 年 1 月 18 日 1 初始版本 2014 年 5 月 2 日 2 更新了表 1 中的适用产品列表 更新了表 2 中的指令集 更新了第 2 章节 : 自举程序指令集 增加了第 2.12 章节, 第 2.13 章节, 第 2.14 章节, 第 2.15 章节 第 2.16 章节和第 2.17 章节 在表 3 中增加了新的协议版本 48/49 DocID024055 Rev 2

请仔细阅读 : 中文翻译仅为方便阅读之目的 该翻译也许不是对本文档最新版本的翻译, 如有任何不同, 以最新版本的英文原版文档为准 本文档中信息的提供仅与 ST 产品有关 意法半导体公司及其子公司 ( ST ) 保留随时对本文档及本文所述产品与服务进行变更 更正 修改或改进的权利, 恕不另行通知 所有 ST 产品均根据 ST 的销售条款出售 买方自行负责对本文所述 ST 产品和服务的选择和使用,ST 概不承担与选择或使用本文所述 ST 产品和服务相关的任何责任 无论之前是否有过任何形式的表示, 本文档不以任何方式对任何知识产权进行任何明示或默示的授权或许可 如果本文档任何部分涉及任何第三方产品或服务, 不应被视为 ST 授权使用此类第三方产品或服务, 或许可其中的任何知识产权, 或者被视为涉及以任何方式使用任何此类第三方产品或服务或其中任何知识产权的保证 除非在 ST 的销售条款中另有说明, 否则,ST 对 ST 产品的使用和 / 或销售不做任何明示或默示的保证, 包括但不限于有关适销性 适合特定用途 ( 及其依据任何司法管辖区的法律的对应情况 ), 或侵犯任何专利 版权或其他知识产权的默示保证 意法半导体的产品不得应用于武器 此外, 意法半导体产品也不是为下列用途而设计并不得应用于下列用途 :(A) 对安全性有特别要求的应用, 例如, 生命支持 主动植入设备或对产品功能安全有要求的系统 ; (B) 航空应用 ; (C) 汽车应用或汽车环境, 且 / 或 (D) 航天应用或航天环境 如果意法半导体产品不是为前述应用设计的, 而采购商擅自将其用于前述应用, 即使采购商向意法半导体发出了书面通知, 采购商仍将独自承担因此而导致的任何风险, 意法半导体的产品设计规格明确指定的汽车 汽车安全或医疗工业领域专用产品除外 根据相关政府主管部门的规定,ESCC QML 或 JAN 正式认证产品适用于航天应用 经销的 ST 产品如有不同于本文档中提出的声明和 / 或技术特点的规定, 将立即导致 ST 针对本文所述 ST 产品或服务授予的任何保证失效, 并且不应以任何形式造成或扩大 ST 的任何责任 ST 和 ST 徽标是 ST 在各个国家或地区的商标或注册商标 本文档中的信息取代之前提供的所有信息 ST 徽标是意法半导体公司的注册商标 其他所有名称是其各自所有者的财产 2015 STMicroelectronics 保留所有权利 意法半导体集团公司澳大利亚 - 比利时 - 巴西 - 加拿大 - 中国 - 捷克共和国 - 芬兰 - 法国 - 德国 - 中国香港 - 印度 - 以色列 - 意大利 - 日本 - 马来西亚 - 马耳他 - 摩洛哥 菲律宾 新加坡 - 西班牙 - 瑞典 - 瑞士 - 英国 - 美国 www.st.com DocID024055 Rev 2 49/49 49