当前位置:网站首页>【 sdio】 résumé de l'analyse du Protocole sd2.0 (Ⅲ) - - Introduction aux commandes pertinentes de la carte SD
【 sdio】 résumé de l'analyse du Protocole sd2.0 (Ⅲ) - - Introduction aux commandes pertinentes de la carte SD
2022-07-22 18:39:00 【Zhongcai0901】
Autres articles
《【SDIO】SDIO、SDCarte、FatFsIndex des articles relatifs au système de fichiers》
1.Type de commande
SD Il y a des ordres. 4 Type d'espèce:
- Pas de réponse aux commandes de diffusion(bc),Envoyer à toutes les cartes,Ne pas renvoyer la réponse de la tâche;
- Avec des commandes de diffusion en réponse(bcr),Envoyer à toutes les cartes,Réception simultanée des réponses de toutes les cartes;
- Commandes d'adressage(ac),Envoyer à la carte sélectionnée,DAT Ligne sans transmission de données;
- Commandes de transfert de données d'adressage(adtc),Envoyer à la carte sélectionnée,DATTransmission de données en ligne.
En plus,SDLe système de module hôte de carte est conçu pour fournir une interface standard pour différents types d'applications.Dans cet environnement,Besoin d'un client spécifique/Fonctions de l'application.Pour réaliser ces fonctions,Défini dans la normeDeux.TypeCommandes générales:Commandes d'application spécifiques(ACMD)EtCommandes générales(GEN_CMD).À utiliser SDFabricant de cartes particulier à ACMDLes commandes sont commeACMD6,Il n'est pas nécessaire d'envoyer la commande avant qu'elle ne soit envoyée CMD55 Les ordres,Information SDLes commandes suivantes de la carte sont des commandes d'application spécifiques.CMD55 La commande n'est valable que pour la première commande immédiatement après,SDCarte si elle détecte CMD55 La première commande suivante est ACMD Exécuter sa fonction d'application spécifique,Si la détection révèle que ce n'est pas ACMD Les ordres,Exécutez la commande standard.
2.Description de la commande
SD Les commandes du système de cartes sont divisées en plusieurs classes , Chaque classe supporte un “ Paramètres fonctionnels de la carte ”. Le tableau suivant énumère SD Informations de commande de la section carte , Pour plus de détails, voir 《 Physical Layer Specification Version 2.00》Description du document,Dans le tableauBits de remplissageEtPlace réservée Doit être réglé à 0.
Les ordres Numéro de série | Catégorie Type | Paramètres | Ça sonne. Devrait | Abréviations | Description |
Commandes de base(Class 0) | |||||
CMD0 | bc | [31:0]Bits de remplissage | - | GO_IDLE_STATE | Réinitialiser toutes les cartes idle Statut. |
CMD2 | bcr | [31:0]Bits de remplissage | R2 | ALL_SEND_CID | Prévenez tous les dessins animés CMD Retour en ligne CIDValeur. |
CMD3 | bcr | [31:0]Bits de remplissage | R6 | SEND_RELATIVE_ADDR | Aviser toutes les cartes de publier de nouvelles RCA. |
CMD4 | bc | [31:16]DSR[15:0]Bits de remplissage | - | SET_DSR | Programmer toutes les cartes DSR. |
CMD7 | ac | [31:16]RCA[15:0]Bits de remplissage | R1b | SELECT/DESELECT_CARD | Sélectionner/Désélectionner RCA Carte d'adresse . |
CMD8 | bcr | [31:12] Bao. Reste. Bits[11:8]VHS[7:0]Mode de contrôle | R7 | SEND_IF_COND | Envoyer SD Conditions d'interface de la carte , Contient des informations sur la tension supportée par l'hôte , Et demande si la carte prend en charge . |
CMD9 | ac | [31:16]RCA[15:0]Bits de remplissage | R2 | SEND_CSD | La carte sélectionnée passe CMD Transmission en ligne CSD Contenu |
CMD10 | ac | [31:16]RCA[15:0]Bits de remplissage | R2 | SEND_CID | La carte sélectionnée passe CMD Transmission en ligne CID Contenu. |
CMD12 | ac | [31:0]Bits de remplissage | R1b | STOP_TRANSMISSION | Forcer la carte à arrêter la transmission |
CMD13 | ac | [31:16]RCA[15:0]Bits de remplissage | R1 | SEND_STATUS | La carte sélectionnée passe CMD La ligne envoie son registre d'état |
CMD15 | ac | [31:16]RCA[15:0]Bits de remplissage | - | GO_INACTIVE_STATE | Laissez la carte sélectionnée entrer “inactive”Statut |
Opération de lecture orientée bloc (Class 2) | |||||
CMD16 | ac | [31:0]Longueur du bloc | R1 | SET_BLOCK_LEN | Pour les normes SD Carte, Définir la longueur de la commande Block ,Pour SDHC La longueur de la commande Block est fixée à 512 Octets. |
CMD17 | adtc | [31:0]Adresse des données | R1 | READ_SINGLE_BLOCK | Pour les cartes standard ,Lire SEL_BLOCK_LEN Blocs d'octets de longueur ;Pour SDHC Carte,Lire512 Bloc d'octets. |
CMD18 | adtc | [31:0]Adresse des données | R1 | READ_MULTIPLE_BLOCK | De SD Bloc de lecture de carte ,Jusqu'à ce queCMD12 Interruption. La longueur du bloc est la même que CMD17. |
écriture orientée bloc (Class 4) | |||||
CMD24 | adtc | [31:0]Adresse des données | R1 | WRITE_BLOCK | Pour les cartes standard ,Écrire SEL_BLOCK_LEN Blocs d'octets de longueur ;Pour SDHC Carte,Écrire512 Bloc d'octets. |
CMD25 | adtc | [31:0]Adresse des données | R1 | WRITE_MILTIPLE_BLOCK | Direction continue SD Bloc de données d'écriture de carte ,Jusqu'à ce queCMD12 Interruption. Chaque pièce a la même longueur CMD17. |
CMD27 | adtc | [31:0]Bits de remplissage | R1 | PROGRAM_CSD | C'est exact. CSD Les bits programmables de |
Effacer la commande (Class 5) | |||||
CMD32 | ac | [31:0]Adresse des données | R1 | ERASE_WR_BLK_START | Définir l'adresse du bloc de départ pour l'effacement |
CMD33 | ac | [31:0]Adresse des données | R1 | ERASE_WR_BLK_END | Définir l'adresse du bloc de fin d'effacement |
CMD38 | ac | [31:0]Bits de remplissage | R1b | ERASE | Effacer les blocs pré - sélectionnés |
Commande de verrouillage(Class 7) | |||||
CMD42 | adtc | [31:0]Réserve | R1 | LOCK_UNLOCK | Verrouillage/Déverrouiller SD Carte |
Commandes d'application spécifiques (Class 8) | |||||
CMD55 | ac | [31:16]RCA[15:0]Bits de remplissage | R1 | APP_CMD | Spécifiez la commande suivante comme commande d'application spécifique , Pas une commande standard |
CMD56 | adtc | [31:1]Bits de remplissage[0]Lire/Écris. | R1 | GEN_CMD | Commandes générales, Ou dans une commande d'application spécifique , Utilisé pour transférer un bloc de données ,Le BIT le plus bas est 1Indique la lecture des données,Pour 0 Pour écrire des données |
SD Commande d'application Carter | |||||
ACMD6 | ac | [31:2] Remplissage Charge Bits[1:0]Largeur du bus | R1 | SET_BUS_WIDTH | Allez Justice Nombre Selon Total Ligne Large Degré('00'=1bit,'10'=4bit). |
ACMD13 | adtc | [31:0]Bits de remplissage | R1 | SD_STATUS | Envoyer SD Statut |
ACMD41 | Bcr | [32] Bao. Reste. Bits[30]HCS(OCR[30]) [29:24]Place réservée[23:0]VDD Électricité Presse(OCR[23:0]) | R3 | SD_SEND_OP_COND | L'hôte demande à la carte d'envoyer ses informations de support (HCS)Et OCR Contenu du Registre. |
ACMD51 | adtc | [31:0]Bits de remplissage | R1 | SEND_SCR | Lire le registre de configuration SCR |
3. Réponse à la commande
Réponse par SDLa carte est envoyée à l'hôte,Une partie de la commande exige SDLa carte répond, Ces réponses sont principalement utilisées pour la rétroaction SDÉtat de la carte.SDIO En tout. 7 Types de réponses(Nom de code:R1~R7),Parmi eux SDLa carte n'a pas R4、R5Type de réponse.Une commande spécifique correspond à un type de réponse spécifique,Comme quand l'hôte envoie CMD3Au moment de l'ordre, Peut obtenir une réponse R6.Comme les ordres,SDLa réponse de la carte passe aussi par CMDTransmission continue de la ligne.Selon la taille du contenu de la réponse, il peut être divisé en réponse courte et réponse longue.La réponse courte est 48bit Longueur,Seulement R2 Le type est une longue réponse,Sa longueur est 136bit. Les détails de chaque type de réponse sont présentés dans le tableau ci - dessous. .
Sauf que R3En dehors du type, Toutes les autres réponses CRC7 Vérifier pour vérifier ,Pour R2Le type est utilisé CID EtCSD Dans le registre CRC7.
R1( Commande de réponse normale ) | ||||||||
Description | Position initiale | Bit de transmission | Numéro de commande | Statut de la carte | CRC7 | Bit de terminaison | ||
Bit | 47 | 46 | [45:40] | [39:8] | [7:1] | 0 | ||
Largeur du BIT | 1 | 1 | 6 | 32 | 7 | 1 | ||
Valeur | "0" | "0" | x | x | x | “1” | ||
Remarques | S'il y a des données transférées à la carte , Dans ce cas, il peut y avoir busy Signal | |||||||
R2(CID,CSD Registres) | ||||||||
Description | Position initiale | Bit de transmission | Réserve | [127:1] | Bit de terminaison | |||
Bit | 135 | 134 | [133:128] | 127 | 0 | |||
Largeur du BIT | 1 | 1 | 6 | x | 1 | |||
Valeur | "0" | "0" | "111111" | CID Ou CSD Registres[127:1]Valeur du BIT | “1” | |||
Remarques | CID Le contenu du registre est CMD2 Et CMD10 Réponse,CSD Le contenu du registre est CMD9 Réponse. | |||||||
R3(OCR Registres) | ||||||||
Description | Position initiale | Bit de transmission | Réserve | OCR Registres | Réserve | Bit de terminaison | ||
Bit | 47 | 46 | [45:40] | [39:8] | [7:1] | 0 | ||
Largeur du BIT | 1 | 1 | 6 | 32 | 7 | 1 | ||
Valeur | "0" | "0" | "111111" | x | "1111111" | “1” | ||
Remarques | OCR La valeur du registre est ACMD41 Réponse de | |||||||
R6( Publié A RCA Réponse du registre ) | ||||||||
Description | Position initiale | Bit de transmission | CMD3 | RCA Registres | Bit d'état de la carte | CRC7 | Bit de terminaison | |
Bit | 47 | 46 | [45:40] | [39:8] | [7:1] | 0 | ||
Largeur du BIT | 1 | 1 | 6 | 16 | 16 | 7 | 1 | |
Valeur | "0" | "0" | "000011" | x | x | x | “1” | |
Remarques | Dédié aux commandes CMD3 Réponse de | |||||||
R7( Publié A RCA Réponse du registre ) | ||||||||
Description | Position initiale | Bit de transmission | CMD8 | Réserve | Tension reçue | Mode de détection | CRC7 | Bit de terminaison |
Bit | 47 | 46 | [45:40] | [39:20] | [19:16] | [15:8] | [7:1] | 0 |
Largeur du BIT | 1 | 1 | 6 | 20 | 4 | 8 | 7 | 1 |
Valeur | "0" | "0" | "001000" | "00000h" | x | x | x | “1” |
Remarques | Dédié aux commandes CMD8 Réponse de, La carte de retour supporte la plage de tension et le mode de détection |
4. Références
SDIO Les références sont les suivantes: :
L'adresse de téléchargement est la suivante:
https://download.csdn.net/download/ZHONGCAI0901/14975835
边栏推荐
- 力扣解法汇总522-最长特殊序列 II
- 真的有必要定义VO,BO,PO,DO,DTO吗?
- Thread learning notes
- C language simple TCP server program
- 3.Transbot修改显示分辨率
- creating vlan over openstack (by quqi99)
- Rocky基础练习题-shell脚本-1
- centos7.5下添加gd库然后mysql拓展库没了mysql拓展的配置也没问题,phpinfo中就是没有mysql拓展
- Internet download manager2022 intelligent win latest version Downloader
- node生成token与验证token(typeScript语法)
猜你喜欢
随机推荐
为什么chrome视频时卡得厉害(by quqi99)
PHP实现删除一维数组中某一个值
Toss Phoenix system (by quqi99)
call()和apply()
It took two hours to find the bug about scrollto scrolling the distance from offsettop to the top
set up ovn based sr-iov test env (by quqi99)
力扣解法汇总1260-二维网格迁移
H5 no scaling on the mobile terminal
【SDIO】SD2.0协议分析总结(三)-- SD卡相关命令介绍
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/mysqli.so'
【10点公开课】:云视频会议系统私有化实践
ip,子网掩码,网关,IPS与IDS
Go 管道模式的实际例子——计算一系列文件的 md5 值
Applet implementation list and details page
【TOOLS】TortoiseSVN如何设置比较工具为Beyond Compare 4
2. Raspberry pie system backup
Js高级-词法作用域
debug glance(by quqi99)
Tiktok massive engine 1 creates an advertising plan
小程序CMS动态处理数据之内容模型和内容集合的使用