标题: 不用电脑,软件,编程器就不能玩单片机吗? [打印本页]

作者: 海阔天空8    时间: 2020-7-12 06:26
标题: 不用电脑,软件,编程器就不能玩单片机吗?
本帖最后由 海阔天空8 于 2020-7-15 18:10 编辑

我觉得不是。
附图是89C2051的手动编程步骤。不好意思,我看了多少年了就是看不懂呀!静候高人,,,,

手动编程.jpg (123.31 KB, 下载次数: 108)

手动编程.jpg

作者: 王秋冬    时间: 2020-7-12 13:16
我也觉得可以,我口袋里有一个51单片机,让我玩的腿都掉几个啦。
作者: 梁廷明    时间: 2020-7-12 13:47
我觉得玩硬件,模拟电路还有意思一些
作者: 海阔天空8    时间: 2020-7-12 17:41
梁廷明 发表于 2020-7-12 13:47
我觉得玩硬件,模拟电路还有意思一些

离开电脑,软件走不了路了
作者: TTQ001    时间: 2020-7-13 06:37
没有计算机,将无法对单芯片计算机进行编程和调试程序。
作者: 烈火    时间: 2020-7-13 08:12
没有电脑不能玩单片机!最主要的是写的程序没法验证对错。
作者: wc86110    时间: 2020-7-13 08:20
这话说得太过绝对了,早期经历过的玩家可不这么认为
作者: 虎扑jrs    时间: 2020-7-13 08:53
还是要用的,不然功能就太单一。
作者: hsl32    时间: 2020-7-13 08:54
想当年自学51的时候,自学的资料是开发板不用电脑的那种,有几个汇编的按键(主要是MOV),或者是可以直接用机器码输入编程的。当时自己没电脑,学校机房晚上交费可以用,编译是用DOS命令执行编译软件的。当时电脑系统比较新Win98的系统,有些机子是Win95的。我当时在旧货市场搜集了一些8031和外围电路芯片,但没电脑玩不起来,单片机开发板也很贵要一千多。隔壁班的一个同学当时买了一台新脑好羡慕啊:奔腾的CPU、64M的内存,要6千多块(我当时学费是2080元,父母供我一个都很吃力)。后面我买了块89C51的开发板,就几个按键加数码管,但是没钱买编程器也没弄起来。快毕业的时才手工画的用记号笔描做了一块手动输入(8位拨码),对并口EEPROM(AT28C64)编程的线路板,想手动输机器码,当时汇编的编译也是自己人工编译的,后来当设计交了。当时学校里的机房有单片机的试验板,8031+外围扩展可以直接敲机器码的那种,不过那是通讯专业班级的教具,我们没得玩。到现在自己一直给自己的懒找借口:认为自己单片机没学精是因为当年没有一台电脑。不过当年我的零花钱基本上用于买电子书和单片机的书籍,还有电子元器件了,当时的唯一的优点就是知识面广,是课堂没法比的。
作者: 海阔天空8    时间: 2020-7-13 18:21
hsl32 发表于 2020-7-13 08:54
想当年自学51的时候,自学的资料是开发板不用电脑的那种,有几个汇编的按键(主要是MOV),或者是可以直接用 ...

如图,您能叫这单片机动起来吗?哪怕是最简单的“程序”。我的理解是对相应引脚设置一定电位状态,给某些引脚加上(编程)电压(是不是12V?),,,,,,,

电路图.jpg (766.13 KB, 下载次数: 103)

电路图.jpg

作者: 海阔天空8    时间: 2020-7-13 18:24
虎扑jrs 发表于 2020-7-13 08:53
还是要用的,不然功能就太单一。

这就像步行,自行车,汽车,飞机的意思,他们的共同点都能改变物体位置而已
作者: future-yang    时间: 2020-7-13 20:55
没电脑,没软件,你怎么编程,调试,怎么将程序烧入MCU?除非简化语言,像PLC一样,有手提编程器件!
作者: 海阔天空8    时间: 2020-7-13 21:59
future-yang 发表于 2020-7-13 20:55
没电脑,没软件,你怎么编程,调试,怎么将程序烧入MCU?除非简化语言,像PLC一样,有手提编程器件!

语言产生于单片机以后吧?
作者: 海阔天空8    时间: 2020-7-13 22:01
TTQ001 发表于 2020-7-13 06:37
没有计算机,将无法对单芯片计算机进行编程和调试程序。

所谓编程无非就是改变单片机某些引脚的电位0和1吧?
作者: comeon刘    时间: 2020-7-13 23:33
肯定不是
作者: hsl32    时间: 2020-7-14 08:30
海阔天空8 发表于 2020-7-13 18:21
如图,您能叫这单片机动起来吗?哪怕是最简单的“程序”。我的理解是对相应引脚设置一定电位状态,给某些 ...

这个我干过,用拨码开关输入,编程电压12V,结果是——芯片烧坏两颗不敢弄了。因为当时编程电压12V加载时间没法控制,用手控制时间过长。当时2001年的电子报有出这个2051的可编程实验板(我就是看这些8031、2051的可编程板子入的坑,当年看那些半汇编半机器码的指令很着迷。)
作者: 草草111111    时间: 2020-7-14 08:41
可以玩呀,所有的电路自己搭建,单片机也是用最简单的元器件搭建的,不过有了简单的,都没有人愿意去搞这么麻烦的
作者: hsl32    时间: 2020-7-14 08:47
海阔天空8 发表于 2020-7-13 18:21
如图,您能叫这单片机动起来吗?哪怕是最简单的“程序”。我的理解是对相应引脚设置一定电位状态,给某些 ...

现在书柜里还有当年复印的一篇文章《89C2051的手动编程》包含电路图,是《电子制作》2000年第4期的文章。
作者: jhczy    时间: 2020-7-14 09:15
用汇编语言编写单片机程序,然后再人工编译成二进制码,最后通过手工编程器烤进单片机,但没有编程器同样也玩不起来单片机。后话:如果能把汇编语言玩的如火如荼,电脑和必要的开发工具自然就解决了
作者: 张x小呀    时间: 2020-7-14 09:58
离开电脑,就是瘸了一条腿
作者: 海阔天空8    时间: 2020-7-14 22:13
hsl32 发表于 2020-7-14 08:47
现在书柜里还有当年复印的一篇文章《89C2051的手动编程》包含电路图,是《电子制作》2000年第4期的文章。

2000年第4期,如有可能发来看看,多谢!
作者: juncedz    时间: 2020-7-14 23:07
好久好久以前的大型程序完全不需要电脑,
用键盘输入程序,6位数码管显示。
0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,
基本上十六进制2进制都是满足了。

作者: juncedz    时间: 2020-7-14 23:14
当时没有电脑,也没有软件,也没有编程器。

随着时间慢慢推移 出来 了苹果机 可以用 软件汇编 机器码。

很快 出来 了 编程器,51单片机 兴旺起来了。

用8086,  286  386  486  586 电脑编程   
作者: angmall    时间: 2020-7-15 00:17
89C2051的手动编程 2000年04期

http://www.docin.com/p-876716588.html





作者: 海阔天空8    时间: 2020-7-15 07:39
angmall 发表于 2020-7-15 00:17
89C2051的手动编程 2000年04期

http://www.docin.com/p-876716588.html

多谢多谢!
作者: 1130181457    时间: 2020-7-15 08:34
如果想完成自己所希望的功能那必定需要电脑来编程,除非有现成编好程序的单片机,主要看你想怎么玩了。
作者: f556    时间: 2020-7-15 10:10
沙发的回答我懂的。强!!!
还有一个方案,花几万元淘一套纸带录入器,或者自己做一套,手工打孔输入0、1,可能也行。
作者: 靳赟少    时间: 2020-7-15 11:02
可以是可以,但是就没有乐趣了,做软件模拟和实际硬件电路仿真还是有点区别的
作者: 海阔天空8    时间: 2020-7-15 11:54
f556 发表于 2020-7-15 10:10
沙发的回答我懂的。强!!!
还有一个方案,花几万元淘一套纸带录入器,或者自己做一套,手工打孔输入0、1 ...

在什么条件下,往哪些引脚输入0和1呀?
作者: hsl32    时间: 2020-7-15 14:40
海阔天空8 发表于 2020-7-14 22:13
2000年第4期,如有可能发来看看,多谢!

我拍照了,不能直接上传,发不了图片。电路是机器码手动拨码输入有LED指示。地址是用12位计数器接LED指示。编程脉冲控制是555单稳触发。
作者: 00云梦泽00    时间: 2020-7-15 15:11
能玩 就是费大事了  单片机从汇编、手持编程器,直到现在用电脑编程调试 就是这么发展起来的  不知道你打算做什么
作者: f556    时间: 2020-7-15 16:57
海阔天空8 发表于 2020-7-15 11:54
在什么条件下,往哪些引脚输入0和1呀?

从串口输入1、0
作者: 白的一匹    时间: 2020-7-15 17:34
可以玩,就是没那么方便
作者: 白的一匹    时间: 2020-7-15 17:35
可以玩,就是没那么方便
作者: 海阔天空8    时间: 2020-7-15 17:59
f556 发表于 2020-7-15 16:57
从串口输入1、0

各脚电压怎么设置?向几脚输入0和1?
作者: 海阔天空8    时间: 2020-7-15 18:02
hsl32 发表于 2020-7-14 08:30
这个我干过,用拨码开关输入,编程电压12V,结果是——芯片烧坏两颗不敢弄了。因为当时编程电压12V ...

“12V加载时间没法控制”?什么意思?电流过大不可以电阻限流吗?
作者: hsl32    时间: 2020-7-15 18:03
发图片压缩包吧,整个文章含电路图。电路图和楼上 angmall 发的一样的。

89C2051手动编程.rar

438.67 KB, 下载次数: 11

89C2051手动编程


作者: hsl32    时间: 2020-7-15 18:07
还是用电脑吧,自己做手动编程器花时间比学用电脑多。
作者: 海阔天空8    时间: 2020-7-15 18:56
草草111111 发表于 2020-7-14 08:41
可以玩呀,所有的电路自己搭建,单片机也是用最简单的元器件搭建的,不过有了简单的,都没有人愿意去搞这么 ...

“不过有了简单的,都没有人愿意去搞这么 ...”,这是实话!但原理性手动编程是基础。就像电脑用途很多,知道电脑原理的并不多
作者: 海阔天空8    时间: 2020-7-16 18:25
00云梦泽00 发表于 2020-7-15 15:11
能玩 就是费大事了  单片机从汇编、手持编程器,直到现在用电脑编程调试 就是这么发展起来的  不知道你打算 ...

我就是想叫单片机动起来,哪怕是输出一个输入的信息!
作者: 海阔天空8    时间: 2020-7-16 18:26
00云梦泽00 发表于 2020-7-15 15:11
能玩 就是费大事了  单片机从汇编、手持编程器,直到现在用电脑编程调试 就是这么发展起来的  不知道你打算 ...

我就是想叫单片机动起来,哪怕是输出一个输入的信息!
作者: 刀刀见红    时间: 2020-7-16 18:59
要知道程序从哪个I/O口进,用什么工具写进去,写什么内容,控制那些I/O口动作,不是说按某一个I/O单片机就能有反应(除开按复位键),就算按没了I/O口,单片机也不知道你要做什么,因为你没有给他运行指令。
作者: 海阔天空8    时间: 2020-7-16 20:28
刀刀见红 发表于 2020-7-16 18:59
要知道程序从哪个I/O口进,用什么工具写进去,写什么内容,控制那些I/O口动作,不是说按某一个I/O单片机就 ...

那么,如何输入运行指令呀?
作者: wufeng391    时间: 2020-7-16 21:45
电脑和软件是编程和调试的工具,有的话进行编程和调试会更加方便,没有也不是不能进行编程,只是会很麻烦。就比如你上班可以走路,可以骑车,也以开车。如果只走四五百米,走路就行,如果四五公里,骑车就好,四五百里最好就是开车了,如果你非要走上四五百里,当然也是可以的,如果你有那个耐心和时间的话。这时候开车其实是最好的选择。没有唯一的答案,只好大多数人都用的答案。
仅仅是让单片机有反应的话其实也很简单的,除了必要的硬件,就是把相关功能和程序写到单片机里,就好了。网上有很多视频。
作者: gym216    时间: 2020-7-17 14:19
你用晶体管搭焊个cpu是不是很又意思?
作者: 海阔天空8    时间: 2020-7-17 18:45
wufeng391 发表于 2020-7-16 21:45
电脑和软件是编程和调试的工具,有的话进行编程和调试会更加方便,没有也不是不能进行编程,只是会很麻烦。 ...


“也不是不能进行编程,只是会很麻烦”。非常同意你的说法!我不怕麻烦,只要能看懂。
让单片机有反应的话其实也很简单的,按我发的那个图能不能单片机动起来?如何操作?
作者: 海阔天空8    时间: 2020-7-17 18:45
gym216 发表于 2020-7-17 14:19
你用晶体管搭焊个cpu是不是很又意思?

用电子管的计算机也曾有过吧?
作者: hhdsdy    时间: 2020-7-17 19:07
海阔天空8 发表于 2020-7-16 18:26
我就是想叫单片机动起来,哪怕是输出一个输入的信息!

不用电脑、软件、编程器是无法玩转单片机的,就算你纯手工输入程序,那也是编程器的一种,而且这种方式不适合于现在常用的单片机,或者说是不适合于STC单片机,因为STC要求的是从串口写入,手工输入不合适,当然,外挂存储器让单片机执行外部存储器的程序还是可以的。
我学单片机时电脑还未进入个人家庭,还好那时自己组装了一台单片单板机(感谢武汉尚吉电子的支持,购得一套SCB-II-51的空白PCB加写好单片机监控程序的存储片,得以踏入单片机学习的道路),利用这台单板机,可以完成程序输入及运行,还更改了部分电路,新增了并口打印机插座和外接键盘插口,完成和外部微型台式打印机联机打印功能,使得简单的程序反汇编得以实现输出。
作者: 海阔天空8    时间: 2020-7-17 20:31
刀刀见红 发表于 2020-7-16 18:59
要知道程序从哪个I/O口进,用什么工具写进去,写什么内容,控制那些I/O口动作,不是说按某一个I/O单片机就 ...

运行指令如何输入单片机?应该是用0和1电位通过引脚完成的吧?
作者: hhdsdy    时间: 2020-7-17 22:23
用8031或者别的带有EA引脚的单片机外挂存储器吧,对存储器编程比较简单的,有了程序单片机运行起来,再用单片机对外部存储器进行编程,同时电路重新设计,可以切换程序,完成鸡生蛋蛋生鸡的循环
作者: wwh2382    时间: 2020-7-18 08:26
感觉是过腻了现代社会的生活,想回到原始社会的意思
作者: 找人PK    时间: 2020-7-18 09:10
海阔天空8 发表于 2020-7-16 20:28
那么,如何输入运行指令呀?

输入运行指令要一个叫烧录器的工具,网上有USB转串口的烧录器,也可自己制作,坛子里很多方案
作者: hsl32    时间: 2020-7-18 09:13
我觉得还是8031+74LS373+74HC138+AT28C64+62256+8155+键盘数码管驱动,这些经典电路好玩。指令手动编程AT28C64.
作者: 一心求学的小朱    时间: 2020-7-18 09:55
我觉得最好还是得有方便烧写实验验证
作者: angmall    时间: 2020-7-18 10:06
一篇文章《89C2051的手动编程》包含电路图,是《电子制作》2000年第4期的文章。










原理图有缺陷,给你改了一下





作者: 海阔天空8    时间: 2020-7-19 17:53
angmall 发表于 2020-7-18 10:06
一篇文章《89C2051的手动编程》包含电路图,是《电子制作》2000年第4期的文章。

多谢多谢!类似文章似乎看过,但就是看不懂!(你说如何接线不就完了吗?)不知障碍在哪里?语言太专业了?还是没说明白?
作者: 海阔天空8    时间: 2020-7-19 18:34
wwh2382 发表于 2020-7-18 08:26
感觉是过腻了现代社会的生活,想回到原始社会的意思

学习的过程
作者: 启冰冰    时间: 2020-7-23 20:16
你不用电脑软件写程序,怎么把代码烧录仅单片机实现具体功能呢
作者: 海阔天空8    时间: 2020-7-27 20:50
启冰冰 发表于 2020-7-23 20:16
你不用电脑软件写程序,怎么把代码烧录仅单片机实现具体功能呢

存储器都有“写入”和“读出”功能吧?我想单片机也不例外?存储器HM6116在“写入”状态就是向某些引脚(在不同的“地址端”)用电位的0和1输入程序的。这些写入的程序在“读出”状态下就可以在某些引脚显示出来(例如用LED显示)。
作者: 1692483014    时间: 2020-7-27 21:22
楼主,我看了半天你们的帖子,感觉你们在聊天,没太弄明白你的目的是什么,你是没入门想了解如何入门,还是怎样?我看你老说io口输出0和1,你是不了解单片机是如何工作的吗?你可以把你的需要一次性说清楚,或许我能帮到你。
作者: Y_G_G    时间: 2020-7-28 08:49
1692483014 发表于 2020-7-27 21:22
楼主,我看了半天你们的帖子,感觉你们在聊天,没太弄明白你的目的是什么,你是没入门想了解如何入门,还是 ...

哥们,你不要做任何想帮楼主的尝试,我也是曾经和你一样的想过,如今我对楼主的帖子只看不回的,但是看到你想走和我一样的路,我就回复你一下,不要想着帮了,请你先认真看一下以下这个帖子,这是一年多以前我回复的,当时我就说过一年后楼主依然学不会编程,依然还会再问中同样的问题,果不其然!
回复他帖子的人,包括你,都不知道楼主想干嘛:他有电脑,他只是害怕学一种编程语言,任何一种都怕,他以为用0和1就可以让单片机去动起来,他不知道:越是接近硬件的编程语言越难,他竟然想用机器语言写程序.
在使用0和1的机器语言年代,一个电工都是科学家级别的
http://www.51hei.com/bbs/dpj-151022-1.html
作者: 海阔天空8    时间: 2020-8-8 13:02
wwh2382 发表于 2020-7-18 08:26
感觉是过腻了现代社会的生活,想回到原始社会的意思

从头学起
作者: 海阔天空8    时间: 2020-8-8 13:07
本帖最后由 海阔天空8 于 2020-8-9 12:59 编辑
1692483014 发表于 2020-7-27 21:22
楼主,我看了半天你们的帖子,感觉你们在聊天,没太弄明白你的目的是什么,你是没入门想了解如何入门,还是 ...

谢谢,我真的还没入门!我就是想完全从硬件的方式体会一下单片机是怎么存储和输出程序的。我的理解无非就是向某些引脚加上0或1电平的不同组合(当然要叫单片机在允许写入状态,如何设置“写入”和“读出”状态是个关键!就是不知道哪些引脚完成这个功能?),谢谢您的热情!!
作者: 海阔天空8    时间: 2020-8-8 13:16
Y_G_G 发表于 2020-7-28 08:49
哥们,你不要做任何想帮楼主的尝试,我也是曾经和你一样的想过,如今我对楼主的帖子只看不回的,但是看到你想 ...

^_^!老朋友了。我这辈子也不会了,没关系,但有一线希望我还是想试试的!电脑,编程器,软件只是工具(当然高效)但我还是想从最基础的0和1(高低电位)的角度玩转单片机!我相信他和存储器有很多相似的地方!存储器6116我已经可以写入,输出预定的程序,无非就是在写入或输出的设置状态下对某些引脚加上不同的电位(0和1)而已。
不过我还是要谢谢你的关注!
作者: Roy-2010    时间: 2020-8-8 14:28
可以啊,就拿在手上转着玩呗😂
作者: 春风十里吹    时间: 2020-8-8 15:12
可以将你的芯片接上电,你按按键看看会有何么应
作者: Roy-2010    时间: 2020-8-8 15:21
梁廷明 发表于 2020-7-12 13:47
我觉得玩硬件,模拟电路还有意思一些

我也觉得。家里根本就没有单片机
作者: 海阔天空8    时间: 2020-8-9 11:53
1692483014 发表于 2020-7-27 21:22
楼主,我看了半天你们的帖子,感觉你们在聊天,没太弄明白你的目的是什么,你是没入门想了解如何入门,还是 ...

单片机的引脚I/O是不是既能输入也能输出?但需要设置成相应的状态?就像存储器的“写入”和“读出”状态?它是在哪个引脚完成的呢?
作者: 海阔天空8    时间: 2020-8-9 11:57
春风十里吹死你 发表于 2020-8-8 15:12
可以将你的芯片接上电,你按按键看看会有何么应

如图,接电后右下角4个LED可以按一定规律发光。但是如何改变发光顺序和间隔时间呀?

IMG_20190112_171701.jpg (515.44 KB, 下载次数: 459)

IMG_20190112_171701.jpg

作者: wc86110    时间: 2020-8-9 19:48
海阔天空8 发表于 2020-8-9 11:57
如图,接电后右下角4个LED可以按一定规律发光。但是如何改变发光顺序和间隔时间呀?

想改变只能依据电路思路重新烧写程序,别无它法
作者: wwh2382    时间: 2020-8-10 16:32


用电脑玩单片机,实现你那个板子的功能(当然有所简化)是分分钟的事。不用电脑那麻烦就大了去了。学编程吧,有你纠结的功夫,照着抄也能弄出点名堂了



作者: liang45    时间: 2020-8-11 01:38
海阔天空8 发表于 2020-7-15 18:56
“不过有了简单的,都没有人愿意去搞这么 ...”,这是实话!但原理性手动编程是基础。就像电脑用途很多, ...

原理性手动编程是基础。这不就是数电,模电的基础知识吗!!从单纯的二极管,三极管开始,到组合逻辑电路设计,再到集成芯片,把单片机的内部结构图拿来看,最终还是对门电路的控制,以及对各种电子元件的特性熟练运用,想要实现什么功能,完全可以通过组合逻辑电路设计来理解单片机原理,
作者: XTXB    时间: 2020-8-11 11:00
之前单片机的存储器是外挂的,编程过程是这样的:
1,用汇编语言编程,
2,编好后人工编译成机器码,就是二进制的0101,
3,然后手工把机器码写入存贮器,就是在芯片管脚接上开关,人工逐个按机器码拨动开关,设置地址,设置数据,写入,
4,输入完成后接上单片机运行。
后面为提高效率,改用开孔纸带,光电输入。再后来有电脑后,用电脑将汇编编译成机器码(bin或hex文件),用电脑烧写机器码(下载程序)。
现在的单片机烧写程序时都有下载协议,手工操作几乎不可能了,除非你找到古老的单片机。
作者: 海阔天空8    时间: 2020-8-11 12:59
(5)000H单元在哪?对P1.0-P1.7(8个引脚我能找到!)“加入数据代码”是不是就是设置P1.0-P1.7的电位高低?如果是的话这和RAM6116没什么太大区别呀?关键是000H(是地址吗?)在哪?怎么显示出来?
作者: 海阔天空8    时间: 2020-8-11 13:02
wwh2382 发表于 2020-8-10 16:32
用电脑玩单片机,实现你那个板子的功能(当然有所简化)是分分钟的事。不用电脑那麻烦就大了去了。学编 ...

怎么改变4个LED的变化状态?
作者: 海阔天空8    时间: 2020-8-11 13:05
wwh2382 发表于 2020-8-10 16:32
用电脑玩单片机,实现你那个板子的功能(当然有所简化)是分分钟的事。不用电脑那麻烦就大了去了。学编 ...

什么情况下改变12-19脚(P1,0-1,7)的电位可以输入程序?改变LED输出变化状态。
作者: 海阔天空8    时间: 2020-8-11 13:09
XTXB 发表于 2020-8-11 11:00
之前单片机的存储器是外挂的,编程过程是这样的:
1,用汇编语言编程,
2,编好后人工编译成机器码,就是 ...

可能关键就在“设置地址,设置数据,写入,”---您能不能说具体点?“地址怎么设置?数据在哪写入?电平高低是多少伏?好像激活编程电压是12V?
作者: wc86110    时间: 2020-8-11 17:13
没有实物电路实验,谈论这些概念都显得很空洞又难以理解。但是如能通过实验可以手工或自动查验
作者: Shaoyx    时间: 2020-8-11 19:01
不用电脑的话程序没法调试把
作者: XTXB    时间: 2020-8-11 19:46
海阔天空8 发表于 2020-8-11 13:09
可能关键就在“设置地址,设置数据,写入,”---您能不能说具体点?“地址怎么设置?数据在哪写入?电平 ...

现在的单片机存储器Flash都是内置的,无法从外部直接操作存储器写入程序,都是用电脑下载器通过特定的协议把程序写入Flash。古董单片机,它没有内置存储器,执行地址从外挂存储器ROM的首个地址开始。外挂存贮器有输入输出端口都是古董级的了,编程方法跟你玩过的MA6116差不多,不同之处,就是断电数据不会丢失,不过这个外挂存储器ROM重新编程得用紫外线擦除,或高压12V擦除,早就没人用了,太麻烦!现在的程序随便一个都成千上万行,手工编程要干到猴年马月呀!而且还容易错,手工编程的单片机早就停产了。
作者: XTXB    时间: 2020-8-11 20:17
89C2051估计可以了却你的心愿,做一块洞洞板,把89C2051管脚对应接上钮子开关(P1口7个+RST+P3.2+P3.3+XTAL1,买十几个吧),拨动钮子开关,按照步骤置高(5V)低(0V)电平就可以把程序写入闪存了,对了,RST脚还得加多一个钮子开关接12V。
作者: XTXB    时间: 2020-8-11 20:21
海阔天空8 发表于 2020-8-11 13:09
可能关键就在“设置地址,设置数据,写入,”---您能不能说具体点?“地址怎么设置?数据在哪写入?电平 ...

对于89C2051,我没玩过,地址估计是自动设置的,从0000开始,每写一次,地址自动+1,数据从P1口输入,高电平5V,低电平0V。
作者: 海阔天空8    时间: 2020-8-11 21:09
本帖最后由 海阔天空8 于 2020-8-12 19:11 编辑
XTXB 发表于 2020-8-11 11:00
之前单片机的存储器是外挂的,编程过程是这样的:
1,用汇编语言编程,
2,编好后人工编译成机器码,就是 ...

    您能否把第3步详细解说一下?。。。。。。。3,然后手工把机器码写入存贮器,就是在芯片管脚接上开关,人工逐个按机器码拨动开关,设置地址,设置数据,写入,
    89C2052的P,1.0-1.7是双向(输出/输入)口吧?什么时候是输入?什么时候是输出?(6116是通过一个开关控制输入/输出状态转换的)怎么设置控制输入/输出的引脚电位?
作者: 海阔天空8    时间: 2020-8-11 21:16
wc86110 发表于 2020-8-9 19:48
想改变只能依据电路思路重新烧写程序,别无它法

关键就是怎么写进去程序?!
作者: XTXB    时间: 2020-8-11 21:25
本帖最后由 XTXB 于 2020-8-13 20:58 编辑

看以下能不能助你圆个单片机梦,
我不会汇编,也不会手工编译,请keil帮我代劳吧,
先用C实现P3.3口LED闪烁:


仿真,汇编和机器码都有了:


下面是烧写到存储器的机器码:


把上面程序的机器码共39个数据,写入89C2051存贮器,从00H到26H地址,复位后单片机即可照设定运行。
注意:表中的是16进制,输入时应该为二进制,例如:02对应P1口的8个开关应该是0000 0010,
其中:0=0V,1=5V,就是P0.1口接5V,其他接0V。
祝你好运!

作者: XTXB    时间: 2020-8-11 22:17
海阔天空8 发表于 2020-8-11 21:09
您能否把第3步详细解说一下?。。。。。。。3,然后手工把机器码写入存贮器,就是在芯片管脚接上开关 ...

照顶楼你图片的步骤做就行了呀
作者: XTXB    时间: 2020-8-11 22:20
第4,5步是输入数据,第8步是读出数据
作者: XTXB    时间: 2020-8-11 22:29
就是,写入一个数据要从3-7共5个步骤,完成上面LED程序需要重复那5个步骤53次。。
作者: 海阔天空8    时间: 2020-8-12 07:28
XTXB 发表于 2020-8-11 21:25
看以下能不能助你圆个单片机梦,
我不会汇编,也不会手工编译,请keil帮我代劳吧,
先用C实现P0.0口LED闪 ...

真的谢谢你的热情!我一看“长篇程序语句就脑袋疼!我不想蒯越单片机发展的阶段,,,,,,
作者: liangsheng0212    时间: 2020-8-12 08:32
这样太麻烦了总觉得
作者: 海阔天空8    时间: 2020-8-12 10:14
本帖最后由 海阔天空8 于 2020-8-17 17:53 编辑
liangsheng0212 发表于 2020-8-12 08:32
这样太麻烦了总觉得

能不能与麻烦不麻烦是两回事呀?不怕麻烦!
作者: 海阔天空8    时间: 2020-8-12 10:24
XTXB 发表于 2020-8-11 20:17
89C2051估计可以了却你的心愿,做一块洞洞板,把89C2051管脚对应接上钮子开关(P1口7个+RST+P3.2+P3.3+XTAL1 ...

“按照步骤置高(5V)低(0V)电平就可以把程序写入闪存了,对了,RST脚还得加多一个钮子开关接12V。”-----谢谢!这是最接近我问题的回答了!我那个电路板就是按图接的。RST(1脚)是复位端吧?12V是不是编程激活电压?是不是程序输入了以后,要固定程序就要提高1脚电压?所谓的激活编程?

电路图.jpg (766.13 KB, 下载次数: 581)

电路图.jpg

IMG_20190111_085247.jpg (1.22 MB, 下载次数: 575)

IMG_20190111_085247.jpg

IMG_20190112_205309.jpg (1.07 MB, 下载次数: 609)

IMG_20190112_205309.jpg

作者: 51黑科技人    时间: 2020-8-12 10:35
真正的电路制作和纸上的学习真是差别很大的
作者: XTXB    时间: 2020-8-12 14:10
是的,严格照步骤操作就行,这是编程协议,改不了的。
下图是P3.5蓝灯闪烁的程序机器码,你试试看:



作者: XTXB    时间: 2020-8-12 14:34
要玩这个手动编程,你这块板子很难改了,用洞洞板单独做一块电路板,焊上钮子开关3挡的那种(因为涉及到悬空),严格按步骤操作,下载协议没啥道理讲的,叫你悬空就悬空,叫你高电平H或接5V,你就接5V,叫你低电平L或接0V,你就接0V,中途搞错了,你就从第一步重新开始,玩单片机就要不怕麻烦,没有捷径可走。
作者: qmq1998    时间: 2020-8-12 15:21
编程无非就是改变单片机某些引脚的电位0和1
作者: 海阔天空8    时间: 2020-8-12 19:09
XTXB 发表于 2020-8-11 20:21
对于89C2051,我没玩过,地址估计是自动设置的,从0000开始,每写一次,地址自动+1,数据从P1口输入,高 ...

“从0000开始,每写一次,地址自动+1,数据从P1口输入,高电平5V,低电平0V。”谢谢,这个我基本理解:从0000(地址)开始,每写一次,地址自动+1(也好办),数据从P1口(2051的12-19脚,双向口线,输出输入吧?)输入,高电平5V,低电平0V。(高低电平我差不多懂)。但是输入数据后如何固定下来呢?“激活编程电压
”是怎么回事??
作者: 海阔天空8    时间: 2020-8-12 19:13
XTXB 发表于 2020-8-12 14:10
是的,严格照步骤操作就行,这是编程协议,改不了的。
下图是P3.5蓝灯闪烁的程序机器码,你试试看:

我看不懂呀!您就直接说向哪些引脚加什么点平好不好?
作者: 海阔天空8    时间: 2020-8-12 19:16
XTXB 发表于 2020-8-11 21:25
看以下能不能助你圆个单片机梦,
我不会汇编,也不会手工编译,请keil帮我代劳吧,
先用C实现P0.0口LED闪 ...

对于您的热情,我真的太感谢了!表中的内容我真的不懂呀!
作者: 海阔天空8    时间: 2020-8-12 19:17
XTXB 发表于 2020-8-12 14:34
要玩这个手动编程,你这块板子很难改了,用洞洞板单独做一块电路板,焊上钮子开关3挡的那种(因为涉及到悬 ...


“要玩这个手动编程,你这块板子很难改了,”---我只要明白了您说怎么改,那是轻而易举的事!关键是怎么改,您给个图可以吗?




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