【E1306】STM32无刷电调全套开发资料(源码+原理图+PCB+文档)

2021-09-25 15:23:09      索炜达电子      886     

项目编号:E1306

文件大小:11M

源码说明:带中文注释

开发环境:C编译器

简要概述:

经过一个星期的画PCB,今天终于化了,整体看上去还比较满意,具体的性能还得等后期制板、测试才知道。

这个电路属于低频功率型板,相对高频板信号质量就要求不高了,所以也就不用考虑信号完整性等问题了。

    等完成原理图的设计之后,我就请教了好几个人,在布线的时候需要注意的事项,但是没有得到什么有价值的答案,原因是他们不了解我,只是站在自己的去看待这件事了,所以对于他们就没什么难度了。

    在原理图的设计时,参照了“阿嘉”和“六哥”的方案,大体没有太大的改动(六哥的已经商品化,相对有保证),只是完善了自己的接口和一些器件的选型。对于原理图的分析请看前两篇博客,有什么不对的地方欢迎指出。

    原理图设计完成之后,接下来就是为各个器件添加封装了。这个过程我检查的还是比较仔细的,因为上次已经在这里出现过一次问题了。对于电阻,电容的封装大体选用0603,对于个别选用0805。对于重要的器件,参考了数据手册和IPC-7351进行选择,应该不会有问题。

    接下来就是导入网表,开始布局。相对来说这个比较简单所以布局也就比较随意,基本原则就是按照功能模块进行布局的。在布线的时候我更比较随意了,也不想什么规则。当布到一半的时候,好多走线都无法完成了,连打过孔的机会都不给我了。我想肯定是出问题了,应该是布局的问题,大概看这个图看了一天,光看不画,看看哪里出问题了。于是就开始了第二版,有了第一次的不顺利,第二次自然就顺利了很多。大概用了不到一个星期就画完了,这个图我自己看上去很是满意。

   前面这些跟流水账似的,没有什么实质性的意思。

   在画之前我就找好了人帮我检查这个图了,周五我把图发给我了相思谷(一个网友),把帮我之处了很多问题,下面就总结一下问题。

     1、线间距。

      这里应该遵循3W规则,所谓3W就是为了减少线间串扰,应保证线间距足够大,当线中心不少于3倍线宽,则可 保持70%的电场不互相干扰。如要达到98%的电场不互相干扰,可使用10W的间距。——这是查阅华为PCB布线规则所得。

      这里我就没有遵循这个原则,我的线间距大概只有1倍线宽。

     2、电源线过细。

      这里我查阅了华为PCB教程得到了下面一个表格。这里线宽跟所能承受最大电流的关系表

【E1306】STM32无刷电调全套开发资料(源码+原理图+PCB+文档)

【E1306】STM32无刷电调全套开发资料(源码+原理图+PCB+文档)

目录│文件列表:

 │ ESC32 流程图.vsd

 ├ ESC32 Keil

 │  │ IO分配表.xls

 │  │ README.md

 │  ├ lib

 │  │  │ startup_stm32f10x_md.s

 │  │  │ stm32f10x.h

 │  │  │ stm32f10x_adc.c

 │  │  │ stm32f10x_adc.h

 │  │  │ stm32f10x_conf.h

 │  │  │ stm32f10x_dbgmcu.c

 │  │  │ stm32f10x_dbgmcu.h

 │  │  │ stm32f10x_dma.c

 │  │  │ stm32f10x_dma.h

 │  │  │ stm32f10x_exti.c

 │  │  │ stm32f10x_exti.h

 │  │  │ stm32f10x_flash.c

 │  │  │ stm32f10x_flash.h

 │  │  │ stm32f10x_gpio.c

 │  │  │ stm32f10x_gpio.h

 │  │  │ stm32f10x_iwdg.c

 │  │  │ stm32f10x_iwdg.h

 │  │  │ stm32f10x_pwr.c

 │  │  │ stm32f10x_pwr.h

 │  │  │ stm32f10x_rcc.c

 │  │  │ stm32f10x_rcc.h

 │  │  │ stm32f10x_tim.c

 │  │  │ stm32f10x_tim.h

 │  │  │ stm32f10x_usart.c

 │  │  │ stm32f10x_usart.h

 │  │  │ system_stm32f10x.c

 │  │  └ system_stm32f10x.h

 │  ├ pro

 │  │  │ JLink Regs CM3.txt

 │  │  │ JLinkLog.txt

 │  │  │ JLinkSettings.ini

 │  │  │ Jlink_Flash_init.ini

 │  │  │ project.plg

 │  │  │ project.uvgui.MXW

 │  │  │ project.uvgui_MXW.bak

 │  │  │ project.uvopt

 │  │  │ project.uvproj

 │  │  │ project_Debug.dep

 │  │  │ project_uvopt.bak

 │  │  ├ lst

 │  │  │  │ project.map

 │  │  │  └ startup_stm32f10x_md.lst

 │  │  └ obj

 │  │     │ adc.crf

 │  │     │ adc.d

 │  │     │ adc.o

 │  │     │ adc.__i

 │  │     │ binary.crf

 │  │     │ binary.d

 │  │     │ binary.o

 │  │     │ binary.__i

 │  │     │ cli.crf

 │  │     │ cli.d

 │  │     │ cli.o

 │  │     │ cli.__i

 │  │     │ config.crf

 │  │     │ config.d

 │  │     │ config.o

 │  │     │ config.__i

 │  │     │ digital.crf

 │  │     │ digital.d

 │  │     │ digital.o

 │  │     │ fet.crf

 │  │     │ fet.d

 │  │     │ fet.o

 │  │     │ fet.__i

 │  │     │ getbuildnum.crf

 │  │     │ getbuildnum.d

 │  │     │ getbuildnum.o

 │  │     │ main.crf

 │  │     │ main.d

 │  │     │ main.o

 │  │     │ main.__i

 │  │     │ misc.crf

 │  │     │ misc.d

 │  │     │ misc.o

 │  │     │ ow.crf

 │  │     │ ow.d

 │  │     │ ow.o

 │  │     │ ow.__i

 │  │     │ project.axf

 │  │     │ project.hex

 │  │     │ project.htm

 │  │     │ project.lnp

 │  │     │ project.sct

 │  │     │ project.tra

 │  │     │ pwm.crf

 │  │     │ pwm.d

 │  │     │ pwm.o

 │  │     │ pwm.__i

 │  │     │ rcc.crf

 │  │     │ rcc.d

 │  │     │ rcc.o

 │  │     │ run.crf

 │  │     │ run.d

 │  │     │ run.o

 │  │     │ run.__i

 │  │     │ serial.crf

 │  │     │ serial.d

 │  │     │ serial.o

 │  │     │ serial.__i

 │  │     │ startup_stm32f10x_md.d

 │  │     │ startup_stm32f10x_md.o

 │  │     │ stm32f10x_adc.crf

 │  │     │ stm32f10x_adc.d

 │  │     │ stm32f10x_adc.o

 │  │     │ stm32f10x_dbgmcu.crf

 │  │     │ stm32f10x_dbgmcu.d

 │  │     │ stm32f10x_dbgmcu.o

 │  │     │ stm32f10x_dma.crf

 │  │     │ stm32f10x_dma.d

 │  │     │ stm32f10x_dma.o

 │  │     │ stm32f10x_exti.crf

 │  │     │ stm32f10x_exti.d

 │  │     │ stm32f10x_exti.o

 │  │     │ stm32f10x_flash.crf

 │  │     │ stm32f10x_flash.d

 │  │     │ stm32f10x_flash.o

 │  │     │ stm32f10x_gpio.crf

 │  │     │ stm32f10x_gpio.d

 │  │     │ stm32f10x_gpio.o

 │  │     │ stm32f10x_iwdg.crf

 │  │     │ stm32f10x_iwdg.d

 │  │     │ stm32f10x_iwdg.o

 │  │     │ stm32f10x_pwr.crf

 │  │     │ stm32f10x_pwr.d

 │  │     │ stm32f10x_pwr.o

 │  │     │ stm32f10x_rcc.crf

 │  │     │ stm32f10x_rcc.d

 │  │     │ stm32f10x_rcc.o

 │  │     │ stm32f10x_tim.crf

 │  │     │ stm32f10x_tim.d

 │  │     │ stm32f10x_tim.o

 │  │     │ stm32f10x_usart.crf

 │  │     │ stm32f10x_usart.d

 │  │     │ stm32f10x_usart.o

 │  │     │ system_stm32f10x.crf

 │  │     │ system_stm32f10x.d

 │  │     │ system_stm32f10x.o

 │  │     │ timer.crf

 │  │     │ timer.d

 │  │     └ timer.o

 │  ├ src

 │  │  │ adc.c

 │  │  │ adc.h

 │  │  │ binary.c

 │  │  │ binary.h

 │  │  │ buildnum.h

 │  │  │ cli.c

 │  │  │ cli.h

 │  │  │ config.c

 │  │  │ config.h

 │  │  │ core_cm3.h

 │  │  │ digital.c

 │  │  │ digital.h

 │  │  │ fet.c

 │  │  │ fet.h

 │  │  │ getbuildnum.c

 │  │  │ getbuildnum.h

 │  │  │ main.c

 │  │  │ main.h

 │  │  │ misc.c

 │  │  │ misc.h

 │  │  │ ow.c

 │  │  │ ow.h

 │  │  │ pwm.c

 │  │  │ pwm.h

 │  │  │ rcc.c

 │  │  │ rcc.h

 │  │  │ run.c

 │  │  │ run.h

 │  │  │ serial.c

 │  │  │ serial.h

 │  │  │ timer.c

 │  │  └ timer.h

 │  └ vs2008

 │     └ esc32

 │        │ esc32.sln

 │        └ esc32

 │           └ esc32.vcproj

 ├ 原理图、PCB源文件及BOM

 │  │ ESC32(V1.00)BOM.xlsx

 │  └ esc32_sch_pcb_altiumn.rar

 └ 相关设计文档

    │ ESC32硬件---PCB小结(第一版).doc

    │ 无感无刷直流电机之电调设计全攻略.pdf

    └ 电子制作作品发表.rar

TAG无刷电调
  • 4 次
  • 10 分