步骤1:所需零件:
1x Arduino。我使用了UNO(但任何版本都可以使用)。确保它上面有一个16MHZ计时器芯片,否则计时器功能将关闭(直到我使用RTC [Real Time Clock]更新。要知道它是否装有计时器,它应该在PCB上有一块银色的长方形),上面印有16.000。
1x Arduino电源(未显示)
1x面包板。可以使用一半尺寸的板,但是更容易使用全尺寸的板(我一起使用了2个一半尺寸的板
Breadboard跳线-需要很多。
7x 2N3904 NPN型晶体管(支持AM/PM可能需要8个,在该晶体管上工作)
8x电阻。请尝试使用大于200欧姆或更小的电阻大于1k。我使用的是220欧姆(如果获得AM/PM支持,则为10倍)
7个1k欧姆电阻器。这将使您的Arduino不会过热(如果获得AM/PM,则为8倍)
1x 4位数7段显示器。我使用了一个普通的阳极显示器(但是一个公共的阴极可以编辑代码)。确保它带有冒号!一个在项目中使用的-Sparkfun COM-09481
也有红色,绿色和黄色(蓝色多花费50c tha n其他颜色。我得到2个以防万一[但是如果您记得使用电阻器,它们几乎是不会损坏的。])
*请注意,如果只想进行无测试的构建,则不需要面包板和跳线。我想先测试一下我的,但要得到其他零件时,我要制造一个完成的原型。
步骤2:布置晶体管
可能该项目最关键的要素是正确布置晶体管。晶体管允许使用正电压接地。开始稍微散开晶体管的支脚,确保它们适合各自的孔(如图所示)。确保晶体管之间至少有一个空行。仔细检查以确保平整面朝向您,否则将无法使用。对所有7个晶体管执行此操作。如果要进行AM/PM支持,请布置额外的一个
第3步:开始连接所有晶体管
Ah,此项目的第一个实际接线工作。使用跳线将晶体管的集电极(如下图所示)连接到面包板上的接地轨。将跳线从面包板上的接地轨连接到Arduino板上的接地引脚。您可能会看到,油漆不是我的强项:)
***警告!下一节可能包含与电气组件及其使用方法有关的科学。继续自行承担风险。谢谢。***
基本晶体管课程。要使用NPN晶体管,在基极引脚上放置电流可使成比例的电流通过集电极引脚到达发射极引脚。这是非常基本的,因为晶体管具有不同的最小电流,最大额定值和不同的电流容量,以及其他许多功能。幸运的是,2N3904对我们非常友善,非常适合使用低功率源(例如Arduino)进行小规模,高频切换。是的!
第4步:将电阻添加到晶体管中。假设快5倍!
现在您必须在晶体管的发射极上添加电阻,否则可能会不小心炸掉显示屏当您将其连接起来时。
连接很简单,从发射极开始,跳到电路板的中心,然后将其连接到另一侧。
取决于电阻器,显示器可能是
第5步:电阻更多
通过添加这些电阻,可以防止Arduino使用过多的电流,然后使其过热。您需要在每个晶体管的基极(中间引脚)和晶体管左侧的空白行之间连接一个1k电阻。
步骤6:现在进入较难的部分(连接显示器)
将晶体管输出连接到显示器比较困难。确保您已经准备好显示器的数据表,因为您需要查看那里的引脚排列。对于我的显示器,我按顺序从A到G依次连接晶体管,最左边的晶体管用于A,最右边的晶体管作为G(以及我的AM/PM的另一个晶体管,从现在起将其称为H的一部分) )。它有助于使事情更有条理。哪个晶体管连接到哪个引脚取决于您的显示器及其引脚。
步骤7:将显示器连接至Arduino
对于我们的第一个测试,您需要将Arduino输出引脚连接到特定的晶体管。
对于A段:将引脚12(在Arduino上)连接到第一个(最左侧)1k电阻(连接到晶体管)基本[中间引脚])
对于B段:将引脚11(在Arduino上)连接到最左边的第二个1k
对于C段:将引脚10(在Arduino上)连接到第三个1k
对于D部分:将引脚9(在Arduino上)连接到第四个1k
对于段E:将引脚8(在Arduino上)连接到第五个1k
对于段F:将引脚7(在Arduino上)连接到第六个1k
对于段G:将引脚6(在Arduino上)连接到第七个(最右边)1k
对于段H:将引脚A3(在Arduino上)连接到H段晶体管上的1k。在测试中并未实际使用。
步骤8:快到了!
连接数字电源引脚(1, 2、6、8)分别连接到Arduino上的5、4、3和2针。进行如下操作:
数字1:在Arduino上的针脚5:数字2:在Arduino上的针脚4:数字3:在Arduino上的针脚3:数字4:在Arduino
上的针脚2:冒号:引脚在Arduino上为3(未在测试中使用)
PM点(撇号)连接到Arduino的引脚2,并且其各自的接地引脚接地)
步骤9:测试
时间终于到了!是时候测试您的显示器了,这是晶体管的优点!
下载并运行下面发布的代码。请注意,如果下载了.tmp文件,没关系,只需将其重命名为.pde文件,然后在计算机上的Arduino中运行它即可。
您应该看到各种模式和测试都在数字上进行。如果发现任何异常,请检查接线。这是一个视频,向您展示理想的测试应该是什么样子。更新:我将视频嵌入到工作中:)感谢用户Burf将我引导到正确的页面。
《对象高度=“ 390” width =“ 640”》
《嵌入allowfullscreen =“ true” allowscriptaccess =“始终” height =“ 390” src =“//www.youtube.com/v/NeEI7_-zZjI?fs = 1&hl = zh_CN“ type =” application/x-shockwave-flash“ width =” 640“》
如果一切顺利,请跳过下一步并继续。如果它似乎不起作用,请转到下一步。
步骤10:故障排除:(
故障排除。甚至只是一提如果您的显示器无法正常工作,则需要检查一些内容。
请确保晶体管的方向正确,平坦的一面应面向您。电阻连接到晶体管的最左边的引脚,并且从电阻到显示器的跳线都钩在相应的引脚上。最后,确保将显示器的跳线连接到正确的Arduino引脚上。
如果没有任何作用,并且一切都正确连接,请检查您的显示器,也许某些部分被烧坏了。第11步:最后!时钟部分!
好了,如果所有测试都顺利,是时候让您的时钟,我们必须重新调整显示屏上的引脚和Arduino上的引脚的范围(这样我以后可以有一些额外的引脚用于可能的PWM控制)
*注意。最好将Arduino清空,这样可以更轻松地上传下一个草图(有时会冻结)。为此,请转到“文件”》“示例”》“基础”》“ BareMinimum”(或等效文件)并将其上传到您的Arduino。 Arduino
Seg C到Arduino
上的Seg D到引脚5在Arduino
Seg E上到Arduino
Seg F上的引脚4到Arduino
Seg G到引脚A1上的引脚A0 Arduino
Seg H所在的位置
数字电源引脚:
数字1至Arduino上的引脚11的数字2至Arduino上的引脚10的数字
数字3至Arduino上的引脚9的数字4到Arduino
Colon上的引脚6。确保将冒号接地引脚接地!我的引脚与其余数字输出引脚不同。
步骤12:上传时钟代码
更新:版本1.4!此更新包括AM/PM支持以及更简单的代码。
要使用该代码,请下载下面包含的文件。它应下载为.tmp文件,只需将其重命名为.zip文件即可。将文件解压缩到arduino素描文件夹中。在arduino中,转到Sketchbook》 TimeDuino_v1.4并将其打开。它应该有一个带有3个选项卡的程序。转到第三个标签来设置变量。请确保阅读评论!
上传后,它应显示9:42,并带有PM点。
步骤13:可能的更新/改进
我有一些关于此时钟的更新,如果我可以使它们工作,就应该发布。.. v1.1-使用显示的小数和撇号
v1.2-添加按钮以设置时间
v1.3-支持闪烁的冒号,将每秒闪烁冒号(如某些时钟)
更新!眨眼冒号支持(通读代码以了解操作方法)
v1.4-24小时时钟配置
更新!支持24小时制。阅读代码以获取详细信息
v1.6-可能增加秒数,使用另外2位数字,使其显示为6位数字。v1.8-RTC支持(我已订购了DS1307时钟芯片,以及所需的时钟芯片)使其工作,但需要一些时间才能使它正常工作)(希望)可以消除计时问题(显示器运行速度很快,正在测试以减小效果) 》另外一些更新可能包括对公共阴极显示器的支持,从而消除了对特定显示器的需求,并增加了警报和暂停功能。
责任编辑:wv
-
时钟
+关注
关注
10文章
1733浏览量
131445 -
Arduino
+关注
关注
188文章
6468浏览量
186940
发布评论请先 登录
相关推荐
评论