我正试图从3.5英寸软盘中提取数据,这些软盘在ZX频谱的+D接口上格式化。这与PC很接近,但并不完全相同。我过去曾编写过这样的软件,使用BIOS访问软盘。
但是,有些磁盘是旧的并且有坏扇区。我正在尝试创建一个软盘驱动器控制器,以在位级别读取磁盘,从而恢复尽可能多的数据。我完全意识到这可能有多困难。然而,我已经在原始频谱计算机上编写了一个磁盘实用程序,该程序在机器代码级别与接口对接,用Z80汇编软件编写,以模拟MSDOS访问FAT12软盘并将文件写入FAT12软盘。访问这些磁盘的原始计算机使用3.4MHz处理器,所以我想使用的Rasperry Pi应该足够快。我甚至可以在Linux上运行它,但如果不能,我已经找到了使用汇编语言访问GPIO端口、屏幕、键盘和SD卡的方法,而不需要任何内核来运行它。我已经阅读了软盘驱动器如何读取和写入数据,并看到了一些如何操作软盘(而不仅仅是步进电机)的基本示例。
我做了一些研究,但有一些问题我似乎找不到答案,我想知道这里的人是否知道。
1) 读取数据引脚(30)。这是返回读取头下的逻辑高/低值(向上或向下舍入为逻辑高或低),还是模拟?我之所以这么问,是因为如果它是模拟的,恢复任何输入都可以让我更好地尝试和恢复损坏的扇区,但会使接口电路更难制作,并且取决于使用的ADC,使与GPIO的接口更难、更慢。
2) 我知道+5V和+12V的摩尔功率。但是软盘的电流会是多少呢?
3) 我假设软盘上带状电缆的控制引脚在0或+5V电压下工作,但人们似乎能够在+3.3V电压下运行。有人知道它们应该在什么电压下运行吗?它们的电流容限是多少:输入期望的电压和电流,输出提供的电流/电压?
非常感谢您提供有关此方面的任何信息/知识。
有点晚了,但如果其他人感兴趣:
1) 软盘的数据输出是开放式收集器。所以你可以把它拉到3.3伏,一切都会好起来的。
2) 12V时为600 mA,5V时为500 mA应该是安全的
3) 想想TTL输入,它预计高电平为2.4伏。(2.5伏,根据NEC 3.5英寸软盘驱动器)。