Cárta SD#
Réamhrá#
Tá an rang sdcard díorthaithe ón rang bonn brain agus soláthraíonn sé rochtain ar chomhaid atá stóráilte ar chárta SD inbhainte atá curtha isteach san IQ (2ú glúin) Brain.
Ag baint úsáide as an gcárta SD, is féidir le do róbat sonraí ar nós íomhánna a luchtú, comhaid a léamh agus a scríobh, agus faisnéis a stóráil lena húsáid níos déanaí nó lena haistriú chuig ríomhaire.
Access#
Brain.SDcard
Notes#
Tacaíonn an IQ (2ú glúin) Brain le cártaí SD suas le 32GB i méid.
Ní mór an cárta SD a fhormáidiú mar FAT32.
De ghnáth, bíonn cártaí SD atá níos mó ná 32GB formáidithe mar exFAT, rud nach bhfuil comhoiriúnach leis an IQ (2ú glúin) Brain.
Ní mór gach comhad a chur i bhfréamh-eolaire an chárta SD le go mbeidh rochtain orthu.
Ní mór an cárta SD a chur isteach sa Brain sula bhféadfar oibríochtaí comhaid a dhéanamh.
Tá ainmneacha comhad agus cosáin íogair ó thaobh cás de.
Example#
/* This constructor is required when using VS Code.
A Brain is generated automatically at the start of
VEXcode projects. */
// Create the Brain
brain Brain = brain();
// Add more text and display file size
if (Brain.SDcard.exists("Text.txt")) {
// Get the size of the file
int fileSize = Brain.SDcard.size("Text.txt");
// Make a buffer to hold the file data
uint8_t buffer[fileSize];
// Load the file from the SD card into the buffer
Brain.SDcard.loadfile("Text.txt", buffer, sizeof(buffer));
// Display the file contents on the screen
Brain.Screen.print("%s", buffer);
}
Feidhmeanna na mBall#
Áirítear leis an rang sdcard na feidhmeanna ball seo a leanas:
loadfile— Luchtaíonn sé ábhar comhaid ón gcárta SD isteach i maolán cuimhne arna sholáthar ag an úsáideoir.savefile— Sábhálann sé sonraí ó mhaolán arna sholáthar ag an úsáideoir chuig comhad ar chárta SD an IQ (2ú glúin) Brain.appendfile— Cuireann sé seo sonraí ó mhaolán arna sholáthar ag an úsáideoir le deireadh comhaid atá ann cheana féin ar chárta SD an IQ (2ú glúin) Brain.isInserted— Tugann sé seo ar ais an bhfuil cárta SD curtha isteach sa Brain.size— Tugann sé seo méid comhaid atá stóráilte ar chárta SD an IQ (2ú glúin) Brain ar ais.exists— Tugann sé seo ar ais an bhfuil comhad leis an ainm sonraithe ann ar chárta SD an IQ (2ú glúin) Brain.
Is féidir comhaid .bmp agus .png atá stóráilte ar an gcárta SD a thaispeáint ar scáileán IQ (2ú glúin) Brain ag baint úsáide as drawImageFromFile, ar féidir rochtain a fháil air trí Brain.Screen.
Sula nglaotar ar aon fheidhmeanna sdcard ball, ní mór sampla brain a chruthú, mar a thaispeántar thíos:
// Create the Brain
brain Brain = brain();
loadfile#
Luchtaíonn sé ábhar comhaid ón gcárta SD isteach i maolán cuimhne a sholáthraíonn an t-úsáideoir.
Available Functionsint32_t loadfile(
const char* name,
uint8_t* buffer,
int32_t len );
Paraiméadar |
Cineál |
Cur síos |
|---|---|---|
|
|
Ainm an chomhaid atá le luchtú ón gcárta SD. Caithfidh síneadh an chomhaid a bheith san áireamh in ainm an chomhaid. |
|
|
Pointeoir chuig maolán ina stórálfar sonraí an chomhaid. |
|
|
An líon uasta beart le léamh ón gcomhad, a shocraítear de ghnáth de réir mhéid an mhaoláin. |
Tugann sé int32_t a léiríonn líon na mbeart a léadh go rathúil ón gcomhad:
Léiríonn luach dearfach cé mhéad beart a lódáladh isteach sa mhaolán.
Léiríonn
0nár léadh aon sonraí.
Más mó ná
lenan comhad, ní léitear ach na chéadlenbeart.Caithfidh an maolán a bheith mór go leor chun na sonraí a iarrtar a shealbhú.
Léann an fheidhm seo beart amha agus ní chuireann sí críochnóir nialasach leis.
// Check for SD card and show a file's text
if (Brain.SDcard.isInserted()) {
// Create a message to save to the SD card
uint8_t message[] = "Hello from VEX!";
// Save the message into "Text.txt"
Brain.SDcard.savefile("Text.txt", message, sizeof(message));
// Get the size of the file
int fileSize = Brain.SDcard.size("Text.txt");
// Make a buffer to hold the file data
uint8_t buffer[fileSize];
// Load the file from the SD card into the buffer
Brain.SDcard.loadfile("Text.txt", buffer, sizeof(buffer));
// Display the file contents on the screen
Brain.Screen.print("%s", buffer);
} else {
Brain.Screen.print("Insert SD card");
}
savefile#
Sábhálann sé sonraí ó mhaolán arna sholáthar ag an úsáideoir chuig comhad ar chárta SD an IQ (2ú glúin) Brain.
Available Functionsint32_t savefile(
const char* name,
uint8_t* buffer,
int32_t len );
Paraiméadar |
Cineál |
Cur síos |
|---|---|---|
|
|
Ainm an chomhaid atá le sábháil mar theaghrán. Caithfidh síneadh an chomhaid a bheith san áireamh in ainm an chomhaid. |
|
|
Pointeoir chuig maolán cuimhne ina bhfuil na sonraí atá le scríobh chuig an gcomhad. |
|
|
Líon na mbeart le scríobh ón maolán chuig an gcomhad. |
Tugann sé int32_t a léiríonn líon na mbeart a scríobhadh go rathúil chuig an gcomhad:
Léiríonn luach dearfach cé mhéad beart a sábháladh.
Léiríonn
0nár scríobhadh aon sonraí.
Más mó ná
lenan comhad, ní léitear ach na chéadlenbeart.Má tá comhad leis an ainm céanna ann cheana féin, déanfar é a athscríobh.
Ní leithdháileann an fheidhm seo cuimhne; ní mór don úsáideoir an maolán a chruthú agus a bhainistiú.
Scríobhann an fheidhm beartáin amha agus ní chuireann sí críochnóir nialasach leis.
// Check for SD card and show a file's text
if (Brain.SDcard.isInserted()) {
// Create a message to save to the SD card
uint8_t message[] = "Hello from VEX!";
// Save the message into "Text.txt"
Brain.SDcard.savefile("Text.txt", message, sizeof(message));
// Get the size of the file
int fileSize = Brain.SDcard.size("Text.txt");
// Make a buffer to hold the file data
uint8_t buffer[fileSize];
// Load the file from the SD card into the buffer
Brain.SDcard.loadfile("Text.txt", buffer, sizeof(buffer));
// Display the file contents on the screen
Brain.Screen.print("%s", buffer);
} else {
Brain.Screen.print("Insert SD card");
}
appendfile#
Cuireann sé sonraí ó mhaolán arna sholáthar ag an úsáideoir le deireadh comhaid atá ann cheana féin ar chárta SD an IQ (2ú glúin) Brain.
Available Functionsint32_t appendfile(
const char* name,
uint8_t* buffer,
int32_t len );
Paraiméadar |
Cineál |
Cur síos |
|---|---|---|
|
|
Ainm an chomhaid ar a gcuirfear sonraí leis ar an gcárta SD. Caithfidh síneadh an chomhaid a bheith san áireamh in ainm an chomhaid. |
|
|
Pointeoir chuig maolán cuimhne ina bhfuil na sonraí atá le cur leis an gcomhad. |
|
|
Líon na mbeart le cur ón maolán leis an gcomhad. |
Tugann sé int32_t a léiríonn líon na mbeart a cuireadh leis an gcomhad go rathúil:
Léiríonn luach dearfach cé mhéad beart a cuireadh leis.
Léiríonn
0nár cuireadh aon sonraí leis.
Más mó ná
lenan comhad, ní léitear ach na chéadlenbeart.Caithfidh an comhad a bheith ann cheana féin ar an gcárta SD; ní chruthaíonn an fheidhm seo comhad nua.
Ní leithdháileann an fheidhm seo cuimhne; ní mór don úsáideoir an maolán a chruthú agus a bhainistiú.
Cuireann an fheidhm beartáin amha i gceangal agus ní chuireann sí críochnóir nialasach i gceangal.
// Create a message to save to a new file
uint8_t message[] = "Hello";
// Save only the characters, not the null terminator
Brain.SDcard.savefile("Message.txt", message, sizeof(message) - 1);
// Load the file
int fileSize = Brain.SDcard.size("Message.txt");
uint8_t buffer[fileSize + 1];
Brain.SDcard.loadfile("Message.txt", buffer, fileSize);
// Add null terminator so it can be printed safely
buffer[fileSize] = 0;
Brain.Screen.print("%s\n", buffer);
// Create more text to append to the same file
uint8_t moreText[] = " World!";
// Append only the characters, not the null terminator
Brain.SDcard.appendfile("Message.txt", moreText, sizeof(moreText) - 1);
// Load the updated file
fileSize = Brain.SDcard.size("Message.txt");
uint8_t buffer2[fileSize + 1];
Brain.SDcard.loadfile("Message.txt", buffer2, fileSize);
// Add null terminator
buffer2[fileSize] = 0;
Brain.Screen.newLine();
Brain.Screen.print("%s", buffer2);
isInserted#
Tugann sé seo ar ais an bhfuil cárta SD curtha isteach san IQ (2ú glúin) Brain faoi láthair.
Available Functionsbool isInserted();
Ní ghlacann an fheidhm seo le haon pharaiméadair.
Return ValuesTugann sé seo luach Booleánach ar ais a léiríonn an bhfuil cárta SD curtha isteach:
true— Tá cárta SD curtha isteach san IQ (2ú glúin) Brain.false— Níl cárta SD curtha isteach.
Ní dhéanann an fheidhm seo ach seiceáil an bhfuil cárta SD ann; ní dheimhníonn sí go bhfuil an cárta formáidithe nó inléite.
// Check for SD card and show a file's text
if (Brain.SDcard.isInserted()) {
// Create a message to save to the SD card
uint8_t message[] = "Hello from VEX!";
// Save the message into "Text.txt"
Brain.SDcard.savefile("Text.txt", message, sizeof(message));
// Get the size of the file
int fileSize = Brain.SDcard.size("Text.txt");
// Make a buffer to hold the file data
uint8_t buffer[fileSize];
// Load the file from the SD card into the buffer
Brain.SDcard.loadfile("Text.txt", buffer, sizeof(buffer));
// Display the file contents on the screen
Brain.Screen.print("%s", buffer);
} else {
Brain.Screen.print("Insert SD card");
}
size#
Tugann sé seo méid comhaid atá stóráilte ar chárta SD an IQ (2ú glúin) Brain ar ais.
Available Functionsint32_t size(
const char* name );
Paraiméadar |
Cineál |
Cur síos |
|---|---|---|
|
|
Ainm an chomhaid ar an gcárta SD. Caithfidh síneadh an chomhaid a bheith san áireamh in ainm an chomhaid. |
Tugann sé int32_t a léiríonn méid an chomhaid i mbéiteanna:
Léiríonn luach dearfach méid an chomhaid i mbéiteanna.
Léiríonn
0comhad folamh nó nach bhféadfaí an comhad a aimsiú.
Is féidir an méid a chuirtear ar ais a úsáid chun maolán a leithdháileadh sula nglaotar ar
loadfile.
// Check for SD card and show a file's text
if (Brain.SDcard.isInserted()) {
// Create a message to save to the SD card
uint8_t message[] = "Hello from VEX!";
// Save the message into "Text.txt"
Brain.SDcard.savefile("Text.txt", message, sizeof(message));
// Get the size of the file
int fileSize = Brain.SDcard.size("Text.txt");
// Make a buffer to hold the file data
uint8_t buffer[fileSize];
// Load the file from the SD card into the buffer
Brain.SDcard.loadfile("Text.txt", buffer, sizeof(buffer));
// Display the file contents on the screen
Brain.Screen.print("%s", buffer);
} else {
Brain.Screen.print("Insert SD card");
}
exists#
Tugann sé seo ar ais an bhfuil comhad leis an ainm sonraithe ar chárta SD an IQ (2ú glúin) Brain.
Available Functionsbool exists(
const char* name );
Paraiméadar |
Cineál |
Cur síos |
|---|---|---|
|
|
Ainm an chomhaid atá le seiceáil ar an gcárta SD. Caithfidh síneadh an chomhaid a bheith san áireamh in ainm an chomhaid. |
Tugann sé seo luach Boolean ar ais a léiríonn an bhfuil an comhad ann:
true— Tá comhad leis an ainm sonraithe ar an gcárta SD.false— Níl aon chomhad leis an ainm sonraithe ann.
// Add more text and display file size
if (Brain.SDcard.exists("Text.txt")) {
// Get the size of the file
int fileSize = Brain.SDcard.size("Text.txt");
// Make a buffer to hold the file data
uint8_t buffer[fileSize];
// Load the file from the SD card into the buffer
Brain.SDcard.loadfile("Text.txt", buffer, sizeof(buffer));
// Display the file contents on the screen
Brain.Screen.print("%s", buffer);
}