PY32F0 屬於 32位 M0 內核的MCU, 配置上有 16KF+2KR, 20KF+3KR, 32KF+4KR, 64KF+8KR 這些組合, 根據外設的豐富程度分成了 PY32F002, PY32F003, PY32F030, PY32F072 這四個系列, 另外還有一家芯嶺科技貼牌的 XL... ...
目錄
PY32F0系列上市其實相當長一段時間了, 樣品已經吃灰很久, 因為工作原因11月12月都很忙一直沒時間, 最近終於有一點時間把功課做了.
PY32F0 簡介
PY32F0 屬於 32位 M0 內核的MCU, 配置上有 16KF+2KR, 20KF+3KR, 32KF+4KR, 64KF+8KR 這些組合, 根據外設的豐富程度分成了 PY32F002, PY32F003, PY32F030, PY32F072 這四個系列, 另外還有一家芯嶺科技貼牌的 XL32F003 系列. 基礎的外設 ADC, TIM, SPI, I2C, UART 都有, 除了002, 其它系列都帶DMA支持, 其1元左右的價格在市場上非常有性價比.
開發上, 因為是通用的 32位 M0內核, 可以在Keil5, IAR, VScode 等IDE上開發, 使用 STLink, DAPLink 或 JLink 燒錄和調試.
官網產品頁: https://www.puyasemi.com/cpzx3/info_267_aid_242_kid_235.html
從產品頁上可以下載最新的資料包, 資料包里包含全部型號的數據手冊, 使用手冊, 以及代碼庫, 代碼示例, 當前的尾碼是 20221117, 裡面甚至有頁面上沒列出來的002A和072的資料.
PY32F0 各系列具體配置對比
零售能見到的是 PY32F002A, PY32F003, PY32F030, 最後一個072還沒見到. 每個系列的封裝變化很多, 就算一個TSSOP20, 都有三四種引腳佈局, 這裡不按型號介紹了, 大致看一下各系列的容量和外設區別.
PY32F002 系列
20K Flash, 3K RAM, 這個系列沒有見到實物, 只能從啟動文件和連接腳本判斷一下具體的外設
PY32F002A 系列
- 32-bit ARM® Cortex® - M0+ CPU
- Up to 32 MHz operating frequency
- Internal 8 / 24 MHz RC Oscillator (HSI)
- Internal 32.768 KHz RC oscillator (LSI)
- 4 to 24 MHz crystal oscillator (HSE)
- Maximum 20 Kbytes of flash memory
- Up to 3 Kbytes SRAM
- 1 x 12-bit ADC
- Supports up to 9 external input channels
- 1 x 16bit advanced control timer (TIM1)
- 1 x general purpose 16-bit timers (TIM16)
- 1 x low-power timer (LPTIM), supports wake-up from stop mode
- 1 x Independent Watchdog Timer (IWDT)
- 1 x SysTick timer
- 1 x Serial Peripheral Interface (SPI)
- 1 x Universal Synchronous / Asynchronous Transceivers (USARTs) with automatic baudrate detection
- 1 x I2C interface , supports standard mode (100kHz) , Fast mode (400 kHz) , supports 7-bit addressing mode
- Hardware CRC-32 module
- Comparator * 2
- Unique UID
- Serial wire debug (SWD)
- Operating voltage: 1.7V to 5.5V
- Working temperature: -40℃ to 85℃
- Package: SOP8, SOP16, ESSOP10, TSSOP20, QFN16
和 PY32F002 的區別:
- 增加了比較器
- 少了TIM6? 從啟動文件比較看不出區別, 這個不確定
PY32F003 系列
- 32-bit ARM® Cortex® - M0+ CPU
- Up to 32 MHz operating frequency
- Internal 4 /8/16/ 22.12 / 24 MHz RC Oscillator (HSI)
- Internal 32.768 KHz RC oscillator (LSI)
- 4 to 32 MHz crystal oscillator (HSE)
- Maximum 64 Kbytes of flash memory
- Up to 8 Kbytes SRAM
- 3-channel DMA controller
- 1 x 12-bit ADC
- Supports up to 10 external input channels
- 1 x 16bit advanced control timer (TIM1)
- 4 x general purpose 16-bit timers (TIM3/TIM14/TIM16/TIM17)
- 1 x low-power timer (LPTIM), supports wake-up from stop mode
- 1 x Independent Watchdog Timer (IWDT)
- 1 x Window Watchdog Timer (WWDT)
- 1 x SysTick timer
- RTC
- 1 x Serial Peripheral Interface (SPI)
- 2 x Universal Synchronous / Asynchronous Transceivers (USARTs) with automatic baudrate detection
- 1 x I2C interface , supports standard mode (100kHz) , Fast mode (400 kHz) , supports 7-bit addressing mode
- Hardware CRC-32 module
- 2 x comparators
- Unique UID
- Serial wire debug (SWD)
- Operating voltage: 1.7V to 5.5V
- Working temperature: -40℃ to 85℃
- Package: SOP8, SOP16, TSSOP20, QFN20
和 PY32F002A 的區別
- 頻率增加到最高 32MHz
- Flash容量增加到最高 64 KBytes
- RAM容量增加到最高 8 KBytes
- 增加了 DMA
- 增加了 WWDG
- 增加了 RTC
- 增加了 TIM3, TIM14, TIM17
- 增加了 USART2
XL32F003 系列
這是芯嶺科技出的一個型號系列, 放在這裡是因為這個系列本質上和PY003系列是一樣的, 但是只有64KF, 8KR的規格, 當前有三種封裝:
- TSSOP20: XL32F003TS20, 引腳佈局和 PY32F003F2xP 系列一致
- QFN20: XL32F003Q20, 引腳佈局和 PY32F003F1xU, PY32F030F2xU 系列一致
- QFN32: XL32F003Q32, 引腳佈局和 PY32F030K2xM 系列一致
PY32F030 系列
- 32-bit ARM® Cortex® - M0+
- Up to 48 MHz operating frequency
- Internal 4/8/16/ 22.12/24 MHz RC oscillator (HSI)
- Internal 32.768 KHz RC oscillator (LSI)
- 4 to 32 MHz crystal oscillator (HSE)
- 32.768KHz low speed crystal oscillator (LSE)
- PLL (supports 2 frequency multiplication of HSI or HSE)
- Up to 64 Kbytes flash memory
- Up to 8 Kbytes SRAM
- 3-channel DMA controller
- 1 x 12-bit ADC
- Supports up to 10 external input channels
- 1 x 16bit advanced control timer (TIM1)
- 4 x general purpose 16-bit timers (TIM3/TIM14/TIM16/TIM17)
- 1 x low-power timer (LPTIM), supports wake-up from stop mode
- 1 x Independent Watchdog Timer (IWDT)
- 1 x Window Watchdog Timer (WWDT)
- 1 x SysTick timer
- RTC
- 2 x Serial Peripheral Interface (SPI)
- 2 x Universal Synchronous / Asynchronous Transceivers (USARTs) with automatic baudrate detection
- 1 x I2C interface , supports standard mode (100kHz) , Fast mode (400 kHz) , supports 7-bit addressing mode
- Support 4-bit 7-segment common cathode LED digital tube
- Hardware CRC-32 module
- 2 x comparators
- Unique UID
- Serial wire debug (SWD)
- Operating voltage: 1.7 to 5.5 V
- Working temperature: -40℃ to 85℃
- Package: LQFP32, QFN32, TSSOP24, TSSOP20, QFN20
和 PY32F003 系列的區別
- 頻率增加到最高 48MHz
- 支持 兩倍PLL
- 增加了 SPI2
- 增加了 4位7段 LED數位管驅動
PY32F072 系列
從數據手冊看, 與030系列相比Flash和RAM容量提升, 增加了LCD, CTC, TIM2, TIM6, TIM7, TIM15, I2C2, USB等外設. 因為還為上市, 先不作比較.
文末的彩蛋
PY32F002A標稱是3K記憶體, 但是實際上有4K, 直接修改LD文件就可以用了. 已經在 TSSOP20 封裝的 PY32F002AF15P 上驗證
相關鏈接
- PY32F003簡評 https://zhuanlan.zhihu.com/p/580281296
- PY32F003Keil5的環境和ISP工具使用說明 https://blog.csdn.net/firseve/article/details/126661827
- Patrick Van Oosterwijck PY32F003 的電壓電流曲線 https://silicognition.com/Electronics/PuyaCharge/py32f003-undervoltage-run-mode/