查看完全版本 : 对初学者来说,我觉得这个已经足够了。
许多爱好者由于不具备专业的开发环境和编程器而无法进行单片机实验,这里给大家介绍一个简单的AT89C2051编程电路,只要有一部微机,再做一个简易的接口即可。打印口必须具备双向功能(目前的微机一般都满足,如EPP、ECP模式均可用),编程器电路见上图。
AT89C1051/2051单片机的编程的时序简述如下:
1接通电源(置Vcc为+5V),置RST、XLAT1为低电平,延时至少10ms。
2置RST、P32为高电平。
3置P33、P34、P35、P37为相应编程模式:LHHH(写入)、LLHH(读出)、HLLL(片擦除)……
4送出要写入的数据到P10~P17(第一次写入的是地址0)。
5将RST升至12V,使单片机能进行写入或擦除操作。
6送一个脉冲给P32,激发一次编程动作。这时内部自动完成所需的时序(约12ms),此间P31变为L,表示内部忙。
7为了验证写入数据是否正确,可将RST电压拉回到H,并置P33~P35、P37为“LLHH”,所写入的数据便可从P1端口读出。
8送一个脉冲给XLAT1,单片机进入下一个编程地址。
9循环步骤4到8,直到最后一个编程地址,便可完成全部的编程工作。
10置RST、XLAT1为L,并切断电源Vcc,编程结束。
其它有关擦除和加密的步骤这里略过,读者可参考有关资料。
在该装置中,微机并口的8条数据线(PD0~PD7)接至单片机的P1端口,用来收发数据。4条控制线(PC0~PC3)分别用来产生编程所需的控制信号。状态口的PS6接至P31用来获取单片机的工作状态,采用C++语言编写编程控制软件,实现简易的编程操作。
程序使用方法:(运行程序将出现使用说明)
P2051 R[文件〗 读出单片机内数据,需置开关P33、P34为L,P35、P37为H。
P2051 W[文件〗 将数据写进单片机,需置开关P33为L,P35、P34、P37为H。
P2051 E 擦除单片机,需置开关P33为H,P35、P34、P37为L。
P2051 L 对单片机加密,需置开关P33、P34为H,P35、P37为L。
不知这位大侠有无实际做过这个编程器?
我曾经做过一个,但读写不可靠,特别是在速度比较快的PC机上,另外可靠的接地可以提高读写正确率。我最后放弃,床下又多了一块板子:mad: :mad:
可能用386以下的机器会好一点吧?没试过。
如果真的是这样,我要放弃了,我的PC是赛阳900,不知道会不会太快??:(
今天焊了一块,接上PC机一试,没动静!!呵呵,白费功夫!!!!:p
用486或其以下的机器试一试?:confused:
BG4-2-12747
2003-01-01, 12:47
:p 这个年代要找到486好像不容易了。
还是买个现成的编程器比较合适。。TOP851就凑合。关键是便宜
各位朋友:
给大家拜年了!
这个编程器我做了,而且成功了,调试的时候发现问题,应该在电源输入
处接上103的瓷片电容,之后就很稳定了!
我一直都用这个,他伴随我学习51系列单片机,和汇编语言!
对,对!
我已经买了个新的了,初级的,只能写c5x,cx051,目前够用了,呵呵。:p :p
vBulletin Version 3.0.7 Translated by
NewVBB.com™ 2009.
Translated and Hacked by:
Ztbbs