EDN首页   博客首页 用户登陆  |  注册

日志档案

发表于 2007/3/30 14:19:06

16

标签: 自制U盘  

89S52加USBD12模拟的一个U盘(源码+原理图+实物照片)

这是一个用89S52加PDIUSBD12模拟的一个U盘,里面涉及到USB接口,USB大容量存储设备,FAT16文件系统等内容。插入电脑后,可显示移动磁盘盘符及一个文本文件。

       需要说明一下的是,这个包中的原理图,IDE接口部分、74HC573、以及RS232串口等部分,是作为这个实验板的一部分。在这个模拟U盘的程序中,是没有用到的。在下一个“移动硬盘”的例子中,就用到了IDE接口跟74HC573了。至于RS232,那时笔者在调试程序时用的。如果您不需要通过串口调试程序,RS232部分可以不管它。

 

相关评论: http://computer00.21ic.org/user1/2198/archives/2006/9858.html

 

U盘源代码包下载:rar

 

原理图:

注意:图中串口电平转换部分的C8和C10接反了,C11负端应接VDD。D12的SUSPEND(12脚)应该接地。USB接头处的D+和D-应该分别串联22欧姆的匹配电阻。由于图得比较匆忙,所以没留意。

 

点击看大图

 

 

点击看大图

点击看大图

点击看大图

点击看大图

系统分类: 单片机   |   用户分类: 圈圈作品   |   来源: 原创   |   【推荐给朋友】   |   【添加到收藏夹】

阅读(4942)  |  评论(5)  |  收藏(0)  |  举报  

投一票您将和博主都有获奖机会!

最新评论

  • computer00

    2009/5/6 0:29:05

    密码应该是computer00,看看压缩包的注释就知道了。 另外,不要用这个程序了,这个程序太旧了,使用这个的:http://blog.21ic.com/user1/2198/archives/2008/54265.html

  • mmaajjxx

    2009/5/5 15:23:39

    解压的时候要密码啊?密码是什么啊?

  • computer00

    2007/11/22 0:52:24

    数据...数据都被扔拉...如果你要做真正的U盘,那么还需要将这些数据写入到对应的扇区中去。

  • xscn

    2007/11/21 17:44:54

    你好,找你的样子做了以后,向U盘写的数据寸到哪里了,是存到USB12里了么?

  • computer00

    2007/8/25 11:18:05

    发现程序的一个BUG,有些朋友提到枚举不正常,可能是下面这个函数的问题,替换它再试试.

    /***************************设置地址***************************************/
    void set_usb_address(void)
    {
    usb_flags.flags.set_addr=1;
    set_usb_addr(Control_Data.DeviceRequest.wValue);
    while(select_endpoint(1)&0x01);
    write_endpoint_buff(1,0,0);
    while(select_endpoint(1)&0x01);
    usb_flags.flags.usb_endp0_in=0;
    usb_flags.flags.setup_packet_out=0;
    }
    /******************************************************************************/