Prusa MINI Firmware overview
CSDV2 Struct Reference

#include <SdInfo.h>

Collaboration diagram for CSDV2:

Public Attributes

unsigned char reserved1: 6
 
unsigned char csd_ver: 2
 
unsigned char taac
 
unsigned char nsac
 
unsigned char tran_speed
 
unsigned char ccc_high
 
unsigned char read_bl_len: 4
 
unsigned char ccc_low: 4
 
unsigned char reserved2: 4
 
unsigned char dsr_imp: 1
 
unsigned char read_blk_misalign: 1
 
unsigned char write_blk_misalign: 1
 
unsigned char read_bl_partial: 1
 
unsigned char reserved3: 2
 
unsigned char c_size_high: 6
 
unsigned char c_size_mid
 
unsigned char c_size_low
 
unsigned char sector_size_high: 6
 
unsigned char erase_blk_en: 1
 
unsigned char reserved4: 1
 
unsigned char wp_grp_size: 7
 
unsigned char sector_size_low: 1
 
unsigned char write_bl_len_high: 2
 
unsigned char r2w_factor: 3
 
unsigned char reserved5: 2
 
unsigned char wp_grp_enable: 1
 
unsigned char reserved6: 5
 
unsigned char write_partial: 1
 
unsigned char write_bl_len_low: 2
 
unsigned char reserved7: 2
 
unsigned char file_format: 2
 
unsigned char tmp_write_protect: 1
 
unsigned char perm_write_protect: 1
 
unsigned char copy: 1
 
unsigned char file_format_grp: 1
 
unsigned char always1: 1
 
unsigned char crc: 7
 

Detailed Description

CSD for version 2.00 cards

Member Data Documentation

◆ reserved1

unsigned char CSDV2::reserved1

◆ csd_ver

unsigned char CSDV2::csd_ver

◆ taac

unsigned char CSDV2::taac

fixed to 0x0E

◆ nsac

unsigned char CSDV2::nsac

fixed to 0

◆ tran_speed

unsigned char CSDV2::tran_speed

◆ ccc_high

unsigned char CSDV2::ccc_high

◆ read_bl_len

unsigned char CSDV2::read_bl_len

This field is fixed to 9h, which indicates READ_BL_LEN=512 Byte

◆ ccc_low

unsigned char CSDV2::ccc_low

◆ reserved2

unsigned char CSDV2::reserved2

not used

◆ dsr_imp

unsigned char CSDV2::dsr_imp

◆ read_blk_misalign

unsigned char CSDV2::read_blk_misalign

fixed to 0

◆ write_blk_misalign

unsigned char CSDV2::write_blk_misalign

fixed to 0

◆ read_bl_partial

unsigned char CSDV2::read_bl_partial

fixed to 0 - no partial read

◆ reserved3

unsigned char CSDV2::reserved3

not used

◆ c_size_high

unsigned char CSDV2::c_size_high

high part of card size

◆ c_size_mid

unsigned char CSDV2::c_size_mid

middle part of card size

◆ c_size_low

unsigned char CSDV2::c_size_low

low part of card size

◆ sector_size_high

unsigned char CSDV2::sector_size_high

sector size is fixed at 64 KB

◆ erase_blk_en

unsigned char CSDV2::erase_blk_en

fixed to 1 - erase single is supported

◆ reserved4

unsigned char CSDV2::reserved4

not used

◆ wp_grp_size

unsigned char CSDV2::wp_grp_size

◆ sector_size_low

unsigned char CSDV2::sector_size_low

sector size is fixed at 64 KB

◆ write_bl_len_high

unsigned char CSDV2::write_bl_len_high

write_bl_len fixed for 512 byte blocks

◆ r2w_factor

unsigned char CSDV2::r2w_factor

fixed value of 2

◆ reserved5

unsigned char CSDV2::reserved5

not used

◆ wp_grp_enable

unsigned char CSDV2::wp_grp_enable

fixed value of 0 - no write protect groups

◆ reserved6

unsigned char CSDV2::reserved6

◆ write_partial

unsigned char CSDV2::write_partial

always zero - no partial block read

◆ write_bl_len_low

unsigned char CSDV2::write_bl_len_low

write_bl_len fixed for 512 byte blocks

◆ reserved7

unsigned char CSDV2::reserved7

◆ file_format

unsigned char CSDV2::file_format

Do not use always 0

◆ tmp_write_protect

unsigned char CSDV2::tmp_write_protect

◆ perm_write_protect

unsigned char CSDV2::perm_write_protect

◆ copy

unsigned char CSDV2::copy

◆ file_format_grp

unsigned char CSDV2::file_format_grp

Do not use always 0

◆ always1

unsigned char CSDV2::always1

not used always 1

◆ crc

unsigned char CSDV2::crc

checksum