找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3613|回复: 3
打印 上一主题 下一主题
收起左侧

番茄STM32F3开发板

[复制链接]
跳转到指定楼层
楼主
开发说明:
ST最新推出了Cortex-M4内核的MCU,作为STM32F103系列的升级产品,其内核由Cortex-M3升级到Cortex-M4,并增加了浮点运算单元,丰富了外设接口,非常适合IoT的嵌入式开发。目前市场上针对Cortex-M4内核的开发板还很少,几乎都是ST推出的开发套件。根据发起者在实际项目中遇到的问题及考虑到电子爱好者的需求,发起者希望开发一款基于Cortex-M4内核的,具有高性价比、灵活易用的开发板,并将其作为开源硬件,分享给电子爱好者。基于这个想法,促成了本次的项目众筹。
项目背景介绍
STM32F302CBT6是一款基于Cortex-M4内核的MCU,采用QFP48封装,小巧而功能强大,非常适合IoT的嵌入式开发。STM32F302CBT6与其相关芯片的对比如下:
1. 相同封装形式芯片对比:
  
型号
  
STM32F103C8T6
STM32F302CBT6
STM32F303CBT6
STM32F303C8T6
内核
Cortex-M3
Cortex-M4,FPU
Cortex-M4,FPU
Cortex-M4,FPU
系统时钟
72MHz
72MHz
72MHz
72MHz
Flash
64KB
128KB
128KB
64KB
SRAM
20KB
24KB
40+8KB
12KB
ADC
10-channel 12  bit
2x9-channel 12  bit
15-channel 12  bit
15-channel 12  bit
DAC
/
1-channel 12 bit
2-channel 12 bit
3-channel 12 bit
Analog
/
2x OpAmp
  
4x Comparator
4x OpAmp
  
7x Comparator
4x OpAmp
  
7x Comparator
Timer
4 x 16-bit
7 x 16-bit
  
1 x 32-bit
9 x 16-bit
  
1 x 32-bit
9 x 16-bit
  
1 x 32-bit
通信接口
2 x SPI
3 x SPI
3 x SPI
3 x SPI
2 x I2C
2 x I2C
2 x I2C
2 x I2C
1 x CAN
1 x CAN
1 x CAN
1 x CAN
3 x USART
3 x USART
3 x USART
3 x USART
1 x USB
1 x USB
1 x USB
1 x USB
I/O
37  Inputs/Outputs
37  Inputs/Outputs
37  Inputs/Outputs
37 Inputs/Outputs
封装
QFP48
QFP48
QFP48
QFP48
F30X系列相对于F103系列内核由M3升级到M4,并增加了浮点运算单元。而且更针对于IoT应用,在48 PIN小封装上集成了DAC、运算放大器和比较器,更适合于高性价比和小形化的IoT和数据采集系统应用。并且F302与F303只是在内存和接口的通道数量上有差别,F303所具有的功能模块,F302上都包含了,因此,F302的程序开发,可以兼容F303,是一款极具性价比的产品。

2. 不同封装形式芯片对比:
  
型号
  
STM32F103RCT6
STM32F302CBT6
STM32F302RCT6
STM32F303RCT6
内核
Cortex-M3
Cortex-M4,FPU
Cortex-M4,FPU
Cortex-M4,FPU
系统时钟
72MHz
72MHz
72MHz
72MHz
Flash
256KB
128KB
256KB
256KB
SRAM
48KB
24KB
40+8KB
40+8KB
ADC
2x16-channel 12  bit
2x9-channel 12  bit
2x16-channel 12  bit
4x15-channel 12  bit
DAC
2x2-channel 12 bit
1-channel 12 bit
1-channel 12 bit
3-channel 12 bit
Analog
/
2x OpAmp
  
4x Comparator
2x OpAmp
  
4x Comparator
1x OpAmp
Timer
8 x 16-bit
7 x 16-bit
  
1 x 32-bit
7 x 16-bit
  
1 x 32-bit
9 x 16-bit
  
1 x 32-bit
通信接口
3 x SPI
3 x SPI
3 x SPI
3 x SPI
2 x I2C
2 x I2C
2 x I2C
2 x I2C
1 x CAN
1 x CAN
1 x CAN
1 x CAN
5 x USART
3 x USART
3 x USART
5 x USART
1 x USB
1 x USB
1 x USB
1 x USB
I/O
51  Inputs/Outputs
37  Inputs/Outputs
52  Inputs/Outputs
52  Inputs/Outputs
封装
QFP64
QFP48
QFP64
QFP64
F302C系列相对于F103R系列内核由M3升级到M4,并增加了浮点运算单元。并且包含了R系列所有的外设,同时增加了模拟信号处理所需要的运算放大器和比较器,而不像F103C和F103R之间,将外设进行了删减。并且F302C系列与F30XR系列,也只是因为管脚数不同,在外设接口数量上有所差别,R系列所包含的外设,在C系列上都包含,由F302C上开发的程序,可以很好的移植到F302R系列上。而QFP48的封装,相对于QFP64的封装,体积更小,性价比更高。因此说,STM32F302C系列是一款体积小巧、功能强大、极具性价比的产品。
番茄STM32F302CBT6开发板基于STM32F302CBT6、针对IoT嵌入式而设计,是一款功能强大,又极具性价比的开发板。板载功能尽量做到常用、精简。板载接口充分考虑接口的可扩展性,将MCU的IO全部引出,并精心设计,做到接口的可扩展性、兼容性和可重用性,使开发者非常容易基于此开发板扩展其它功能模块并且避免因扩展功能而大量使用杜邦线等飞线产生的问题。
番茄STM32F302CBT6开发板板载功能介绍
1. 板载Micro USB接口,通过Micro USB接口为开发板供电,并可实现与上位机的USB通信,如果不需要USB通信时,也用使用移动电源的USB口为开发板供电,使得开发板更加灵活便携;
2. 板载5V、3.3V电源输出,可提供扩展功能的供电;
3. 板载2个按键,可实现常用的按键输入控制;
4. 板载1个LED电源指示和1个受GPIO控制的LED,可方便程序调试与输出操作的指示。
5. 板载RTC时钟电路,可实现低功耗实时操作;
6. 支持SWD调试接口。为实现开发板的小巧及尽量少的占用IO资源,本开发板采用SWD调试接口而摒弃JTAG调试接口(并针对SWD接口,专门设计了精美的JTAG转SWD转接口,兼容所有主流仿真器,可装配于仿真器上,免去杜邦线跳线的麻烦及接口接错导致板卡损坏的风险);
7. 支持0.96' OLED显示接口(模块选配)。基于OLED小巧、无需要背光,可以更薄等优点,本开发板摒弃价格昂贵、体积庞大的触摸屏,采用0.96’ OLED屏实现输出显示,从而使整个开发板体积更小,性价比更高,更适合于IoT应用。而针对触摸屏应用,开发者可根据需要,通过扩展接口实现。
8. 支持高精度模拟基准,特别适用于高精度ADC与DAC数据采集应用(选配)。板载的12 bit ADC和DAC,非常适合于IoT应用中的传感器数据采集与控制,而对于12 bit的ADC和DAC,数据采集的精度已经不在于ADC和DAC的位数,而在于ADC和DAC的参考电压的精度。本开发板专门针对此应用,设计了高精度模拟基准,可实现高精度的ADC和DAC数据转换和数据采集。
9. 更具人性化的可扩展接口。为实现开发板的小巧、精美,提高性价比,又不失STM32F302CBT6强大的功能,本开发板尽量精简板载功能,并设计了更具人性化的可扩展接口,将全部IO引出,方便开发者扩展其它功能模块,发挥STM32F302CBT6的强大功能。市面上通用的开发板,接口设计考虑多一些的是兼容Arduino标准接口,而其它的开发板则是直接将IO口全部引出,并将电源、地单独引出。这样在扩展其它模块时,则只能采用杜邦线跳线的方式与其它模块连接通信,既容易产生杜邦线跳线错误,又容易在调试时不小心拖拽到,不利于调试和接口扩展,并且使模块扩展显得笨重、不够美观。
本开发板充分考虑了接口的可扩展性,设计了一套可扩展接口。如图1所示。

                              
图1 开发板布局图
9.1 将所有IO口全部引出,并分别用排针和排母引出,排母引出用于接口扩展,排针引出方便开发调试时测量监测。如图2所示,用并排的排针和排母将PA0和PA8分别引出,排母用于接口扩展,排针用于调试测量。所有PA口与PB口都采用这种方式引出。

图2 IO口引出同时采用排针和排母
9.2 将电源、地与IO口布置在一起,方便各种供电接口。如图3所示。将5V电源、地和3.3V电源地分别按照不同顺序与IO口布置在一起,可将扩展功能板直接插入扩展接口上,无需杜邦线跳线。

图3 供电与IO同时布置,方便扩展功能直接插入开发板
9.3 可实现各种不能协议接口外设的接口扩展。如图4所示,可实现硬件SPI、硬件I2C、USART等各种接口的扩展。

图4 方便的硬件外设通信接口扩展
9.4 多模块共用时,IO口重分配的接口扩展。当在系统开发时,采用多模块同时工作时,经常会遇到这样的情况:模块A采用5V、GND、PA0和PA1进行通信,在开发模块B时,模块B需要用到PA0口作为ADC使用,而这时还想同时使用模块A,这时就存在接口冲突的情况。此时,只要将作为IO口通信用的模块A旋转180度,插入对角接口上,并将相应程序中的PA0改为PB0,PA1改为PB1,即可实现模块A的通信,电源、地完全兼容。如图5所示。

图5 将模块旋转180度对角位置,IO定义调整,供电完全兼容
关于接口扩展的基本规律,概述如上4点。具体使用哪些接口可实现便捷的功能扩展,开发者可根据自己的开发情况,发现更多接口使用方案。
10. 附带的JTAG转SWD转接口,兼容所有主流仿真器,可装配于仿真器上,免去杜邦线跳线的麻烦及接口接错导致板卡损坏的风险。
      

图6 用JTAG转SWD转接口仿真调试
开发者独创声明:
番茄STM32F302CBT6开发板的板载扩展接口方式,为开发者独创,本着开源硬件的精神,开发者将其作为一种开源硬件,任何组织或个人,可无偿使用此接口定义方式,并请在使用时注明其采用番茄开发板接口形式,并不得将此作为独有知识产权进行保护。考虑到尽量精简开发板功能并使开发板小巧,本扩展接口采用8个IO口插入一组电源地的形式,实际中,也可以采用2个或4个IO口插入一组电源地的形式,并且可由PA、PB口扩展到PC、PD等其它更多的IO口,或由左、右布局改为上、下、左、右布局,以上所述同属本接口定义方式。(如果此扩展接口方式,在开发者之前已有知识产权,请及时联系开发者。)
联系人及联系方式:
微信号或QQ号:27615211



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:245600 发表于 2017-11-9 18:02 | 只看该作者
欢迎大家加入我们的QQ群:620453117
回复

使用道具 举报

板凳
ID:245600 发表于 2017-11-21 20:40 | 只看该作者
感谢小伙伴们的支持!
回复

使用道具 举报

地板
ID:245600 发表于 2017-11-25 16:28 | 只看该作者
最后2天了,感谢大家的支持!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表