本帖最后由 cc1989summer 于 2024-11-12 22:04 编辑
非常感谢EEWORLD以及DigiKey 得捷提供我这次试用机会。
早就听闻英飞凌在汽车控制领域的大名,这是我第一次使用英飞凌MCU,非常期待。
提前大致了解了下,英飞凌的MCU产品线主要有4类。
1. TC系列,主要是汽车控制,是英飞凌的王牌产品。基于TriCore™ 的产品在汽车中的应用非常广泛,包括内燃机控制、纯电动和混合动力汽车、变速器控制单元、底盘域、制动系统、电动转向系统、安全气囊、联网和高级驾驶辅助系统,并推动着自动化,电动化以及网联化的发展。
2. PSOC系列(收购cypress),涵盖较广,汽车控制、工业控制、消费电子、物联网等等都有涉及。
3. T2G系列,采用高性能 32 位 Arm® Cortex-M4F® 和 M7F CPU,工作频率最高可至 350 MHz,适用于互联汽车应用。
4. XMC系列,基于ARM® Cortex®-M内核。这个产品系列专门针对功率转换、工厂自动化、楼宇自控、交通和家用电器等领域的应用而打造。
以下为产品线图示:
回到开发板本身,收到后打开感觉十分惊艳,包装精美,看起来不像电子开发板,倒像个精致的礼物。
开发板做工也十分精美,最引人注目的是巨大的触摸板,这也是英飞凌的看家本领,第五代CapSense。
第五代CAPSENSE技术的性能是前几代的十倍,功耗仅是前几代的十分之一,不仅支持工程师开发更直观的用户界面,降低了整体功耗,而且满足便携式电池供电的物联网设备的低功耗需求。全新CAPSENSE是智能门锁、智能开关、恒温器、智能音箱、电动工具、工业触摸屏等各种家用电器、工业应用以及其他物联网设备的理想选择。新技术也很适合有较大触摸屏的电磁炉、洗衣机和烘干机、冰箱、烤箱等工业和家用电器产品。
配置温习下:
- 32 位 MCU 子系统
- 带有 DMA 控制器的 48 MHz Arm® Cortex®-M0+ CPU
- 384 KB 闪存和 32 KB SRAM
- 带 PLL 的外部 MHz 振荡器 (ECO) 和 32 KHz 手表晶体振荡器 (WCO)
- 加密块包括 AES、TRNG、CRA、PRNG 和 SHA
- 可编程模拟块
- 1 个 12 位、1 Msps SAR ADC
- 两个运算放大器可配置为可编程增益放大器 (PGA)、比较器 (CMP) 等。
- 两个低功耗比较器 (CMP)
- 两个 MSC(多传感转换器)模块集成了第五代 CAPSENSE 和电感传感
- 可编程数字模块
- 两个 16 位定时器/计数器/脉宽调制器 (TCPWM) 模块
- 两个串行通信模块 (SCB),可配置为 I2C、SPI 或 UART
- 段码式 LCD
- I2S 音频输出
- 一个 CAN-FD(具有灵活数据速率的控制器局域网络)控制器
通电后,有个触摸演示程序。
触摸演示程序
接下来是开发环境搭建。
麻烦事来了。
目前最新版开发工具是ModusToolbox 3.3
下载网址,实际也包含ModusToolbox 3.0:
https://softwaretools.infineon.com/tools/com.ifx.tb.tool.modustoolbox
下载(下载速度10+KB/s)安装后,新建工程,发现无法获取芯片列表,该列表需要从github获取,然而由于无法连上github,实际无法使用。
后来发现这是个通病,英飞凌的本地化做的不够好,没有在中国设置服务器。
EEWORLD已经有坛友发过这个问题,
https://bbs.eeworld.com.cn/thread-1237088-1-1.html
https://bbs.eeworld.com.cn/thread-1237247-1-1.html
解决方案是安装ModusToolbox 3.0 以及离线软件包。
ModusToolbox 3.0
https://softwaretools.infineon.com/tools/com.ifx.tb.tool.modustoolbox
ModusToolbox™ Offline Libraries离线软件包
https://softwaretools.infineon.com/tools/com.ifx.tb.tool.modustoolboxofflinecontentpackage
下载下来后(下载速度10+KB/s,早上6点可达到500KB/s),
先安装ModusToolbox 3.0,设置好环境变量CY_TOOLS_PATHS
新建项目,仍然得到错误信息,此时,选择offline选项,
注意看下面的报警提示:
没有找到离线包。
那么我们就在提示的目录新建 .modustoolbox目录,然后将下载下来的离线包(整体是个offline目录)存到此目录。
然后重新打开软件新建工程终于可以了!!!!!!
选择官方例程:GPIO pins
然后进行编译及下载。
注意Debug设置,选择 Program(KitProg3)
以下是下载信息:
Open On-Chip Debugger 0.11.0+dev-4.4.0.2134 (2022-09-08-13:07)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
kitprog3 set_latest_version: C:/Users/Administrator/ModusToolbox/tools_3.0/fw-loader 2.40.1241
Info : auto-selecting first available session transport "swd". To override use 'transport select <transport>'.
adapter speed: 2000 kHz
** Auto-acquire enabled, use "set PSOC4_USE_ACQUIRE 0" to disable
cortex_m reset_config sysresetreq
Info : Using CMSIS-DAPv2 interface with VID:PID=0x04b4:0xf155, serial=14060E6D01042400
Info : CMSIS-DAP: SWD supported
Info : CMSIS-DAP: Atomic commands supported
Info : CMSIS-DAP: FW Version = 2.0.0
Info : CMSIS-DAP: Interface Initialised (SWD)
Info : SWCLK/TCK = 1 SWDIO/TMS = 1 TDI = 0 TDO = 0 nTRST = 0 nRESET = 1
Info : CMSIS-DAP: Interface ready
Info : KitProg3: FW version: 2.30.1155
Info : KitProg3: Pipelined transfers enabled
Info : KitProg3: Asynchronous USB transfers enabled
Info : VTarget = 4.885 V
Info : kitprog3: acquiring the device (mode: reset)...
Info : clock speed 2000 kHz
Info : SWD DPIDR 0x0bc11477
Info : [psoc4.cpu] Cortex-M0+ r0p1 processor detected
Info : [psoc4.cpu] target has 4 breakpoints, 2 watchpoints
Info : [psoc4.cpu] external reset detected
*****************************************
** Silicon: 0x2E2D, Family: 0xBE, Rev.: 0x11 (A0)
** Detected Family: PSoC 4100S Max
** Detected Device: CY8C4149AZI-S598
** Detected Main Flash size, kb: 384
** Chip Protection: OPEN
*****************************************
Info : gdb port disabled
Info : starting gdb server for psoc4.cpu on 3333
Info : Listening on port 3333 for gdb connections
Info : SWD DPIDR 0x0bc11477
Info : kitprog3: acquiring the device (mode: reset)...
psoc4.cpu halted due to debug-request, current mode: Thread
xPSR: 0xa1000000 pc: 0x10000040 msp: 0x20007fe8
** Device acquired successfully
** Programming Started **
auto erase enabled
Info : Padding image section 0 at 0x0000146c with 148 bytes (bank write end alignment)
Warn : Only mass erase available, erase skipped! (psoc4 mass_erase)
[ 4%] [# ] [ Programming ]
[ 9%] [## ] [ Programming ]
[ 14%] [#### ] [ Programming ]
[ 19%] [###### ] [ Programming ]
[ 23%] [####### ] [ Programming ]
[ 28%] [######## ] [ Programming ]
[ 33%] [########## ] [ Programming ]
[ 38%] [############ ] [ Programming ]
[ 42%] [############# ] [ Programming ]
[ 47%] [############### ] [ Programming ]
[ 52%] [################ ] [ Programming ]
[ 57%] [################## ] [ Programming ]
[ 61%] [################### ] [ Programming ]
[ 66%] [##################### ] [ Programming ]
[ 71%] [###################### ] [ Programming ]
[ 76%] [######################## ] [ Programming ]
[ 80%] [######################### ] [ Programming ]
[ 85%] [########################### ] [ Programming ]
[ 90%] [############################ ] [ Programming ]
[ 95%] [############################## ] [ Programming ]
[100%] [################################] [ Programming ]
wrote 5376 bytes from file C:/Users/Administrator/InfineonWork/GPIO_Pins/build/APP_CY8CKIT-041S-MAX/Debug/mtb-example-psoc4-gpio.hex in 0.291444s (18.014 KiB/s)
** Programming Finished **
** Program operation completed successfully **
srst_only separate srst_gates_jtag srst_open_drain connect_deassert_srst
Info : SWD DPIDR 0x0bc11477
Polling target psoc4.cpu failed, trying to reexamine
Info : SWD DPIDR 0x0bc11477
Info : [psoc4.cpu] Cortex-M0+ r0p1 processor detected
Info : [psoc4.cpu] target has 4 breakpoints, 2 watchpoints
shutdown command invoked
Info : psoc4.dap: powering down debug domain...
Warn :
*******************************************************************************************
* KitProg firmware is out of date, please update to the latest version (2.40.1241)
* using fw-loader tool which can be found in the following folder
* C:/Users/Administrator/ModusToolbox/tools_3.0/fw-loader
*******************************************************************************************
运行效果如下:
GPIO
本次的开箱分享就到这里了~