请问有人用cpld做过模拟usb吗? 请问最便宜的cpld具有中断功能吗?每秒指行的速度能有AT
我用ATmega16模拟usb,但是这个模拟始终要保持一个中断一直存在,而我一个子程序不能被中断打断,一打断就有问题,所在在avr的芯片上就不能完美解决,我不懂cpld,但看一些说明cpld是并行执行的,那么是否是在中断到来时,不会影响另一个子程序?(用cpld模拟usb是学习,并不想用专用usb芯片) 那还不如用外加PDIUSB12!! 外加就没有意思了,学习主要是要自己实现最基础的东西,能直接就带usb的芯片也有,但那样学不到多少啊 一个sie就够呛 不懂你说的sie是什么,因为我一点都不懂cpld,不知道你用过avr usb没有,就是一个纯软件,己经写好了源代码的,用的avr芯片的两个io口来模拟D+ D-传输数据,如果要用到cpld上,只需要cpld能提供两个IO口,其中一个IO口需要有中断功能,然后就是代码移植就,也再重新熟悉一遍usb电气传输的实现. 看来lz对CPLD理解的有问题…… 可编程逻辑电路的编程也和单片机的完全不一样。SIE是说的serial interface engine的意思,自己熟悉下USB的协议和体系吧。 单片机的软件包,,是不能“直接移植”到 CPLD 的啊!!
CPLD可以理解成:几乎每个引脚都具有“中断功能”,,而且“中断”执行的速度可以快到 几个ns(纳秒)!! 我个人认为 6楼解释不妥。
CPLD应该理解实际的电路。CPLD的内部可以实现各个数字IC的功能。LZ应该好好思考一下MCU时根据程序运行,CPLD虽说也是写程序代码,但CPLD实现的数字控制电路(分立元件组成数字电路一样)。 那这样看来用硬件模拟 电气时序,比用软件模拟电气时序要难得多了? 8楼还是去了解下cpld的真正功能吧。。。。 回9楼,如果cpld不行,也可以用别的便宜点的硬件,我的目的是用一个硬件来模拟usb。 CPLD 完全模拟 USB 容量不够的,模拟 SIE 可以,而且有开源的 Verilog 代码. 回11楼,请问要模拟一个USB最低的硬件是哪种呢? LZ还是去用USB控制器吧~CH375就不错~坛子里有很多现成的代码。
你用一个单片机模拟USB的成本,并不会比专门的USB控制器低太多 不是作产品,是学习的 如果你一定要用PLD器件(CPLD/FPGA)直接处理USB,容量大点的估计还是有希望能搞定全速的。
高速一定得有单独的模拟前端(Phy)。
但是你的“不能中断”的AVR程序是很难移植进PLD器件的。
页:
[1]