
基于GL823K的USB2.0读卡器1.0
简介
这是一款基于GL823K芯片的USB2.0读卡器,可以用于对TF/SD卡的读写,且该方案已进行验证,可进行使用。
简介:这是一款基于GL823K芯片的USB2.0读卡器,可以用于对TF/SD卡的读写,且该方案已进行验证,可进行使用。开源协议
:GPL 3.0
(未经作者授权,禁止转载)描述
一、项目简介
本项目采用的芯片是GL823K,GL823K 是一款由Genesys Logic公司推出的USB 2.0单通道读卡器控制器芯片,其数据手册显示其主要功能是支持多种闪存卡的读取,并通过USB 2.0接口与主机进行高速数据传输。它兼容广泛的闪存卡类型,包括SD卡家族(SD, SDHC, SDXC, miniSD, microSD),MMC卡家族(MMC, RS-MMC, MMCmicro, HS-MMC, MMCmobile),以及Memory Stick家族(Memory Stick PRO, Memory Stick PRO Duo, Memory Stick PRO-HG, MS Micro)。这种广泛的兼容性使其能够应用于各种不同的读卡器设备中。
该芯片内部集成了多个关键模块以实现其功能。其中包括USB 2.0物理层(PHY)负责与USB总线进行高速数据通信(480Mbps);串行接口引擎(SIE)处理USB协议和数据包;一个嵌入式8051微控制器负责整体控制和管理;媒体接口(MHE)负责与不同类型的闪存卡进行通信;以及FIFO缓冲器以提高数据传输效率。此外,芯片内部还集成了稳压器(5V至3.3V和3.3V至1.8V)以及PMOS晶体管,用于为芯片内部电路和外接存储卡供电,并包含片上时钟源(OCCS),无需外接晶振。
下面是本项目实物图:
二、电路分析
本电路由4个部分组成:GL823K芯片电路,卡槽,指示灯,USB接口。
这边着重介绍下GL823K的芯片电路:
根据数据手册中的表格,我们可以知道:
电源和接地:
- VDD (9脚): 3.3V 数字电源,为芯片的数字电路供电。
- VDDA (13脚): 3.3V USB PHY 电源,为 USB 物理层供电。
- VSS (1脚和14脚): 接地。
- 5V (10脚): USB 总线 5V 输入,为 USB 供电。
- PMOS (8脚): 卡电源输出,为存储卡供电 (200mA)。
USB 接口:
- DP (15脚): USB 差分信号 D+。
- DM (16脚): USB 差分信号 D-。
存储卡接口:
- CLK (4脚): 存储卡时钟信号。
- CMD (5脚): 存储卡命令/数据选择信号。
- D0-D3 (3, 2, 7, 6 脚): 存储卡数据线,4 位数据总线。
其他接口:
- GPIO (11脚): 通用输入/输出引脚,可用于各种控制和状态指示。
- LED (12脚): LED 指示灯输出,指示读卡器的状态。
根据芯片各个引脚的定义,设计了如下原理图:
主机输入5V给芯片供电,芯片输出Pmos引脚电压给卡槽供电,输出3.3V电压给信号指示灯供电。
在PCB设计部分,我对DP(D+)和DM(D-)两根信号进行了等长调节。
三、实物展示
这是电路板焊接出来的样子:
然后我也简单的设计了下外壳,不是很好看,但还凑合:
四、性能展示
由图可知,电脑已经识别到了内存卡:
我这边也是传输了一个视频,传输速度最高为17.2MB/秒左右,能用:
五、总结
大家如果对DIY一个读卡器感兴趣的话,可以来参考参考我这个项目,项目较为简单,元器件也很少,易于焊接,可用于日常生活中对内存卡的使用,也可用来进行电子培训,上手容易。
设计图

BOM


评论