本帖最后由 xinxincaijq 于 2013-7-1 11:01 编辑
自制51单片机开发板全过程(傻瓜式教程)
1.自制单片机之一……想法与计划 学习了一段时间的51单片机,也买了学习板,但总觉得在学习板上操作对元件引脚认识不那么深刻。学习板上的许多功能块元件密集,相互又牵扯,造成电路认识上的不清。在接扩展板时引线也不能集中成一组排线引出。商家也对他的原理图遮遮掩掩说一半留一半的。因此我打算拿起电烙铁,在通用板上先搭建起最小系统,再做出ISP下载线,一步步的与愿和我一同上路的菜鸟们踏入C51的世界。 昨天下午才汇了钱买洞洞板,没想到今天中午快递公司的人就把货送到我手上了。快的有点让我吃惊。等元件也到货后我便可以动手并上图与大家一同学习讨论了。 今天刚申请的空间,也试试发贴和上图。 2.自制单片机之二------AT89S51最小系统制作 废话这里就不多说了,干活吧!
C51最小系统电路在网上一搜一大把,大同小异。我略做改动后如图: 加一个11.0592MHZ的晶振是为了以后做串口通信时和PC有相同的波特率。可用短路帽切换。
说说板子的布局:网上卖的最小系统都是把板子做的非常小,如果仅仅只学习最小系统,那是可以的。我以后是要做扩展的,所以不能做的太小。因此该有的应留着,不该有的都去掉。很重要的是以后在做其它扩展功能块时的连接线就用一组排线而不能再有其它飞线。因此做一个好的布局是非常有必要的。 在板上除了最小系统外还有键盘输入、数码管、LCD、I2C存储器。它们的数据接口和电源接口也是完全独立的。其它的功能都准备在以后通过上方的接口另外用板子扩展。 图上方的弯脚插针就是向外扩展的接口。我在弯脚下方又安排了一组直插针。它是和弯脚插针并行连接的。这样在扩展功能块时我先在AT89S51板上将要输出的引线(包括数据线、控制线、电源线等)跳至直插针上。这样通过弯脚插针引到扩展板上的线就只有一组排线。不用再零乱地接上几组连接线了。这也是我用买的学习板常常垢病而最终弃而自制的主要原因之一。因为当时我扩展LCD12864,我既要连上数据线,又要连电源线,LCD模块上还拖着背光电源限流电阻线。还有液晶驱动电压调节电位器。所以感觉拖的到处是线,很不方便。 实施:通过检查各元件的好坏后便进行焊接工作。焊接进行的还是比较顺利。见下图: 完成了。在检查了线路的正确性后,用万用表测了是否有短路。一切正常! 之前我的AT89S51里已写好了个最小系统测试程序,就是让P1.0上的红色发光管闪烁。 # include <at89x51.h>
void main(void)
{ unsigned char i,j,k;
while(1)
{
for(i=0;i<100;i++)
{
for(j=0;j<255;j++)
for(k=0;k<255;k++);
}
P1_0= !P1_0;
}
} 我把它先插在我买的学习板上运行,一切正常。但插在我做的的最小系统上却没反应。就那么点线路查来查去还是没问题呀!是晶振不起振?在学习板上用手拿着改锥分别碰18脚(XTAL2)和19脚(XTAL1)。发现当人体碰到19脚时程序会乱掉,就是说可能会停振。于是又把我的系统板上晶振位置的电路重焊一遍,尽量缩短了19脚处线的长度。C4、C5又分别换了15PF、20PF、30PF的电容试试。故障依然,没办法,得静一静,看书! 在看到介绍第31脚(EA/VPP)时猛然想到31脚没有接到电源正啊!起来立即把31脚接到电源正,红色发光管立即闪烁起来。此时的高兴真不可名状啊! 总结:除了在焊接时要仔细外,先画好电路图也是很重要的。像上面的电路图在89S51的31脚上就只写了Vcc的字样,因此焊接时就被忽视了。应该先画出一张完整的图才行。 检查分几个部分:1.晶振部分、2.复位部分、3.电源部分(最不可以忘掉EA接V+5v),4.还有就是P1_0发光管最基本的一个应用部分。
其实这个板子上的晶振电路是非常容易起振的。19脚上的引线也没那么敏感。但处理19脚时可能的话还是要尽量短些的,毕竟它比18脚要对外界干扰敏感的多。手摸上去就停振了。
还有就是学习单片机怎么着也得先买块最最简单的板子。否则你焊好你的板子后有故障到底是程序问题还是线路问题就无从查起,查错查得还不疯掉呀! 程序也没法写进片子里去。你可能会说再做一个ISP下载线呀。做下载线更加不稳定,下一篇我会专门讲做ISP下载线的问题。再来个特写鼓励一下自己。
|