矿石收音机论坛

 找回密码
 加入会员

QQ登录

只需一步,快速开始

搜索
楼主: 海阔天空9

这个20脚芯片是不是89C2051?

[复制链接]
     
发表于 2024-1-13 21:22:04 | 显示全部楼层
本帖最后由 fshwen 于 2024-1-13 21:26 编辑
海阔天空9 发表于 2024-1-13 21:16
“您会觉得打开了新世界的大门”?????你这个预言如果实现,简直你就是神仙了!!!
再说一遍:如 ...


实践是检验真理的唯一标准,您试过就知道了,我不是神仙,论坛有技术的牛人多的是
坛友已经给您做了转换,您照着操作就行,然后读出验证看有没出错,所有写入的数据都正确了就上系统板运行看,效果就是P1-0的LED闪烁
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2024-1-13 21:40:53 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

     
发表于 2024-1-13 22:38:30 | 显示全部楼层
我怀疑我穿越了。。我不止一次确认现在是2024年,贴子也是新发的,不是20年前的坟贴。楼主能上网,肯定知道淘宝和闲鱼。用汇编指令写程序就算了。竟然用拨码开关,拨机器码。。。想起了那个在《我的世界》里有方块搭计算机的,那对数字电路得有多深的理解,又有多大的耐力才能完成? 我自己无论是用编程器,下载线,仿真器,这些东西写流水灯玩。并没有实际搞明白,数据是如何写进单片机的。
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2024-1-14 06:49:20 来自手机 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2024-1-14 07:32:06 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2024-1-14 07:39:58 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2024-1-14 18:23:20 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

     
发表于 2024-1-14 20:32:55 | 显示全部楼层
本帖最后由 fshwen 于 2024-1-14 20:35 编辑
海阔天空9 发表于 2024-1-14 18:23
“把写好程序的2051”--------在手动编程板上校验成功的(流水灯的亮灭)2051算不算“写好程序的2051 ...


不能算是写好程序的2051;
按照您的实际电路做了转换,按最右边的二进制设置拨码开关就行
无标题8.jpg
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2024-1-14 20:58:28 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

     
发表于 2024-1-14 22:39:52 | 显示全部楼层
本帖最后由 fshwen 于 2024-1-14 22:45 编辑
海阔天空9 发表于 2024-1-14 20:58
如图,按照最右边的“倒序二进制取反拨码开关状态”设置拨码开关状态就可以?校验成功后,直接到2051最小 ...


按您图片上的设置,您应该是把开关拨到下方为1,拨到上方为0;
如果您是这样定义的,您直接按照图片中 二进制倒序P1口实际状态  那一栏来设置拨码开关即可;
例如10111110,您的开关设置是下上下下下下下上,灯的亮灭顺序就是134567亮28灭,这样更方便;
对于以多大节奏,目前不知道,您先试,试了再解释
回复 支持 反对

使用道具 举报

     
发表于 2024-1-15 01:27:54 | 显示全部楼层
海阔天空9 发表于 2024-1-14 07:32
写入这12个字节不困难呀?这和我写入的其他流水灯数据有什么不一样吗?我还是不解我在手动烧写电路板(没 ...

这12个字节才是2051单片机能读懂并执行的“程序”明白了吗??
把这12个字节输入2051,然后读一遍都核对无误后就可以把2051拔出来插到最小系统板上,p1.0脚接一个LED,上电,LED就一闪一闪的。
这个就是真正的单片机执行程序。
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2024-1-15 07:48:14 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2024-1-15 07:51:39 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

     
发表于 2024-1-15 12:20:55 | 显示全部楼层
本帖最后由 fshwen 于 2024-1-15 13:26 编辑
海阔天空9 发表于 2024-1-15 07:48
按您图片上的设置,您应该是把开关拨到下方为1,拨到上方为0;---------我也注意到这个问题。8个拨码开关 ...


我做的那些二进制转换,完全是为了您操作方便;最左边的二进制是16进制直接转换来的,中间的二进制倒序是左边二进制的高低位顺序颠倒得来的,这样做的目的是因为您的手动编程器的P1-0在最左边P1-7在最右边;右边的二进制取反是中间的二进制数据取反得来,就是0的位置反过来为1,1反过来为0,这样做是因为您的拨码开关连接方式,我定义为拨到上方为1,下方为0,所以做了数据取反;但您目前按您自己的定义和实际情况,您定义为把开关拨到下方为1,上方为0,这刚好对应二进制倒序,所以只需按 二进制倒序 的数据写入即可。
至于为什么要按我给的数据写入,这就像一个幼儿园小朋友做1+1=2的数学题一样,在单片机的世界里,您现在就是幼儿园的小朋友,只需照着做就行,不需要问为什么,给您解释为什么您也是听不懂的,就像幼儿园的小朋友问1+1为什么等于2一样,无法解释明白。
所以您必须按照图上的数据写入才能在系统板上运行,而且是每个数据都正确且与地址对应;中间有一个数据有问题或者是有一个1变成0了还是0变成1都不行,数据对应的地址有错也不行;
所以您要想看到单片机自动运行的结果,您必须严格按照图中的数据写入,并验证没有错误。
如果您按照您自己的理解写入了您自己的数据,且装到系统板上运行,单片机不会给您结果,且有极大可能会把单片机永久性的搞废。
如果您按您自己的理解写入2051的数据单片机能自动运行且能达到您的预期,也没必要非要求您按我给的数据写入了。

补充,在早期的计算机编程中,是把二进制的程序在纸带上用打孔的方式操作的,然后把按程序打孔的纸带放到纸带阅读器里输入计算机。
回复 支持 反对

使用道具 举报

     
发表于 2024-1-15 12:40:42 | 显示全部楼层
海阔天空9 发表于 2024-1-15 07:51
这12个字节才是2051单片机能读懂并执行的“程序”明白了吗??----不明白呀?难道只有这12个字节才能在 ...

所以才让您去读读计算机原理书,这12个字节是一小段2051的单片机程序,您现在的程度也不必理解程序怎么来的,就一字不差的写入2051后去看效果就行。

您后面花里胡哨的那些内容单片机看不懂,也不会执行,您所看见的LED变化只不过是把单片机当做存储器来用了。

真正的单片机程序是上电之后自动运行的,
您一直无法理解的问题“单片机按什么节奏输出”,这里我试着解释一下;
2051单片机最小系统一般采用12M的晶振,但是2051的运行速度没这么快,它内部有一个1/12的分频器,也就是说它内部的时钟频率是1M
大约就是每秒可以执行1百万条单周期指令,按这个速度输出点亮LED还是太快,人眼无法分辨的。
怎么解决呢?入门的程序一般是用延时程序,点亮P1.0,然后延时0.5秒,关闭P1.0,点亮P1.1,延时0.5秒,关闭P1.1,点亮P1.2……反复执行
就产生了流水灯的效果
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入会员

本版积分规则

小黑屋|手机版|矿石收音机 ( 蒙ICP备05000029号-1 )

蒙公网安备 15040402000005号

GMT+8, 2025-4-26 22:46

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表