标题: 怎样叫89C2051单片机动起来?需要多高电压?没有编程器,手动输入程序可以吗? [打印本页]

作者: 海阔天空8    时间: 2019-1-5 11:51
标题: 怎样叫89C2051单片机动起来?需要多高电压?没有编程器,手动输入程序可以吗?
本帖最后由 海阔天空8 于 2019-1-6 18:18 编辑

需要多高电压?5V还是12V?没有编程器,手动输入程序可以吗?

89C2051.jpg (435.83 KB, 下载次数: 140)

89C2051.jpg

89C2051-2.jpg (444.35 KB, 下载次数: 134)

89C2051-2.jpg

89C2051-3.jpg (612.77 KB, 下载次数: 124)

89C2051-3.jpg

作者: 文凤轩    时间: 2019-1-5 16:19
这个问题问的,呵呵!
作者: guoyunzhi    时间: 2019-1-5 16:31
第40角加5V,第20角接地,如果要写代码可以用ISP进行烧录,第10角为RX,第11角为TX,可以通过STC,或者其它烧写软件
作者: T34/85    时间: 2019-1-5 19:52
5v就好

作者: qq1611901472    时间: 2019-1-5 21:51
兄弟,你这是20引脚的单片机,你要去查这个芯片引脚的参数,然后用一个串口下载,VCC接VCC,GND接GND,TXD接RXD,RXD接TXD,串口接电脑,写好程序下载。
作者: wc86110    时间: 2019-1-5 22:21
手动输入自然也是可行的,不过对简单程序还好复杂的就呵呵了
作者: 海阔天空8    时间: 2019-1-6 08:57
wc86110 发表于 2019-1-5 22:21
手动输入自然也是可行的,不过对简单程序还好复杂的就呵呵了

您说得对!编程器不也是人做的吗?没有它我觉得单片机照样可以写入程序,只是麻烦而已(但原理是相同的)。请问在什么状态下向哪些脚输入?好像输入程序的时候要提高电压“激活”(12V?),怎样输入呢?始终搞不明白!
作者: wc86110    时间: 2019-1-6 12:39
海阔天空8 发表于 2019-1-6 08:57
您说得对!编程器不也是人做的吗?没有它我觉得单片机照样可以写入程序,只是麻烦而已(但原理是相同的) ...

那种不依靠电脑的人工编程,如上图通过拨码开关与 P 口连接按外围器件要求输入高低电平即可,编程引脚输入高电压即为编程,如对芯片了解的话这不难

只是这个二进制编程比较繁琐,费神低效,只能应付那些流水灯,倒\定时器之类的简单应用

作者: 海阔天空8    时间: 2019-1-6 17:06
wc86110 发表于 2019-1-6 12:39
那种不依靠电脑的人工编程,如上图通过拨码开关与 P 口连接按外围器件要求输入高低电平即可,编程引脚输 ...

谢谢!关键的一句话啊!“编程引脚输入高电压即为编程,如对芯片了解的话这不难”--------按最小系统接好外围电路编程引脚输入+5V(还是+12V?)按需要输入后如何固定程序呢?程序固定后如何读出呢?我实验过RAM6116存储器,只是断电后程序不能保留,,,,,20年了我也没琢磨透89C2051的编程!
作者: 海阔天空8    时间: 2019-1-10 18:27
wc86110 发表于 2019-1-5 22:21
手动输入自然也是可行的,不过对简单程序还好复杂的就呵呵了

学的就是原理呀!简单能行了是关键性的进步
作者: 海阔天空8    时间: 2019-1-11 12:09
guoyunzhi 发表于 2019-1-5 16:31
第40角加5V,第20角接地,如果要写代码可以用ISP进行烧录,第10角为RX,第11角为TX,可以通过STC,或者其它 ...

一共20个引脚,哪来的40脚?
作者: chenkl1996    时间: 2019-1-12 18:29
我们老师说过,他那个时候的单片机都是采用楼主的这种方式来输入二进制代码的,擦除用紫外线,只不过是速度很慢而已,肯定是可以实现的,研究一下编程的时序就行了
作者: 菜鸡一只314159    时间: 2019-1-12 18:38
用ch340,注意TX接RX,RX接TX。vcc与gnd分别连接。软件用isp。
作者: shuisheng    时间: 2019-1-12 20:41
刚买回的单片机里面有程式,接上5V与GND就会动!想让他按的你的动就要整你的程式,加烧录器烧入,可以上宏晶官网申请一个免费样品,会送你一个免费烧录器(自己在厂里上班者为佳).剩下就是调试,烧录,调试,烧录…………。乐此不彼!
作者: wc86110    时间: 2019-1-12 20:53
chenkl1996 发表于 2019-1-12 18:29
我们老师说过,他那个时候的单片机都是采用楼主的这种方式来输入二进制代码的,擦除用紫外线,只不过是速度很 ...

没错,早期都是那样弄的,从紫外线擦除演变到电擦除。存储器,单片机的容量也越变越大再用这种方法就不适合了,了解就好
作者: wc86110    时间: 2019-1-12 20:57
只是楼主那块电路板的用途并不是编程
作者: 累不死的狗    时间: 2019-1-12 21:12
5V电压,手动输入程序是指什么呢?
作者: angmall    时间: 2019-1-13 07:43
这是51黑论坛里面别人相似问题的解决过程

用洞洞板制作89C2051编程器 附洞洞板软件LochMaster_V4.0下载
http://www.51hei.com/bbs/dpj-137542-1.html
作者: 海阔天空8    时间: 2019-1-13 17:34
wc86110 发表于 2019-1-12 20:57
只是楼主那块电路板的用途并不是编程

那是什么呢?望告知。
作者: wc86110    时间: 2019-1-13 20:41
知道这货是通过单片机程序及外围电路的通断来控制各发光二极管亮灭去实现既定目的就好,至于叫什么那不是重点
作者: lkk99号    时间: 2019-1-13 21:28
这个问题,,,,醉了。
作者: lkk99号    时间: 2019-1-13 21:30
你这个东西是已经做完了的,现在对于他只有使用的价值了,给他供电,5V,然后看他的说明
作者: angmall    时间: 2019-1-13 21:31
这是编程算法的概述:
1.将+5V连接至Vcc,将RST设置为低电平,并等待至少10毫秒。
2.设置RST高电平。 将PROG(P3.2)设置为高电平。
3.通过引脚P3.3,P3.4,P3.5,P3.7设置编程模式
4.从开始地址000H,通过P1端口将指令代码输入
5.将RST设置为+12V(Vpp)
6.向PROG发送1.2ms长的低脉冲(P3.2)。
7.将RST设置为+5V。 可选地,通过位P3.3,P3.4,P3.5,P3.7设置验证模式,并从P1读取数据。
8.通过脉冲XTAL1递增地址计数器,通过P1设置下一个指令代码
9.重复步骤5到8,直到达到2kB边界,或者直到整个文件被编程到芯片中。
10.完成:XTAL1低,RST低。 断开电源。
提示:您可以选择检查状态位P3.1 RDY / BSY,而不是等待1.2ms。 它应该更可靠。



atm_prog.gif (4.39 KB, 下载次数: 118)

编程模式

编程模式

progwdth.gif (9.29 KB, 下载次数: 121)

脉冲宽度

脉冲宽度

atm_diag.gif (6.87 KB, 下载次数: 124)

编程和验证的时序图

编程和验证的时序图

作者: 海阔天空8    时间: 2019-1-14 08:19
angmall 发表于 2019-1-13 21:31
这是编程算法的概述:
1.将+5V连接至Vcc,将RST设置为低电平,并等待至少10毫秒。
2.设置RST高电平。 将P ...

有关编程步骤:还是不太明白,HM6116(随机存取存储器)的地址和数据段都有LED指示状态的。
3.通过引脚P3.3,P3.4,P3.5,P3.7设置编程模式。--------不明白。
4.从开始地址000H,通过P1端口将指令代码输入 ------怎么识别地址呢?要用LED指示吗?
5.将RST设置为+12V(Vpp)--------就是“激活编程”的意思吗?+12V直接接1(RST)脚吗?不行吧?一般1脚(RST)是通过一个电容接+5V的呀?+12V直接接电容负极吗?
作者: 海阔天空8    时间: 2019-1-14 08:20
lkk99号 发表于 2019-1-13 21:30
你这个东西是已经做完了的,现在对于他只有使用的价值了,给他供电,5V,然后看他的说明

快20年前的东西了!忘了呀!找不到出处了
作者: w1179benp    时间: 2019-1-14 08:51
楼主按楼上提供的方法试了没有(这个应该是标准做法了)?期待你的结果。
作者: wc86110    时间: 2019-1-14 11:45
海阔天空8 发表于 2019-1-14 08:19
有关编程步骤:还是不太明白,HM6116(随机存取存储器)的地址和数据段都有LED指示状态的。
3.通过引脚P ...

这种老旧的编程方法缺乏基本功是玩不转的
作者: 海阔天空8    时间: 2019-1-14 17:27
w1179benp 发表于 2019-1-14 08:51
楼主按楼上提供的方法试了没有(这个应该是标准做法了)?期待你的结果。

还没搞清楚“编程步骤”(找到3个近似版本还是没看明白),我这个是快20年前的东西了,还没找到出处。
作者: 海阔天空8    时间: 2019-1-14 17:30
wc86110 发表于 2019-1-12 20:57
只是楼主那块电路板的用途并不是编程

非常可能!但是我忘了是干什么的了!也没找到出处,,,,,,,,,
作者: 海阔天空8    时间: 2019-1-14 17:34
wc86110 发表于 2019-1-14 11:45
这种老旧的编程方法缺乏基本功是玩不转的

HM6116的“程序”输入,输出基本会了,他应该距离89C2051编程不远了,这一步跨越很难!至今没找到一个能说明白的“步骤”(大同小异,都是关健点说不明白)。
作者: YBZYBZ    时间: 2019-1-14 18:43
40大洋买个ESP2000SE编程器,支持的型号也多
作者: angmall    时间: 2019-1-14 18:50
要搞清楚“编程步骤”, 这个需要查手册

AT89C2051中文资料(非常完整)共14页pdf下载
http://www.51hei.com/bbs/dpj-115051-1.html

作者: 海阔天空8    时间: 2019-1-14 21:14
angmall 发表于 2019-1-14 18:50
要搞清楚“编程步骤”, 这个需要查手册

AT89C2051中文资料(非常完整)共14页pdf下载

多谢!可是我无法打开中文呀!
作者: angmall    时间: 2019-1-14 22:11
我给你来个英文原版资料

AT89C2051-doc3390.pdf

1.08 MB, 下载次数: 7


作者: 海阔天空8    时间: 2019-1-15 08:37
angmall 发表于 2019-1-14 22:11
我给你来个英文原版资料

全是程序??
作者: 海阔天空8    时间: 2019-1-17 10:57
w1179benp 发表于 2019-1-14 08:51
楼主按楼上提供的方法试了没有(这个应该是标准做法了)?期待你的结果。

我还是看不明白“编程步骤”!1脚编程激活电压怎么加(能直接接+12V吗?)?0000-1111地址端在哪?(P1-0到 P1-7是地址端吗?)
作者: angmall    时间: 2019-1-17 19:17
海阔天空8 发表于 2019-1-14 08:19
有关编程步骤:还是不太明白,HM6116(随机存取存储器)的地址和数据段都有LED指示状态的。
3.通过引脚P ...

3.通过引脚P3.3,P3.4,P3.5,P3.7设置编程模式。--------不明白。

4.从开始地址000H,通过P1端口将指令代码输入 ------怎么识别地址呢?要用LED指示吗?
就是从地址000H开始,一个一个指令代码输入
5.将RST设置为+12V(Vpp)--------就是“激活编程”的意思吗?+12V直接接1(RST)脚吗?不行吧?一般1脚(RST)是通过一个电容接+5V的呀?+12V直接接电容负极吗?
+12V直接接1脚RST
看这个编程和验证的时序图


作者: zl2168    时间: 2019-1-17 21:07
我在大约30年前曾用手工输入,即使这样,也是需要输入设备的。你不要再去探讨手工输入了,有这时间,可以学到很多现代单片机应用技术了。
作者: 海阔天空8    时间: 2019-1-17 21:56
angmall 发表于 2019-1-17 19:17
3.通过引脚P3.3,P3.4,P3.5,P3.7设置编程模式。--------不明白。

4.从开始地址000H,通过P1端口将指 ...

谢谢你的不厌其烦!谢谢。
作者: 海阔天空8    时间: 2019-1-17 21:58
wc86110 发表于 2019-1-12 20:57
只是楼主那块电路板的用途并不是编程

您说不是编程?可拨码开关和按键有事干什么的呢?原图资料就是找不到了!
作者: wc86110    时间: 2019-1-18 05:19
这货唯有它的源码或实际操作才能知道各个开关按键的作用不能靠瞎猜
作者: 海阔天空8    时间: 2019-1-18 08:42
zl2168 发表于 2019-1-17 21:07
我在大约30年前曾用手工输入,即使这样,也是需要输入设备的。你不要再去探讨手工输入了,有这时间,可以学 ...

“输入设备”??无非就是开关,电容,电阻,二极管而已。我就不信离了电脑玩不了单片机!学会学不会不要紧了,我就是闲的,消磨时间,,,,
作者: 海阔天空8    时间: 2019-1-18 08:55
zl2168 发表于 2019-1-17 21:07
我在大约30年前曾用手工输入,即使这样,也是需要输入设备的。你不要再去探讨手工输入了,有这时间,可以学 ...

    再说HM6116存储器编程:可以是4位(或其他位)二进制数作为地址用LED显示,在0001(第一个地址),在数据端(也可以是8位LED指示)输入数据(8位二进制数),然后把21脚(WE)置0电位就把数据端设置的数据“写入”了。再换第二个地址(0010),重新设置数据,继续“写入”,,,,如此重复。然后在不同频率的脉冲驱动地址的变化,数据端就能输出存入的数据了,,,,,,,这和单片机应该大同小异吧,不同的是断电后数据不能保存而已。
作者: 42456565    时间: 2019-1-18 12:14
5v驱动电压

作者: a463416420    时间: 2019-1-18 17:25
连接到5v咯
作者: 海阔天空8    时间: 2019-2-16 21:25
angmall 发表于 2019-1-13 21:31
这是编程算法的概述:
1.将+5V连接至Vcc,将RST设置为低电平,并等待至少10毫秒。
2.设置RST高电平。 将P ...

谢谢您的回答!有问题请教:见图

裁剪_32.jpg (74.79 KB, 下载次数: 109)

裁剪_32.jpg

作者: 海阔天空8    时间: 2019-2-18 17:27
w1179benp 发表于 2019-1-14 08:51
楼主按楼上提供的方法试了没有(这个应该是标准做法了)?期待你的结果。

有的步骤不清楚,还不敢试




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1