Arduino(MEGA2560)最小系统电路设计以及固件(bootloader)烧录方法(free)

Arduino(MEGA2560)最小系统电路设计以及固件(bootloader)烧录方法(free)

**
Arduino单片机由于其功能强大,程序编写相对简单,外设丰富,深受广大电子爱好者喜欢。一般来说比较常用的就是Arduino UNO和Arduino MEGA2560(个人拙见),而UNO因为外设稍微少了一点,那么就用MEGA2560呗,可是官方的板子体积有点大,很多引脚也不一定用得到,因此就要自己设计最小系统板子了。
最近项目需要用到MEGA2560,打算自己设计最小系统,找了很多资料参考,自己也总结了遇到的一些坑,大家可以参考参考。大佬轻喷,下面直接上干货!!!(文末有官方板子源文件的链接)
这是官方的原理图,对数字引脚和模拟引脚做了区分,系统引脚也引出了,我们就参考着自己设计吧!官方原理图

这里的最小系统,当然就是包括单片机,复位电路,晶振电路,下载接口电路,电源电路。这个就不多说了,大家应该都看得懂官方原理图。
电压选择电路:
我想说的就是官方原理图里面有个电压比较(选择)电路,有些伙伴可能比较迷惑,这电路到底是干什么用的,自己设计到底需不需要设计它。如下图所示:
在这里插入图片描述

这里用了一个LM358运放做比较器,电路大概意思是将官方的开发板电池输入电压(BAT)分压1/2后与3.3V进行比较,若大于3.3V则PMOS不导通,USB输入电压无效,使用电池电压稳压给整个系统供电。若小于3.3V,则启用输入的USB电压(5V),保证系统正常工作。其实我认为这个电路就是为了保证单一的电源选择,壁面不同的电源输入之间形成干扰。那么自己设计电路的时候,这部分是可以不用设计的,自己输入电源稳压给单片机供电即可。为什么不用呢,因为我下载电路用的是无线下载,根本不需要插USB,所以不存在电源选择,哈哈哈哈!(好吧,其实我还是设计了这部分电路的,只是我实物焊接的时候没有焊接而已,还是自己摸索出来的!害!)
LM358是双运放集成器件,那么另外一个运放干嘛去了呢?在这呢:
在这里插入图片描述

这个LED指示灯很重要,至于它是干嘛用的,我也没去仔细琢磨,它就是一个系统LED灯指示灯,程序运行,固件烧录,程序烧录的时候都有用,可想而知他的重要性,因此建议大家留着这个LED灯。
下载电路:
好了,接下来就是下载电路?大家看一看官方板子的下载电路,用的是ATMEGA16U2-MU芯片作为下载芯片,这个电路看起来就觉得有点复杂,而且还要烧录这个芯片的固件,又是QFN封装的芯片,焊接难度提升了哈!直接就把我给劝退了,当然大家还是可以参考这个电路设计的,其实也没那么复杂,嘿嘿!那么我呢,我前面说了,我用的是无线下载器,只需要RST, TX, RX以及电源引脚,三个引脚引出来就可以进行下载了。如下图所示:
在这里插入图片描述

这个下载器是在某宝上面买的,感兴趣的伙伴可以去找找,名字叫 ,我就不打广告了,(好像已经打了哈哈哈!)使用方法这个下载器有详细的说明,我就不多说了!真的很nice!如下图,就可以轻松下载程序了!
在这里插入图片描述

下载程序就这么简单,什么?你下载不进去?是不是提示这样的错误?
在这里插入图片描述

烧录固件:
那多半是因为你的MEGA2560掉固件了,或者你的新的芯片压根就没有固件,需要自己烧录Bootloader,怎么烧录呢,也很简单,需要你在设计原理图的时候留出ICSP下载接口,就是它:
在这里插入图片描述

然后呢,我使用的是USBtinyISP下载器,长这样:
在这里插入图片描述

然后这样连接,如下图:
在这里插入图片描述

硬件连接完毕后,然后就是安装USBtinyISP下载器的驱动,这个买了下载器,你们购买的店家会发给你的,安装好设备管理器显示如图:
在这里插入图片描述驱动安装完这里可能会出现感叹号,导致Arduino IDE识别不到下载器,应该是强制数字签名的问题(有可能安装的时候就遇到了),那么此时需要自行百度“如何解除数字强制数字签名”,解除完后重新安装驱动即可成功安装啦!
安装好驱动后,就可以使用下载器给单片机烧录固件了,打开Arduino IDE,设置好单片机类型(MEGA2560),和下载器类型(USBtinyISP),端口默认吧!如下图所示:
在这里插入图片描述

然后点击“烧录引导程序”,等待烧录过程如图所示:
在这里插入图片描述

烧录完成系统LED指示灯(就是上面提到的很重要的那个灯,没错就是它)会闪烁,表示固件烧录成功,虽然界面提示的是“烧录引导程序出错”,但是实际上是烧录成功的了,具体原因我也不是很清楚,希望知道的大佬教教我(好像因为USBtinyISP不是正版的原因)!
在这里插入图片描述

如上图,提示的,虽然但是,咱们成功了。我验证过了,用新的芯片第一次烧录自己的程序是烧录不进去的,然后烧录固件后(尽管提示错误,但是bootloader烧进去了),才可以烧录自己的程序。

下面是我的原理图和实物图(JLC的紫色板子真好看,白嫖真香)。原理图是更新后的,与绿色板子的实物图相对应(里面把电源电路修改了):
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

下面附上官方的MEGA256的原理图和PCB文件(AD版本哦!),**官方版本源文件请用于自己学习,不得用于商业用途,侵删!!!**我自己的源文件就不献丑了,哈哈哈!
差不多了,讲的不对的地方,相互交流!
**官方源文件:**文件在NetDisk,自己下载哦!

链接:https://pan.baidu.com/s/1gHy_426rJ4zbouH5OAwJKA
提取码:7ssd

版权声明:本文为CSDN博主「AlanChen6」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_36378522/article/details/119462406

生成海报
点赞 0

AlanChen6

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

十六届全向组硬件开源(二)

前言:算法开源已经开始第一章信号的预处理 这一章更新下麦轮的驱动方案,使用过CH32的同学都知道,这款单片机的定时器很少,所以推荐的方案中都是采用DRV8701方案来解决一个PWM口控制一

MCU串行通讯和并行通讯的区别以及UART的理解

假如我们需要从一个MCU发送一段数据到另一个MCU,我们可以选择两种通信方式,串行通信或者并行通信。 假如我们要发送的数据是数字198转化为二进制,就是11000110,如果使用串行通信

Proteus + Keil单片机仿真教程(二)炫彩灯

一、炫彩灯 参考图: 程序分析:每个小灯闪两次,依次累加常亮,最后所有灯再闪烁两次。 这个程序主要是延时程序、单片机引脚口的控制,流程化控制,相对比较简单&#