whmjack
驱动小牛
驱动小牛
  • 注册日期2003-09-17
  • 最后登录2007-04-26
  • 粉丝0
  • 关注0
  • 积分290分
  • 威望29点
  • 贡献值0点
  • 好评度29点
  • 原创分0分
  • 专家分0分
阅读:1310回复:9

300分求助!!

楼主#
更多 发布于:2004-08-13 17:19
各位大哥,问几个问题:
1。小弟在开发u盘时,遇到了一个问题:由于我的单片机只有512个字节的缓冲区,所以当数据比较多时,就要先接收,然后写入flash中,由于在写入flash中时要先写入flash的缓冲块,然后再擦除要写入的目标块,然后再将缓冲块的内容写入目标快,然后擦除缓冲块,所以在这段时间内,设备就不能接收数据,d12一直回应NAK,直到上述的事情做完为止。出现的问题是当PC发送的数据小于32page(512byte/page)时,结果还是正常的,但是一旦比较大了,如128page是,设备收到了reset包,数据传输就停止了,导致不能格式化,请问大侠们,引起这种重启的原因大概是什么呢?附加中是用usb分析仪抓的图。
2。基于51内核的单片机有没有内存大于2k的吗?有的话,是什么公司,什么型号的?
3。基于51内核的单片机有没有加入了usb接口的?
请大哥们告知!谢谢!
snowStart
驱动老牛
驱动老牛
  • 注册日期2004-04-06
  • 最后登录2011-06-02
  • 粉丝0
  • 关注0
  • 积分95分
  • 威望19点
  • 贡献值177点
  • 好评度1点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-08-13 18:35
还有这种问题,没接触过这种芯片,
不支持DMA吗?
学习,关注,交流中... [email=fengyu@163.com]Email:snowstarth@163.com[/email] [url]http://bbs.zndev.com/?a=snowStart[/url]
zzq191
驱动中牛
驱动中牛
  • 注册日期2001-08-09
  • 最后登录2018-05-29
  • 粉丝17
  • 关注0
  • 积分1041分
  • 威望716点
  • 贡献值0点
  • 好评度318点
  • 原创分0分
  • 专家分0分
  • 社区居民
板凳#
发布于:2004-08-18 07:32
回应NAK间隔时间太长了
QQ:416331891,承接windows下应用和驱动的开发,雅虎通:zzq191, Email:zzq191@21cn.com
whmjack
驱动小牛
驱动小牛
  • 注册日期2003-09-17
  • 最后登录2007-04-26
  • 粉丝0
  • 关注0
  • 积分290分
  • 威望29点
  • 贡献值0点
  • 好评度29点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-08-18 09:02
回应NAK间隔时间太长了
??
那请问应该怎么做呢
clementzhao
驱动大牛
驱动大牛
  • 注册日期2003-05-08
  • 最后登录2009-02-20
  • 粉丝0
  • 关注0
  • 积分28分
  • 威望63点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-08-18 09:11
1、优化你的程序,加大缓冲
2、3,atmel的很多啊,去他们网站看看吧www.atmel.com
AT83C5132 :
USB C51-based Microcontroller with 64K Bytes ROM, 2304 bytes RAM, 4 USB Endpoints, SPI, UART, IDE, TWI, MultiMediaCard, DataFlash, I2S, 10-bit ADC.
AT89C5132 :
USB C51-based Microcontroller with 64K Bytes Flash, 2304 bytes RAM, 4 USB Endpoints, SPI, UART, IDE, TWI, MultiMediaCard, DataFlash, I2S, 10-bit ADC.
这些符合你2种需要
xxczsy123456
驱动牛犊
驱动牛犊
  • 注册日期2004-08-12
  • 最后登录2006-05-15
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望4点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-08-21 19:33
非利铺的P89C669单片机RAM 为2K

给我分吧
flyhye
驱动小牛
驱动小牛
  • 注册日期2003-07-01
  • 最后登录2012-01-11
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2004-08-22 09:20
能用dma传输尽量用dma,不行的话,另外,速度这么慢,已经没有必要写入flash的缓冲块吧。相应的再优化一下程序,应该就可以了
千载奇逢,无如好书良友 一生清福,只在碗茗炉烟
snowStart
驱动老牛
驱动老牛
  • 注册日期2004-04-06
  • 最后登录2011-06-02
  • 粉丝0
  • 关注0
  • 积分95分
  • 威望19点
  • 贡献值177点
  • 好评度1点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2004-08-22 19:17
优化提高不了速度,我看换个芯片吧
学习,关注,交流中... [email=fengyu@163.com]Email:snowstarth@163.com[/email] [url]http://bbs.zndev.com/?a=snowStart[/url]
NewTech
驱动大牛
驱动大牛
  • 注册日期2002-10-02
  • 最后登录2010-03-27
  • 粉丝0
  • 关注0
  • 积分16分
  • 威望263点
  • 贡献值0点
  • 好评度86点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2004-09-13 23:15
缓冲太小了!最好有双缓冲!
gdutchen
驱动牛犊
驱动牛犊
  • 注册日期2004-08-23
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2004-09-14 10:01
不是选用多缓冲且已经包含MCU控制内核的芯片吧,这样速度才有可能提高上来。
游客

返回顶部