找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
楼主: 海阔天空8
打印 上一主题 下一主题
收起左侧

不用电脑,编程器,软件就用0和1和单片机对话究竟能不能叫单片机工作起来?

  [复制链接]
41#
ID:123289 发表于 2020-8-20 10:57 | 只看该作者
楼主是个电子、电器爱好者,且经验丰富,动手能力强,思路独特,善动脑。
但单片机是楼主的软肋。
如果能按楼主说是达成目的,那只能叫简单的逻辑电路。几乎不能叫程控。
单片机是为复杂逻辑而设的,如果硬要用简单的方式,来处理复杂的事件。请考虑是否合适。
花点功夫学会单片机不是很好吗,当你掌握了单片机之后,你会发现它能轻松地能解决许多你以前很解决的复杂问题。
回复

使用道具 举报

42#
ID:460466 发表于 2020-8-20 12:00 | 只看该作者
yzwzfyz 发表于 2020-8-20 10:57
楼主是个电子、电器爱好者,且经验丰富,动手能力强,思路独特,善动脑。
但单片机是楼主的软肋。
如果能 ...

说真的单片机我下了几十年的功夫就是看不懂!不知卡在哪里?总认为设置好电路状态改变某些引脚的0和1就算输入“程序”了?总拿存储器6116的模子套单片机,至于程序语言嘛真的不学了,行将就木之人当作消遣了
回复

使用道具 举报

43#
ID:429003 发表于 2020-8-20 12:46 | 只看该作者
咱们将别人辛勤研究的成果用好,就够了!
世界真的很大,即便是你倾尽一生也只能看到冰山一角!专业的事,让专业的人去做吧,咱不纠结!
学会使用单片机真心不复杂,但是,单片机的每个硬件组成模块,都有很多人用着毕生的精力在研究。
用好他人的成果就是对他人最大的支持和肯定,也是对你个人的肯定,不要再折磨自己,
条条大道通北京,何必非要选最远的一条路走!!!
回复

使用道具 举报

44#
ID:460466 发表于 2020-8-20 12:54 | 只看该作者
toyboy 发表于 2020-8-18 12:58
楼主,建议你暂时放弃这个想法!玩玩电子开关电路吧!先玩三极管开关电路,再加入‘门电路’,、、然后再来 ...

你说的是有道理,我就认准了从存储器RAM6116到单片机,不远了?(存储器的使用作为单片机的基础,可以吗?)为什么就这么困难?6116的输入/读出数据不复杂呀(CD4060-CD4520提供6116的地址)?单片机输入/读出数据为什么就这么困难?可能还是没有正确的电路图及其设置方法?
回复

使用道具 举报

45#
ID:155507 发表于 2020-8-20 14:57 | 只看该作者
遵循此电路图连接,  就是89C2051的手动编程




回复

使用道具 举报

46#
ID:460466 发表于 2020-8-21 08:05 | 只看该作者
angmall 发表于 2020-8-20 14:57
遵循此电路图连接,  就是89C2051的手动编程

谢谢您!我相信。但一时难以消化,,,,,,,,
回复

使用道具 举报

47#
ID:460466 发表于 2020-8-21 08:12 | 只看该作者
angmall 发表于 2020-8-20 14:57
遵循此电路图连接,  就是89C2051的手动编程

二进制数据和地址显示分开了?555第3脚输出是显示输出节奏吗?需要两个电源?12V和5V。12V用作“激活编程”?74LS245做数据输入转换?,,,,,,,,,,,,
回复

使用道具 举报

48#
ID:460466 发表于 2020-8-22 18:09 | 只看该作者
angmall 发表于 2020-8-20 14:57
遵循此电路图连接,  就是89C2051的手动编程

2051的第5脚做地址计数脉冲输入吗?同时CD4040显示地址,K5-K12做数据输入?
回复

使用道具 举报

49#
ID:711509 发表于 2020-8-22 23:15 | 只看该作者
ATMEL_89C2051.pdf (329.49 KB, 下载次数: 7)
这个是2051的资料,你找的截图中文翻译估计也是来源于此,从第8到第11页就是有关编程方法部分,你配合44楼(在此感谢44楼有心,换我真的没有信心耐心写下去)的古董资料图理解。
如果你一定要只用外接开关实现编程(你想用2051正常工作就得先给它编程,这个不以你的意志为转移),那么按如下准备试试(我没试过,也不准备试,因为我有编程器,所以现在是纸上谈兵,我按个人理解复述资料):
20脚VCC接个常开单掷开关(叫K1)到5V电源+,10脚GND接5V电源-(电源共地)。
1脚RST接个100欧3瓦的电阻到地,再接一个常开开关(K2)到一个双掷开关(K3)动触点,K3常闭触点接5V+,常开触点接12V+。
5脚XTAL1接个4.7K电阻到地,再接个常开开关(K4)到5V+。
6、7、8、9、11脚P3.2~P3.5、P3.7分别接个1K电阻到地,再分别接常开开关(K5~K9)到5V+。
12~19脚P1.0~P1.7分别接个1K电阻到地,再分别接常开开关(K10~K17)到5V+。
然后按你截图步骤操纵开关。
唉,我困得不行了,写不下去了。就这样吧。
回复

使用道具 举报

50#
ID:460466 发表于 2020-8-23 16:55 | 只看该作者
angmall 发表于 2020-8-20 14:57
遵循此电路图连接,  就是89C2051的手动编程

谢谢您的图!这个图和6116存储器有很多类似之处,地址显示和数据显示,手动地址输入计数(发单脉冲?)进入单片机的第5脚(XATL2)使地址进行累加1的计数(555第3脚是否是数据输出时自动完成有节奏的输出?)。按键K1-K4对单片机P3-3,P3-4,P3-5,P3-7送入高电位是完成什么功能?是不是完成功能设置?这个电路没有接入晶体?是不是单片机的简化应用?基本就是存储器6116的实验电路?恐怕写入的“程序”,也不能脱离这个电路才能显示,但是它克服了6116存储器断电就失去程序的弊端?
以上理解是否正确?望指正,谢谢。

裁剪_15.jpg (100.21 KB, 下载次数: 123)

裁剪_15.jpg
回复

使用道具 举报

51#
ID:460466 发表于 2020-8-23 17:51 | 只看该作者
breakhero 发表于 2020-8-22 23:15
这个是2051的资料,你找的截图中文翻译估计也是来源于此,从第8到第11页就是有关编程方法部分,你配合44 ...

谢谢!说明手动编程还是可以的(只要单片机动起来即可,要求不高)。“常开触点接12V+”就是给1脚(复位端)加一个+12V脉冲把输入数据固定下来的意思吗?
  我可能硬件连接没什么问题,我觉得44楼(我真的谢谢他的热情帮助!)提供的图对我帮助很大。原因是先入为主我总用存储器6116的模式去套单片机,^_^。他的图单片机并没接入晶体振荡器,估计脱离了这个电路单片机也运行不起来?是这样吗?谢谢。
回复

使用道具 举报

52#
ID:711509 发表于 2020-8-23 20:36 | 只看该作者
13. Flash Programming Modes
Mode
RST/VPP
P3.2/PROG
P3.3
P3.4
P3.5
P3.7
Write Code Data(1)(3)
12V
▔╲▁╱▔
L
H
H
H
Read Code Data(1)
H
H
L
L
H
H
Write Lock
Bit - 1
12V
▔╲▁╱▔
H
H
H
H
Bit - 2
12V
▔╲▁╱▔
H
H
L
L
Chip Erase
12V
▔╲▁╱▔ (2)
H
L
L
L
Read Signature Byte
H
H
L
L
L
L
Notes: 1. The internal PEROM address counter is reset to 000H on the rising edge of RST and is advanced by a positive pulse at XTAL1 pin.
2. Chip Erase requires a 10 ms PROG pulse.
3. P3.1 is pulled Low during programming to indicate RDY/BSY.

注:上面三处下划线原本应该是上划线;▔╲▁╱▔代表低电平脉冲。

回复

使用道具 举报

53#
ID:711509 发表于 2020-8-23 21:12 | 只看该作者
2051可以工作在时钟0赫兹,所以不使用晶振的情况下,5脚可以输入脉冲,单步运行。

我认为你没有看我上面贴的2051的PDF手册。摘录一段:

11. Programming The Flash
The AT89C2051 is shipped with the 2K bytes of on-chip PEROM code memory array in the erased state (i.e., contents = FFH) and ready to be programmed. The code memory array is pro-grammed one byte at a time. Once the array is programmed, to re-program any non-blank byte, the entire memory array needs to be erased electrically.Internal Address Counter: The AT89C2051 contains an internal PEROM address counter which is always reset to 000H on the rising edge of RST and is advanced by applying a positive going pulse to pin XTAL1.Programming Algorithm: To program the AT89C2051, the following sequence is recommended.
1. Power-up sequence:
Apply power between VCC and GND pins
Set RST and XTAL1 to GND
2. Set pin RST to “H”
Set pin P3.2 to “H”
3. Apply the appropriate combination of “H” or “L” logic  
levels to pins P3.3, P3.4, P3.5, P3.7 to select one of the programming operations
shown in the PEROM Programming Modes table.
To Program and Verify the Array:
4. Apply data for Code byte at location 000H to P1.0 to P1.7.
5. Raise RST to 12V to enable programming.
6. Pulse P3.2 once to program a byte in the PEROM array or the lock bits. The byte-write cycle is self-timed and typically takes 1.2 ms.
7. To verify the programmed data, lower RST from 12V to logic “H” level and set pins P3.3 to P3.7 to the appropriate levels. Output data can be read at the port P1 pins.
8. To program a byte at the next address location, pulse XTAL1 pin once to advance the internal address counter. Apply new data to the port P1 pins.
9. Repeat steps 6 through 8, changing data and advancing the address counter for the entire 2K bytes array or until the end of the object file is reached.
10. Power-off sequence:
set XTAL1 to “L”
set RST to “L”
Turn VCC power off

然后百度机翻如下:

11闪存编程
AT89C2051配备了2K字节的片内PEROM代码存储阵列,处于擦除状态(即,内容=FFH),可随时编程。代码存储阵列一次编程一个字节。一旦数组被编程,为了重新编程任何非空白字节,整个内存数组需要被擦除电气。内部地址计数器:AT89C2051包含一个内部PEROM地址计数器,该计数器总是在RST的上升沿重置为000H,并通过向引脚XTAL1施加正向脉冲来推进。编程算法:至对AT89C2051进行编程,建议采用以下顺序。
1、通电顺序:
在VCC和GND引脚之间通电
将RST和XTAL1设置为GND
2、将引脚RST设置为“H”
将插脚P3.2设置为“H”
3、应用“H”或“L”逻辑的适当组合
电平至插脚P3.3、P3.4、P3.5、P3.7,以选择编程操作之一
如PEROM编程模式表所示。
要对阵列进行编程和验证,请执行以下操作:
4、在位置000H到P1.0到P1.7处应用代码字节的数据。
5、将RST升高至12V以启用编程。
6、脉冲P3.2一次,在PEROM数组或锁位中编程一个字节。字节写入周期是自定时的,通常需要1.2ms。
7、为验证编程数据,将RST从12V降低至逻辑“H”电平,并将插脚P3.3至P3.7设置到适当的电平。可在端口P1引脚处读取输出数据。
8、为了在下一个地址位置编程一个字节,脉冲XTAL1管脚一次,使内部地址计数器前进。将新数据应用到端口P1引脚。
9、重复步骤6到8,更改数据并为整个2K字节数组前进地址计数器,或者直到到达目标文件的末尾。
10、断电顺序:
将XTAL1设置为“L”
将RST设置为“L”
关闭VCC电源

注意手册里芯片5脚标记为XTAL1。

写在最后:虽然你一直在感谢这个感谢那个,但是你似乎并不去深入思考别人的帮助,我认为我已经解释得足够清楚,“渔”已经给你了,后面的鱼还得靠你自己。提示一下,你所说的“节奏”太过艰涩。关于2051和6116的比较,不合适。坚持写下来了,措辞如有冒犯,见谅。#^_^#
回复

使用道具 举报

54#
ID:711509 发表于 2020-8-23 22:01 | 只看该作者
我假设的那个K3为双掷开关是为了切换高电平“H”和编程电压+12V的。flash存储器存储数据0是靠高压向存储单元的mos管绝缘栅极注入电荷,所以这个+12V(高压)VPP需要在编程操作时引入,2051设计为VPP和RST复用,也就是1脚。
回复

使用道具 举报

55#
ID:88256 发表于 2020-8-24 01:23 | 只看该作者
breakhero 发表于 2020-8-23 22:01
我假设的那个K3为双掷开关是为了切换高电平“H”和编程电压+12V的。flash存储器存储数据0是靠高压向存储单 ...

又被忽悠上了一个,朋友,楼主根本就不是想学单片机,他早就说明了,不学任何的单片机语言,不想使用编程器,只想像6116那样用开关输入什么输出就是什么,所以,你也别费尽心思去指导了,就一个2051单片机重复发帖(你可以认真搜索看一下他发的涉及单片机的帖子),一年多了还在原地踏步。我就发两个楼主的帖子吧,你自己看看
http://www.51hei.com/bbs/dpj-192587-1.html
http://www.51hei.com/bbs/dpj-194066-1.html
回复

使用道具 举报

56#
ID:460466 发表于 2020-8-24 07:26 | 只看该作者
breakhero 发表于 2020-8-23 21:12
2051可以工作在时钟0赫兹,所以不使用晶振的情况下,5脚可以输入脉冲,单步运行。

我认为你没有看我上面 ...

“我认为我已经解释得足够清楚,”--------您说得不错!但是会者不难难者不会。还是要谢谢您!
7、为验证编程数据,将RST从12V降低至逻辑“H”电平,并将插脚P3.3至P3.7设置到适当的电平。可在端口P1引脚处读取输出数据。
“设置到适当的电平”?是什么电平?
“关于2051和6116的比较,不合适”?但我却觉得有不少类似之处呢?
回复

使用道具 举报

57#
ID:460466 发表于 2020-8-24 07:32 | 只看该作者
breakhero 发表于 2020-8-23 22:01
我假设的那个K3为双掷开关是为了切换高电平“H”和编程电压+12V的。flash存储器存储数据0是靠高压向存储单 ...

“所以这个+12V(高压)VPP需要在编程操作时引入,”?如果您这样说“输入数据之后升高1脚电压到12V可以固定(激活)数据数据完成一个地址的编程”。我不就明白了嘛!是不是这样理解?^_^谢谢~
回复

使用道具 举报

58#
ID:460466 发表于 2020-8-24 08:08 | 只看该作者
breakhero 发表于 2020-8-23 21:12
2051可以工作在时钟0赫兹,所以不使用晶振的情况下,5脚可以输入脉冲,单步运行。

我认为你没有看我上面 ...

“2051可以工作在时钟0赫兹,所以不使用晶振的情况下,5脚可以输入脉冲,单步运行。”---------这话解除我的疑惑了。越发觉得和存储器6116相似之处了。谢谢!
回复

使用道具 举报

59#
ID:460466 发表于 2020-8-24 08:11 | 只看该作者
breakhero 发表于 2020-8-23 22:01
我假设的那个K3为双掷开关是为了切换高电平“H”和编程电压+12V的。flash存储器存储数据0是靠高压向存储单 ...

12V(高压)我还似乎懂,出来个"VPP"?是不是“峰-峰值”的意思?外国字是我最大的障碍!^_^,,,,,,,,,,,
回复

使用道具 举报

60#
ID:711509 发表于 2020-8-24 21:27 | 只看该作者
统一回答:
1、set pins P3.3 to P3.7 to the appropriate levels百度机翻为 将插脚P3.3至P3.7设置到适当的电平。因为我51楼摘录的手册里解释了P3.3、P3.4、P3.5和P3.7它们四个引脚的不同二进制组合决定编程操作中对应的工作模式。电平就是我让你接了4个开关可以通过拨动开关让这四个引脚电压为0或者+5V,以实现上面说的不同二进制组合即适当的电平。你要让2051听你话,你就得告诉它,这4个引脚的逻辑组合对应不同命令,具体命令是啥,看表格第一列,不认识就复制下来去翻译。
2、关于那个比较合不合适,你以后如果明白了就明白了,始终不明白那就当他合适吧。
3、多看一些书、资料,就理解了术语了,用术语是因为该严谨的地方必须严谨。
4、编程操作翻着花变能差到哪,不是相似,本来就一回事。但这俩东西本来就不是一回事。这句就别再问我了,参照上面第二条。
5、我解释了,1脚是复用引脚,重复使用引脚,因为引脚少,厂家会把一些不冲突的功能引脚合并,那么地1脚就是RST(Reset input)(复位)和VPP(Programming Enable Voltage)(编程使能电压)的复用,资料标示为RST/VPP,是不是峰峰值我也不知道,不知道不能瞎说,但确定它是编程电压,而且是+12V(要求范围11.5~12.5),所以是不是峰峰值并无必要吧。
感谢54楼的善意提醒,我早已知道。其实我用这么大篇幅回复楼主就是希望能帮到楼主最好,帮不到也希望楼主体会到坛友的热心,尽量多自学一些,听听劝,放下执念。
楼主再有疑问把那个PDF完整翻译了,都在里面,不亲自动手动脑永远无解。
我的回复收工了,完结。#^_^#
回复

使用道具 举报

61#
ID:460466 发表于 2020-8-25 07:20 | 只看该作者
hhdsdy 发表于 2020-8-24 01:23
又被忽悠上了一个,朋友,楼主根本就不是想学单片机,他早就说明了,不学任何的单片机语言,不想使用编程 ...

不是一年多原地踏步,是几十年原地踏步!为什么?一是我笨,二是还没有人能具体的讲清楚!按电路图如何接线?如何操作?多是用“正规”的单片机语言说话,就用0和1和电路直接对话。看来多是没有这样做过的?有不少朋友认为是可以这样做的!也有不少人认为我是捣乱!实际不是这样的。
回复

使用道具 举报

62#
ID:592807 发表于 2020-8-25 08:23 | 只看该作者
你的理论上是可行,但是理论终究只是理论,实现起来很难的,很多器件你只要给他一个电平信号他就能工作,你用拨码开关没问题,但是很多器件和单片机之间的通讯是有通讯协议的,例如外加存储器的读和写,往里面写一个数字你可能要按半天开关,而且按错一个全白费
回复

使用道具 举报

63#
ID:147710 发表于 2020-8-25 09:06 | 只看该作者
hhdsdy 发表于 2020-8-24 01:23
又被忽悠上了一个,朋友,楼主根本就不是想学单片机,他早就说明了,不学任何的单片机语言,不想使用编程 ...

他说他是“新将就木之人”,猜想他年纪大了,仅仅是希望有人能跟他说话而已,只是可伶了那些热情的认真的网友,越认真越受伤..........
回复

使用道具 举报

64#
ID:420836 发表于 2020-8-25 09:54 | 只看该作者
没有程序,微处理器将无法工作。
回复

使用道具 举报

65#
ID:332444 发表于 2020-8-25 11:49 | 只看该作者
这种思路只适合玩数字电路,不适合玩蛋骗鸡,数字电路与蛋骗鸡相去甚远。数字电路与蛋骗鸡各自体系,否则为何要花费时间和精力去研究、开发、学习蛋骗鸡。
回复

使用道具 举报

66#
ID:460466 发表于 2020-8-25 12:49 | 只看该作者
黄youhui 发表于 2020-8-25 08:23
你的理论上是可行,但是理论终究只是理论,实现起来很难的,很多器件你只要给他一个电平信号他就能工作,你 ...

0001表示10进制的1,0010表示2,,,,,,任意数也可以用二进制表示,小学2年级也知道几十个亿怎么表示了,但他不一定用过,,,,,
回复

使用道具 举报

67#
ID:89515 发表于 2020-8-25 12:50 来自手机 | 只看该作者
海阔天空8 发表于 2020-8-18 20:24
这不是手动编程步骤吗?不过我5步以后就看不懂l了。

这个是做下载器需要考虑的过程,不是手工编程。程序还是电脑写好的,只是需要按照这些步骤去写入单片机。
回复

使用道具 举报

68#
ID:88256 发表于 2020-8-25 13:45 | 只看该作者
海阔天空8 发表于 2020-8-25 07:20
不是一年多原地踏步,是几十年原地踏步!为什么?一是我笨,二是还没有人能具体的讲清楚!按电路图如何接 ...

不是因为笨,而是你自己确定的错误的学习方法和态度而造成的。
电路图如何接线,众多坛友们一而再再而三地说明了,自己基础不过关,反倒认为坛友们“没有人能具体的讲清楚!按电路图如何接线?如何操作?”了,有点倒打一耙的感觉。
“多是用“正规”的单片机语言说话,就用0和1和电路直接对话。看来多是没有这样做过的?”----------有些术语、单词或者名称等肯定是按规范的或者约定俗成的说法来表达,对成年人说话难道还要用婴幼儿的语言说?难道数学师傅上课得把2的4次方说成2*2*2*2?手工编程对于近几年学单片机的人来说是几乎没有人做过,淘汰的东西有什么值得津津乐道的?你要去隔壁城市出差办公事,放着车、船和飞机不用非要走路去,偏又说走路累脚痛,让大家帮你想办法到隔壁城市去,你说谁傻?
“有不少朋友认为是可以这样做的!”----------------你搞清楚大家回复的是什么,是可以手工编程,而不是不用编程就可以给单片机编程输入;可以用机器码输入让单片机运行,但不是可以不用学单片机语言玩单片机

回复

使用道具 举报

69#
ID:460466 发表于 2020-8-25 14:25 | 只看该作者
mengzhixinheng 发表于 2020-8-25 12:50
这个是做下载器需要考虑的过程,不是手工编程。程序还是电脑写好的,只是需要按照这些步骤去写入单片机。

归根结底还还是向单片机引脚加入0或1吧?其他引脚电平如何设置?(写入,保存,读出,,,,各引脚状态如何设置?)向哪些引脚加数据(数据的组合不就是程序吗?)?
回复

使用道具 举报

70#
ID:460466 发表于 2020-8-25 19:08 | 只看该作者
Y_G_G 发表于 2020-8-19 10:17
莫生气,楼主并不是想学单片机,他只想和别人抬扛,有人回复了他就高兴,不管你说什么,他总能跟你抬扛
所以 ...

人家都提供电路图了!你就不能,,,,,,,,
回复

使用道具 举报

71#
ID:460466 发表于 2020-8-25 19:11 | 只看该作者
hhdsdy 发表于 2020-8-19 00:49
以0和1输入的是单片机的机器码,你想让单片机按你的意愿输出对应的电平,那么就必不可少必须涉及到单片机语 ...

这就是您对“语言”的理解吗?我还是认为,最终单片机就认识0和1.不管什么语言就是一种规则,最终也要用0和1与单片机引脚对话,这样说对吗?
回复

使用道具 举报

72#
ID:460466 发表于 2020-8-25 19:14 | 只看该作者
jhczy 发表于 2020-8-19 23:09
楼主,你所说的“图中编程方法”,那是编程器向单片机烧录程序时的工作步骤,也可以说是编程器烧录程序时的 ...

“烧录程序”?你解释一下好吗?
回复

使用道具 举报

73#
ID:460466 发表于 2020-8-25 19:17 | 只看该作者
yzwzfyz 发表于 2020-8-20 10:57
楼主是个电子、电器爱好者,且经验丰富,动手能力强,思路独特,善动脑。
但单片机是楼主的软肋。
如果能 ...

我想象的“玩单片机”无非就是利用电脑,编程器等和特定软件根据电脑提供的对话框输入各种计算机语言的代码,点鼠标而已
回复

使用道具 举报

74#
ID:460466 发表于 2020-8-25 20:42 | 只看该作者
hhdsdy 发表于 2020-8-19 12:39
AT89C2051编程步骤坛友早就回答过了,只是你自己不学基础,连地址都理解不了,叫人怎么和你解释?另外, ...

就说地址吧?地址不就是存储数据的地方吗?不对吗?说了100遍“不懂基础”了,那就麻烦您举1--2个基础的例子好吗?如果您认为我愚弄坛友,那就干脆别理我好了。
回复

使用道具 举报

75#
ID:460466 发表于 2020-8-25 20:51 | 只看该作者
breakhero 发表于 2020-8-23 22:01
我假设的那个K3为双掷开关是为了切换高电平“H”和编程电压+12V的。flash存储器存储数据0是靠高压向存储单 ...

您假设的那个K3是不是44楼图中的T1(9012)导通后就把12V送到1脚(RST)了。
回复

使用道具 举报

76#
ID:88256 发表于 2020-8-25 22:48 | 只看该作者
海阔天空8 发表于 2020-8-25 19:11
这就是您对“语言”的理解吗?我还是认为,最终单片机就认识0和1.不管什么语言就是一种规则,最终也要用0 ...

你这么认为也对,但是你不能回避一点,你想让单片机输出00000010,给单片机编程输入00000010是绝对不行的,因为单片机运行的是程序而不是存储数据,对于这一点你就不用再争论了。

回复

使用道具 举报

77#
ID:460466 发表于 2020-8-26 11:35 | 只看该作者
hhdsdy 发表于 2020-8-25 22:48
你这么认为也对,但是你不能回避一点,你想让单片机输出00000010,给单片机编程输入00000010是绝对不行的 ...

“给单片机输入00000010”后,那它输出的是什么?
回复

使用道具 举报

78#
ID:460466 发表于 2020-8-26 11:38 | 只看该作者
hhdsdy 发表于 2020-8-25 22:48
你这么认为也对,但是你不能回避一点,你想让单片机输出00000010,给单片机编程输入00000010是绝对不行的 ...

数据和程序是什么关系?我还真不懂!请教了,,,,,,,,
回复

使用道具 举报

79#
ID:460466 发表于 2020-8-26 11:49 | 只看该作者
黄youhui 发表于 2020-8-25 08:23
你的理论上是可行,但是理论终究只是理论,实现起来很难的,很多器件你只要给他一个电平信号他就能工作,你 ...

初学时往往对P0口、P2口和P3口的第二功能用法迷惑不解,认为第二功能和原功能之间要有一个切换的过程,或者说要有一条指令,事实上,各端口的第二功能完全是自动的,不需要用指令来转换。如P3.6、P3.7分别是WR、RD信号,当微处理机外接RAM或有外部I/O口时,它们被用作第二功能,不能作为通用I/O口使用,只要一微处理机一执行到MOVX指令,就会有相应的信号从P3.6或P3.7送出,不需要事先用指令说明。事实上‘不能作为通用I/O口使用’也并不是‘不能’而是(使用者)‘不会’将其作为通用I/O口使用。你完全可以在指令中按排一条SETB P3.7的指令,并且当单片机执行到这条指令时,也会使P3.7变为高电平,但使用者不会这么去做,因为这通常会导致系统的崩溃。
回复

使用道具 举报

80#
ID:460466 发表于 2020-8-26 17:56 | 只看该作者
hhdsdy 发表于 2020-8-25 22:48
你这么认为也对,但是你不能回避一点,你想让单片机输出00000010,给单片机编程输入00000010是绝对不行的 ...

单片机的各个引脚输出的是不是0或1变化的电位?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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