在 v2013-06-15 MLA USB 设备和主机协议栈中更新 PIC32MX 支持 TB3109 简介 我们提供适合 PIC32MX MCU 的 Microchip 应用程序库 (Microchip Libraries for Applications,MLA), 但未计划向 MLA 添加新功能 v2013-06-15 MLA USB 协议栈本质上支持所有适用的 PIC32MX MCU 器件 ; 但是, 它没有为 PIC32MX430/ 450/470 和 PIC32MX2XX 器件提供应用演示支持 本文档为没有现成演示应用程序的其他支持 USB 功能的 PIC32MX 器件提供了如何在 v2013-06-15 MLA USB 协议栈演示应用程序中更新 PIC32MX 支持的详细说明 注 1: 本文档仅讨论使基本 USB 协议栈在已识别的 PIC32MX 器件上运行所需的更改 大多数情况下, 这可确保主机和设备协议栈正常运行 ; 但是, 本文档不讨论需要对 MLA USB 协议栈演示应用程序的其他方面 ( 具体包括熔丝配置宏 外设特定的方面 ( 例如 NVM) 和演示应用程序特定的逻辑 ) 进行的更改 2: USB 模块本身在不同 PIC32MX 器件之间存在一些增量变化, 但这些变化不影响协议栈操作, 因此不在本文档中讨论 3: 本文档不涉及 PIC32MZ USB 应用程序 PIC32MZ USB 解决方案仅适用于 MPLAB Harmony USB 协议栈 DS90003109A_CN 第 1 页
TB3109 PIC32MX 器件中与 USB 模块相关的更改 USB 模块中断位 ( 即 USBIF USBIE USBIP 和 USBIS 位 ) 的位置变化会影响 PIC32MX 器件上的 USB 协议栈操作 表 1 给出了所列 PIC32MX 器件系列中 USBIF USBIE USBIP 和 USBIS 位的寄存器位置 在本文档之后发布的器件的详细信息, 建议参见具体器件的数据手册 这些数据手册可从 Microchip 网站获取 :www.microchip.com 表 1: PIC32MX 器件系列中 USBIF USBIE USBIP 和 USBIS 位的位置 PIC32MX 器件 USBIF 位 USBIE 位 USBIP 位 USBIS 位 PIC32MX2XX IFS1<3> IEC1<3> IPC7<20:18> IPC7<17:16> PIC32MX4XX IFS1<25> IEC1<25> IPC11<12:10> IPC11<9:8> PIC32MX430/450/470 IFS1<3> IEC1<3> IPC7<12:10> IPC7<9:8> PIC32MX5XX/6XX/7XX IFS1<25> IEC1<25> IPC11<12:10> IPC11<9:8> DS90003109A_CN 第 2 页
TB3109 更新协议栈的过程 更新 v2013-06-15 MLA USB 协议栈以添加缺少器件的步骤如下 : 1. 打开文件 usb_hal_pic32.h, 该文件位于以下文件夹中 : microchip_solutions_v2013-06-15/ Microchip/Include/USB 2. 导航到文件的第 382 行, 在第 382 行和第 383 行之间插入以下代码 #elif (( PIC32_FEATURE_SET >= 330) && ( PIC32_FEATURE_SET <= 450)) ( PIC32_FEATURE_SET == 470) // For PIC32MX430,450,470 devices #define USBEnableInterrupts() {\ IEC1SET = USBIE;\ IPC7CLR=0x00FF00;\ IPC7SET=0x001000;\ INTEnableSystemMultiVectoredInt();\ INTEnableInterrupts();\ } 3. 导航到文件的第 278 行, 在第 278 行和第 279 行之间插入以下代码 : #elif (( PIC32_FEATURE_SET >= 330) && ( PIC32_FEATURE_SET <= 450)) ( PIC32_FEATURE_SET == 470) // For PIC32MX430,450,470 devices #define USBIE 0x00000004 4. 保存并关闭文件 5. 打开应用特定的演示文件 HardwareProfile.h 该文件通常位于演示应用程序目录的 firmware 文件夹中 在该文件中, 找到处理器特定的演示板包含宏并针对所需 PIC32MX 器件更新此宏 以下示例中以粗体文本给出了在 PIC32 USB 入门工具包 III 上针对 PIC32MX470F256L 器件实现此操作的方法 #if!defined(demo_board) #if defined( C32 ) #if defined( 32MX460F512L ) defined( 32MX470F256L ) #if defined(pic32mx460f512l_pim) 6. 更改后保存并关闭文件 7. 演示现已就绪, 可以进行编译 由于演示应用程序文件 ( 而非核心 USB 协议栈文件 ) 中包含处理器特定的功能, 因此编译过程可能产生错误 这些错误需要根据具体情况进行修正 DS90003109A_CN 第 3 页
TB3109 结论 本文档提供了修改 v2013-06-15 MLA USB 协议栈中的核心 USB 协议栈以支持缺少的 PIC32MX 器件所需的步骤 USB 演示应用程序特定的文件应根据具体情况进行更新 DS90003109A_CN 第 4 页
请注意以下有关 Microchip 器件代码保护功能的要点 : Microchip 的产品均达到 Microchip 数据手册中所述的技术指标 Microchip 确信 : 在正常使用的情况下, Microchip 系列产品是当今市场上同类产品中最安全的产品之一 目前, 仍存在着恶意 甚至是非法破坏代码保护功能的行为 就我们所知, 所有这些行为都不是以 Microchip 数据手册中规定的操作规范来使用 Microchip 产品的 这样做的人极可能侵犯了知识产权 Microchip 愿与那些注重代码完整性的客户合作 Microchip 或任何其他半导体厂商均无法保证其代码的安全性 代码保护并不意味着我们保证产品是 牢不可破 的 代码保护功能处于持续发展中 Microchip 承诺将不断改进产品的代码保护功能 任何试图破坏 Microchip 代码保护功能的行为均可视为违反了 数字器件千年版权法案 (Digital Millennium Copyright Act) 如果这种行为导致他人在未经授权的情况下, 能访问您的软件或其他受版权保护的成果, 您有权依据该法案提起诉讼, 从而制止这种行为 提供本文档的中文版本仅为了便于理解 请勿忽视文档中包含的英文部分, 因为其中提供了有关 Microchip 产品性能和使用情况的有用信息 Microchip Technology Inc. 及其分公司和相关公司 各级主管与员工及事务代理机构对译文中可能存在的任何差错不承担任何责任 建议参考 Microchip Technology Inc. 的英文原版文档 本出版物中所述的器件应用信息及其他类似内容仅为您提供便利, 它们可能由更新之信息所替代 确保应用符合技术规范, 是您自身应负的责任 Microchip 对这些信息不作任何明示或暗示 书面或口头 法定或其他形式的声明或担保, 包括但不限于针对其使用情况 质量 性能 适销性或特定用途的适用性的声明或担保 Microchip 对因这些信息及使用这些信息而引起的后果不承担任何责任 如果将 Microchip 器件用于生命维持和 / 或生命安全应用, 一切风险由买方自负 买方同意在由此引发任何一切伤害 索赔 诉讼或费用时, 会维护和保障 Microchip 免于承担法律责任, 并加以赔偿 在 Microchip 知识产权保护下, 不得暗中或以其他方式转让任何许可证 商标 Microchip 的名称和徽标组合 Microchip 徽标 dspic FlashFlex flexpwr JukeBlox KEELOQ KEELOQ 徽标 Kleer LANCheck MediaLB MOST MOST 徽标 MPLAB OptoLyzer PIC PICSTART PIC 32 徽标 RightTouch SpyNIC SST SST 徽标 SuperFlash 及 UNI/O 均为 Microchip Technology Inc. 在美国和其他国家或地区的注册商标 The Embedded Control Solutions Company 和 mtouch 为 Microchip Technology Inc. 在美国的注册商标 Analog-for-the-Digital Age BodyCom chipkit chipkit 徽标 CodeGuard dspicdem dspicdem.net ECAN In-Circuit Serial Programming ICSP Inter-Chip Connectivity KleerNet KleerNet 徽标 MiWi MPASM MPF MPLAB Certified 徽标 MPLIB MPLINK MultiTRAK NetDetach Omniscient Code Generation PICDEM PICDEM.net PICkit PICtail RightTouch 徽标 REAL ICE SQI Serial Quad I/O Total Endurance TSHARC USBCheck VariSense ViewSpan WiperLock Wireless DNA 和 ZENA 均为 Microchip Technology Inc. 在美国和其他国家或地区的商标 SQTP 为 Microchip Technology Inc. 在美国的服务标记 Silicon Storage Technology 为 Microchip Technology Inc. 在除美国外的国家或地区的注册商标 GestIC 为 Microchip Technology Inc. 的子公司 Microchip Technology Germany II GmbH & Co. & KG 在除美国外的国家或地区的注册商标 在此提及的所有其他商标均为各持有公司所有 2015, Microchip Technology Inc. 版权所有 ISBN:978-1-63277-053-0 QUALITY MANAGEMENT SYSTEM CERTIFIED BY DNV == ISO/TS 16949 == Microchip 位于美国亚利桑那州 Chandler 和 Tempe 与位于俄勒冈州 Gresham 的全球总部 设计和晶圆生产厂及位于美国加利福尼亚州和印度的设计中心均通过了 ISO/TS-16949:2009 认证 Microchip 的 PIC MCU 与 dspic DSC KEELOQ 跳码器件 串行 EEPROM 单片机外设 非易失性存储器和模拟产品严格遵守公司的质量体系流程 此外, Microchip 在开发系统的设计和生产方面的质量体系也已通过了 ISO 9001:2000 认证 DS90003109A_CN 第 5 页
全球销售及服务网点 美洲 亚太地区 亚太地区 欧洲 公司总部 Corporate Office 2355 West Chandler Blvd. Chandler, AZ 85224-6199 Tel: 1-480-792-7200 Fax: 1-480-792-7277 技术支持 : http://www.microchip.com/ support 网址 :www.microchip.com 亚特兰大 Atlanta Duluth, GA Tel: 1-678-957-9614 Fax: 1-678-957-1455 奥斯汀 Austin, TX Tel: 1-512-257-3370 波士顿 Boston Westborough, MA Tel: 1-774-760-0087 Fax: 1-774-760-0088 芝加哥 Chicago Itasca, IL Tel: 1-630-285-0071 Fax: 1-630-285-0075 克里夫兰 Cleveland Independence, OH Tel: 1-216-447-0464 Fax: 1-216-447-0643 达拉斯 Dallas Addison, TX Tel: 1-972-818-7423 Fax: 1-972-818-2924 底特律 Detroit Novi, MI Tel: 1-248-848-4000 休斯敦 Houston, TX Tel: 1-281-894-5983 印第安纳波利斯 Indianapolis Noblesville, IN Tel: 1-317-773-8323 Fax: 1-317-773-5453 洛杉矶 Los Angeles Mission Viejo, CA Tel: 1-949-462-9523 Fax: 1-949-462-9608 纽约 New York, NY Tel: 1-631-435-6000 圣何塞 San Jose, CA Tel: 1-408-735-9110 加拿大多伦多 Toronto Tel: 1-905-673-0699 Fax: 1-905-673-6509 亚太总部 Asia Pacific Office Suites 3707-14, 37th Floor Tower 6, The Gateway Harbour City, Kowloon Hong Kong Tel: 852-2943-5100 Fax: 852-2401-3431 中国 - 北京 Tel: 86-10-8569-7000 Fax: 86-10-8528-2104 中国 - 成都 Tel: 86-28-8665-5511 Fax: 86-28-8665-7889 中国 - 重庆 Tel: 86-23-8980-9588 Fax: 86-23-8980-9500 中国 - 东莞 Tel: 86-769-8702-9880 中国 - 杭州 Tel: 86-571-8792-8115 Fax: 86-571-8792-8116 中国 - 香港特别行政区 Tel: 852-2943-5100 Fax: 852-2401-3431 中国 - 南京 Tel: 86-25-8473-2460 Fax: 86-25-8473-2470 中国 - 青岛 Tel: 86-532-8502-7355 Fax: 86-532-8502-7205 中国 - 上海 Tel: 86-21-5407-5533 Fax: 86-21-5407-5066 中国 - 沈阳 Tel: 86-24-2334-2829 Fax: 86-24-2334-2393 中国 - 深圳 Tel: 86-755-8864-2200 Fax: 86-755-8203-1760 中国 - 武汉 Tel: 86-27-5980-5300 Fax: 86-27-5980-5118 中国 - 西安 Tel: 86-29-8833-7252 Fax: 86-29-8833-7256 中国 - 厦门 Tel: 86-592-238-8138 Fax: 86-592-238-8130 中国 - 珠海 Tel: 86-756-321-0040 Fax: 86-756-321-0049 台湾地区 - 高雄 Tel: 886-7-213-7828 台湾地区 - 台北 Tel: 886-2-2508-8600 Fax: 886-2-2508-0102 台湾地区 - 新竹 Tel: 886-3-5778-366 Fax: 886-3-5770-955 澳大利亚 Australia - Sydney Tel: 61-2-9868-6733 Fax: 61-2-9868-6755 印度 India - Bangalore Tel: 91-80-3090-4444 Fax: 91-80-3090-4123 印度 India - New Delhi Tel: 91-11-4160-8631 Fax: 91-11-4160-8632 印度 India - Pune Tel: 91-20-3019-1500 日本 Japan - Osaka Tel: 81-6-6152-7160 Fax: 81-6-6152-9310 日本 Japan - Tokyo Tel: 81-3-6880-3770 Fax: 81-3-6880-3771 韩国 Korea - Daegu Tel: 82-53-744-4301 Fax: 82-53-744-4302 韩国 Korea - Seoul Tel: 82-2-554-7200 Fax: 82-2-558-5932 或 82-2-558-5934 马来西亚 Malaysia - Kuala Lumpur Tel: 60-3-6201-9857 Fax: 60-3-6201-9859 马来西亚 Malaysia - Penang Tel: 60-4-227-8870 Fax: 60-4-227-4068 菲律宾 Philippines - Manila Tel: 63-2-634-9065 Fax: 63-2-634-9069 新加坡 Singapore Tel: 65-6334-8870 Fax: 65-6334-8850 泰国 Thailand - Bangkok Tel: 66-2-694-1351 Fax: 66-2-694-1350 奥地利 Austria - Wels Tel: 43-7242-2244-39 Fax: 43-7242-2244-393 丹麦 Denmark-Copenhagen Tel: 45-4450-2828 Fax: 45-4485-2829 法国 France - Paris Tel: 33-1-69-53-63-20 Fax: 33-1-69-30-90-79 德国 Germany - Dusseldorf Tel: 49-2129-3766400 德国 Germany - Munich Tel: 49-89-627-144-0 Fax: 49-89-627-144-44 德国 Germany - Pforzheim Tel: 49-7231-424750 意大利 Italy - Milan Tel: 39-0331-742611 Fax: 39-0331-466781 意大利 Italy - Venice Tel: 39-049-7625286 荷兰 Netherlands - Drunen Tel: 31-416-690399 Fax: 31-416-690340 波兰 Poland - Warsaw Tel: 48-22-3325737 西班牙 Spain - Madrid Tel: 34-91-708-08-90 Fax: 34-91-708-08-91 瑞典 Sweden - Stockholm Tel: 46-8-5090-4654 英国 UK - Wokingham Tel: 44-118-921-5800 Fax: 44-118-921-5820 01/27/15 DS90003109A_CN 第 6 页