STM32用最低的成本,并且适合小白写代码

说到单片机大家肯定都不陌生,用来做个小型自动化控制啊,解决个小问题啊,都是非常省事的办法。那如何用最低的成本,并且还适合小白写代码,去做出一个最小系统呢?用的单片机呢型号是ATmega8A-PU,编程IED为arduino1.0接下来我们开始进行装箱。(总电路原理图)

说到单片机,大家肯定都不陌生。 它们可用于制作小型自动化控制装置并解决小问题。 这些都是非常无麻烦的方法。

现在市场上流行的有很多,比如80C51系列ARM系列STM32等等。 虽然原理相似,但编程环境存在差异。 对于只是偶尔玩玩的朋友,我不建议你玩(当然,如果你真的从头开始学习而不是玩玩,建议从80C51入手,效果会更好)。

那么如何以最低的成本做出一个适合新手写代码的最小系统呢? 那么今天我们就来说一下吧。

综合考虑以上因素,我们会选择arduino平台(它的好处太多了,创客必备,简单轻便,更多信息请参考百度)。 使用的微控制器型号为ATmega8A-PU,编程的IED为arduino1.0。 接下来,我们开始打包。

硬件准备:

ATmega8A-PU X1(个别产品售价4-10元)

8MHz晶振X1(几毛钱)

22pF电容X2(几分钱)

10K欧姆电阻

150欧姆电阻

USBASP烧录器X1(15至35元不等)

LED小灯泡

一块面包板或穿孔板

硬件接线:

首先放一张ATmega8A-PU的引脚图,看看各个引脚的功能:

STM32用最低的成本,并且适合小白写代码

(ATmega8A-PU图)

接下来我们开始接线:

1、首先制作振荡电路,将晶振连接到ATM8A-PU的Pin9和Pin10,对应上图中的PB6和PB7。 然后在此基础上,将Pin9和Pin10分别连接一个22pF的电容,最后引出一根线接地。 请看下面的图片:

STM32用最低的成本,并且适合小白写代码

(振荡电路接线)

2 下载给系统供电,分解ICSP的D11/D12/D13,连接到单片机的Pin17/Pin18/Pin19。 5V 连接到 Pin7 (VCC) GND 连接到 Pin22 (GND),其余连接到 Pin1。 请看下面的图片:

STM32用最低的成本,并且适合小白写代码

(ICSP图)

STM32用最低的成本,并且适合小白写代码

(总电路原理图)

+5V→引脚7(VCC)

接地 → ping22(接地)

D11 → 引脚 17 (PB3)

D12 → 引脚 18 (PB4)

D13 → 引脚 19 (PB5)

复位 → 引脚 1(复位)

连接好线后大概是下图这样的(我目前在老家,无法上传自己的实物图,所以先在网上找一张)

STM32用最低的成本,并且适合小白写代码

(物理接线图)

编译下载程序:

以上硬件环境搭建完毕后,我们就开始烧写了。

打开我们的arduino IDE编写环境。 这里我们测试LED灯闪烁,所以只需打开官方提供给我们的示例(File->Example->Basics->Blink)

STM32用最低的成本,并且适合小白写代码

(眨眼示例)

然后找到File->Parameter Settings(Preferences),勾选Output Display Details(路径稍后会有用)

STM32用最低的成本,并且适合小白写代码

然后找到工具-选择开发板-选择ATmega8_8MHz板(注意IDE必须使用1.x否则有的版本会找不到)

STM32用最低的成本,并且适合小白写代码

(选择板)

然后点击左上角的“√”按钮开始编译。 编译完成后,IDE会生成HEX文件,并输出HEX文件所在路径。 您可以复制它并找到它。

STM32用最低的成本,并且适合小白写代码

(十六进制文件路径)

刻录并上传:

完成上述工作后,我们开始上传到我们的最小系统。 上传之前,我们还需要做一些准备工作,包括配置文件、安装USBasp驱动、制作保险丝等。

1、打开arduino的boards.txt文件,进行一些修改(路径为arduino安装路径]hardwarearduinoavrboards.txt)

注意:有些版本arduino下直接没有avr文件夹boards.txt

将以下代码添加到最后一行:

################################################## ## ##########

atmega8_8M.name=ATMega8L(8MHz,不带外部晶振)

atmega8_8M.upload.protocol=arduino

atmega8_8M.upload.maximum_size=7168

atmega8_8M.upload.speed=115200

atmega8_8M.bootloader.low_fuses=0xa4

atmega8_8M.bootloader.high_fuses=0xdc

atmega8_8M.bootloader.path=optiboot

atmega8_8M.bootloader.file=optiboot_atmega8_8M.hex

atmega8_8M.bootloader.unlock_bits=0x3F

atmega8_8M.bootloader.lock_bits=0x0F

atmega8_8M.build.mcu=atmega8

atmega8_8M.build.f_cpu=8000000L

atmega8_8M.build.core=arduino

atmega8_8M.build.variant=标准

2、我们将刚刚编译生成的两个文件复制到arduino根路径hardwarearduinoavrbootloadersoptiboot文件夹下。

3、安装USBasp驱动(搜索这个驱动就行了,没什么好说的,就OK了)。 安装完成后,在电脑管理中串口会有显示。

STM32用最低的成本,并且适合小白写代码

(驱动安装完成)

4、打开客服提供的烧写软件(推荐使用智峰的progisp1.72,可以百度下载),选择我们要烧写的芯片型号(ATmega8A)

STM32用最低的成本,并且适合小白写代码

(对应我们的芯片型号)

然后确认选择是否正确。 如果正确,右侧的 PRG 将亮起。

STM32用最低的成本,并且适合小白写代码

(配置正确)

然后点击右下角…按钮,进入熔丝位设置。 然后点击三个“Read”按钮即可读出当前芯片的熔丝设置。 点击“向导模式”,弹出向导对话框。

STM32用最低的成本,并且适合小白写代码

之后点击向导即可设置熔断向导。 直接勾选选项即可设置保险丝。 我们首先不会解释其他选项。 我们来看看与晶振相关的选项。 我们可以看到芯片默认使用“内部RC振荡器”。 (1MHz)”,现在我们要使用外部8M晶振,我们可以选择底部第三个选项。点击写入。

STM32用最低的成本,并且适合小白写代码

STM32用最低的成本,并且适合小白写代码

(继续写)

5、最后点击右上角的Load Flash,然后选择我们编译好的.hex文件点击开始自动写入。

STM32用最低的成本,并且适合小白写代码

然后开机试试效果吧~

单片机

单片机的编程可以通过汇编语言和C语言来实现?

2024-5-6 9:10:51

单片机

keil单片机编程软件的使用方法和基本使用技巧和调试技巧

2024-5-6 10:08:46

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索