完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
描述
菱形 PCB 项链 这是一个超级酷的东西,一个由 Attiny13A 供电的菱形 PCB 项链。 这里的目标是通过使用 PCB 和一些 LED 来制作可穿戴项链或珠宝,从而将电子产品和可穿戴珠宝组合在一起。 该项目的核心是一个控制板上所有 LED 的 Attiny13A,该吊坠或项链也由位于电路板底部的 CR2032 纽扣电池供电。 本文将介绍这条项链的整个构建过程,让我们开始吧。 所需材料 以下是我在这个内置中使用的材料-
示意图 这个PCB的原理图很简单,我在这块板上一共放置了12个LED,3个LED连接一个Mosfet,驱动12个LED,我用了4个Mosfet。Attiny13 控制每个 Mosfet 的栅极,我们可以使用拨动开关改变 Attiny13 的状态。 我还添加了一个用于闪烁 Attiny13A 的 CON6 接头引脚,稍后我将使用我的 Arduino 作为 ISP 设置通过此 CON6 引脚连接并刷新微控制器。 PCB设计 然后我完成原理图并将其转换为 PCB 文件。 我准备了一个顶部有一个孔的菱形 PCB 板,用于使用此设置安装链条。我在一侧放置了 3 个 LED 对,我用剩下的 3 个 LED 对做了这个,然后将 attiny13A 放在电路板的中心部分。 我试图让这个 PCB 尽可能小,因为它是一种可穿戴设备,人们会整天佩戴,所以通过减小它的尺寸,我们也在减轻整体重量。 设计错误 这是我在设计电路板时犯的一个小错误,我忘记仔细检查我为这个项目制作的 Mosfet PAD,我使 Mosfet 的焊盘比我现有的占地面积小一点,因为这个 PCB 很小,所以我减少了Mosfet 垫的一侧以节省空间。 我忘记在我创建的 Mosfet 焊盘上添加阻焊层,这导致 PCB 没有任何阻焊开口用于将 Mosfet 与 PCB 焊接。 线迹都在它们的位置,所以我用镊子刮掉了阻焊层来代替 mosfet 焊盘,这揭示了我可以焊接 mosfet 的铜端子。 PCB组装过程将具有以下步骤。
焊膏 第一步是在每个元件焊盘上涂抹焊膏。 我使用了普通的 Sn-Pb 焊膏,其熔化温度为 140 至 270 °C。 添加锡膏后,我们进入下一个过程,即“PICK & Place Process” 拾取和放置 然后,我使用 ESD Tweeaser 仔细挑选每个组件并将其一个一个地放置在指定的位置,这需要大约 30 秒的时间,但结果是一个完美的 PCB,所有组件都放置在它们的位置。 热板回流 在“PICK & Place Process”之后,我小心翼翼地将整个电路板抬起并放在我的 DIY SMT Hotplate 上,它也是自制的,就像这个项目一样。 几分钟后,当热板达到焊膏熔化温度时,所有组件都将通过此热回流工艺焊接。 然后我们从热板上取下 PCB 以冷却所有组件和电路板表面。 测试 LED 的连续性 因为我们在这里使用 LED,所以检查 LED 是否焊接正确至关重要。 我在二极管检查模式下使用了一个普通的万用表,我们将万用表的探头连接到正确极性的 LED 的阳极和阴极。 如果 LED 焊接正确,所有 LED 都会发光。如果有任何焊接错误,它们将不会发光。 使用 Arduino 作为 ISP 刷新 Attiny13 对于刷机过程,我们不能通过任何 USB 直接对 ATTINY13 进行编程,我的意思是有一种方法可以直接从 USB 端口对 Attiny 进行编程,但我没有这样做。 相反,我将使用 ISP 闪存方法,该方法将利用 attiny13A 的 SPI 引脚在其中烧录引导加载程序,然后烧录。 AVR 芯片通常是空白的,它们需要设置为与 Arduino IDE 兼容,但要做到这一点,您需要 AVR 程序员来做这件事,例如 USBASP。 有趣的是,您可以通过一个非常简单的步骤使用 Arduino Uno 或 Nano 板制作自己的 AVR 编程器。
编程过程使用 VCC、GND 和四个数据引脚。三个引脚连接编程微和目标微之间的 MISO、MOSI 和 SCK,编程微的第四个引脚连接到目标的复位引脚。 我将使用我为闪烁 Attiny 或 Atmega MCU 制作的 DIY Attiny Programmer。
代码 01 int pinCount= 4 ;// 声明整数变量 pinsCount int pins[] = { 0 , 1 , 2 , 3 };// 声明数组pins[] 无效 设置() { pinMode(0,输出); pinMode(1,输出); pinMode(2,输出); pinMode(3,输出); } void loop () { for ( int i= 0 ; i digitalWrite(pins, HIGH); // 在延迟( 70 )上切换索引 i 处的 LED;// 停止程序 100 毫秒 digitalWrite(pins, LOW);// 关闭索引 i 处的 LED } for ( int i=pinsCount -1 ; i> 0 ; i=i -1 ){// 向左追(除了外面的 LED) digitalWrite(pins, HIGH); // 在延迟(70 )上切换索引 i 处的 LED;// 停止程序 100 毫秒 digitalWrite(pins, LOW);// 关闭索引 i 处的 LED } } 这是我在主代码之前使用的一个简单的追逐草图,仅用于检查电路板是否工作。 主代码02 常量 int switchPin = 4 ; int pinCount= 4 ;// 声明整数变量 pinsCount int pins[] = { 0 , 1 , 2 , 3 }; int lightMode = 1 ; 无效 设置() { pinMode(0,输出); pinMode(1,输出); pinMode(2,输出); pinMode(3,输出); pinMode(switchPin, INPUT_PULLUP); 数字写入(0,低); 数字写入(1,低); 数字写入(2,低); 数字写入(3,低); } 无效 循环() { if (digitalRead(switchPin) ==LOW) { 光模式 = 光模式 + 1; if (lightMode == 3 ) { 光模式 = 1 ; } } if (lightMode == 1 ) { 数字写入(引脚[ 0 , 1 , 2 , 3 ], 低); 延迟(200); } 否则 if (lightMode == 2 ) { for ( int i= 0 ; i digitalWrite(pins, HIGH); // 在延迟(70 )上切换索引 i 处的 LED;// 停止程序 100 毫秒 digitalWrite(pins, LOW);// 关闭索引 i 处的 LED } for ( int i=pinsCount -1 ; i> 0 ; i=i -1 ){// 向左追(除了外面的 LED) digitalWrite(pins, HIGH); // 在延迟(70 )上切换索引 i 处的 LED;// 停止程序 100 毫秒 digitalWrite(pins, LOW);// 关闭索引 i 处的 LED } } //延迟(200);// 看文字 } 这是我在这个项目中使用的代码,它是一个简单的追逐器草图,当我们按下按钮时,它会在追逐器序列中切换每个 Mosfet。(很简单的东西) 添加纽扣电池座 至于电源,我使用了一个 CR2032 纽扣电池,它通过其 THT 支架连接到此 PCB。 在对 Attiny13A 进行编程后,我们将这个硬币电池座添加到它的位置,因为它覆盖了编程引脚,所以这就是我最后添加它的原因。 然后我们将 CR2032 纽扣电池放入其支架中,然后按下前面的按钮。 这将启动追逐序列,LED 将发光。 最后,我在这个板上添加了一条链子,这样我们就可以像佩戴合适的可佩戴项链一样佩戴它。 此外,我们可以在此设置中添加一个耳环挂钩并将其用作可佩戴的耳环。 结果 通过再次按下按钮,它会关闭追逐序列,并且徽章停止工作。 这种使用 SMD 触觉按钮的方法消除了 THT 滑动开关。
本帖被以下淘专辑推荐:
|
|
相关推荐
|
|
726 浏览 1 评论
699 浏览 1 评论
电路小知识 | 交流电路复数的基础知识以及相位差和电抗的计算
564 浏览 0 评论
1753 浏览 3 评论
1497 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-21 16:58 , Processed in 0.720821 second(s), Total 73, Slave 52 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号