我在很多年前做过。但以如今的情况来看,这种做法已经不太现实。
那还是 Windows XP 时代,可以直接编程透过 0x378 读写 LPT(Parallel Port),就是 USB 时代以前,打印机用的那个口。
这种丑大宽的接口,在以前的台式机、甚至笔记本电脑上,都是标配IO。
LPT 可以拉出个别接点,直接控制某一个接点的高低电位,简单说就是 GPIO。再接上 TA-7279P 之类的桥式 IC,给直流有刷电机作正反转控制。
到 Win7 时代已经行不通,因为这其实是直接读写 RAM 的行为,为了安全性已经被 OS 挡下来。硬要做?可以的,只是很高概率会见到经典蓝色当机画面。
那怎么办呢?我需要编程控制电机、读取各种电子电路例如 ADC,可我不想用 Windows XP 啊,Windows 7 在当时很潮的!
有个德国人做了这个东西:
那是一个物流与电商都远远不如现在发达的时代,我不知道怎么跟这个德国人买?
最后,买的是中国大陆的仿制品,但连接稳定性不佳啊!我也搞不懂是仿制者的锅?还是原设计者的锅?
虽然连接稳定性差,但起码不会再看到蓝色当机画面,而且重连成功概率不算低,做原型机实验勉强堪用了。
其实,说到这里,就已经超出题主要求的范围了,因为这个 USB2LPT 本质上也是单片机做的,只是别人帮你写了模拟 LPT 的 firmware 进去(而且我没记错的话,还不能当作 Printer Port 使用,也就是不能真的拿来转接打印机
@淡月清风 的留言让我想起来,自己曾经折腾过 winio.dll,Inpout32.dll,但最后都不够好。最主要的原因,是不能突破「Windows 系统时间片」的限制,操作实时性不佳。
当时有一个同学,他是拿 NI-6009 这张很多学生爱用的 USB DAQ 去完成「电脑控制电机」的目标,他很开心的说「哈哈哈~我这样就逃过 8051 了」。
结果我把 NI-6009 拿来拆开,抱歉,你用的还是 8051!
如下图,这真的是当时的照片,我自己拿小米3拍下的。
其他回答说到可以用:
很可能也都是类似的方案,只是控制电机的人不用折腾单片机了,但不代表没用到单片机。
再往后,就是我自学单片机的故事了。在这件事折腾得太累,也是我自学单片机的动机之一。
用 UART+MCU 做转接,以电脑控制电机,这自由度实在高得太多太多了,尤其很多细节交给 MCU 就可以不受「Windows 系统的时间片」限制,也能将不少具体硬件动作流程抽象到 MCU 的代码中。但就是得先过「会写单片机」这道门槛。
有的回答重点放在「小电流转大电流」这个点上,但我认为这不是问题重点。
试问,你用单片机控制,就不需要小电流转大电流了吗?所以我回答的重点没放在这上面。
(再较真下去,单片机也属于电脑的子集,所以「如何在不使用单片机等的情况下直接用电脑控制电机?」这个问题也是有毛病的)
买个usb转串口模块,注意要有DTR和RTS信号的才行。pc上程序控制这两个脚就行了。后面你再加RZ7899之类电机驱动模块就行,保险起见再加光耦隔离更好。
如果需要的gpio多一些,建议用CH341A模块,能转出十几个gpio吧。
也理解也不理解。
十几、二十年前左右,我还在大学里混日子。那时候也没啥智能手机,晚上熄灯后,要么睡要么就是听收音机。忘了是北京广播电台的那个频道了,节目之间有段音频片花,大致是这样的:古典的北京,“一句京剧唱腔”,现代的北京,“几句英文词儿的Rap”。好像还有几个排比句,不大记得了。
相信网友们都看出来了,问题还是在于“现代的北京”。它赤裸裸的向包括我在内的听众传递了这样的文化现代观——西方的、流行的。
也因此,网上对文科生的那种模糊的偏见我也有。你想,这些专门从事文化传播行业的人尚且如此,既不打算创造、也不打算引领,既没文化,也没有志气。
所以,我在网上碰到那些鄙视理科生没文化的观点时,我都轻轻翻过页面。毕竟,对于一个搞技术的人来说,如果鄙视我们的人能创造出有吸引力的文化作品,咱也是乐观其成呀!
这就是我不能理解的地方,按理说,文化的创造者理应在未知的、未曾到过的地方探寻不一样的可能性,从而实现自己的价值。在陈旧的、充满偏见的形式上展现自己的文化品味,看起来就像是几年前有人搞出来的比基尼京剧。
不过,实事求是的说,这种文化心理简直不要太普遍,这也不只是文化领域的问题。你看,我们搞个篮球真人秀,现场DJ都要用飙英语的方式烘托气氛。这早就是大众心理了。
所以我说,这又是能理解的。说白了,这是文化落后这个基本事实的果,而不是因。