Satura rādītājs:
- Piegādes
- 1. darbība: patskaņu spēles izstrāde ar Arduino
- 2. darbība:
- 3. darbība:
- 4. solis: projekta ideja
- 5. darbība:
- 6. darbība. Spēles programmēšanas loģikas veidošana
- 7. darbība:
- 8. darbība
- 9. darbība. Funkcija Void Setup ()
- 10. darbība. Galvenās funkcijas tukšuma cilpa ()
- 11. darbība:
- 12. solis. Secinājums
- 13. solis: apstiprināšana
Video: Patskaņu spēle ar Arduino un YX5300 MP3 moduli Catalex: 13 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:53
Vai jūs varat izlasīt šo jautājumu? Tas ir dīvaini! Es tīši uzdevu šo jautājumu. Ja jūs varat izlasīt šo tekstu, tas ir tāpēc, ka jūs zināt visu alfabētu un, protams, uzzinājāt par visiem patskaņiem.
Patskaņi ir visos vārdos. No katra nav iespējams aizbēgt. Tagad ļaujiet man uzdot jums jautājumu. Vai jūsu bērnības mācīšanās bija jautra un saistīta ar tehnoloģiskiem resursiem?
Esmu pārliecināts, ka mācību resursu bija maz, un jūs izmantojāt tradicionālās metodes, lai iemācītos patskaņus un alfabētu.
Galu galā, vai ir iespējams izmantot dažus tehnoloģiskos resursus, lai iemācītos patskaņus?
Šajā rakstā es jums iemācīšu, kā spēli iemācīt saviem studentiem un bērniem patskaņus.
Es iemācīšu jums izveidot sistēmu ar balsi, kurā jūsu bērns/skolēns dzirdēs burta skaņu un viņam jānospiež poga, lai norādītu pareizo burtu.
Tādējādi viņi mācīsies spēlējoties un vienmēr būs motivēti mācīties.
Tagad es jums parādīšu soli pa solim procesu, lai jūs varētu izveidot savu spēli un iemācīt bērniem patskaņus.
Piegādes
JLCPCB iespiedshēmas plate
Arduino Uno
Spiedpogas slēdzis
10kR rezistors
Vīriešu galvene 2, 54 mm 1x7
1. darbība: patskaņu spēles izstrāde ar Arduino
Spēles sirds ir patskaņu JLCPCB iespiedshēmas plate. Jūs varat piekļūt šai saitei un lejupielādēt projekta failus. Tam ir 5 pogas. Jūs izmantosit katru pogu, lai attēlotu patskaņu un savienotu to ar savu Arduino.
Drukātās shēmas plates ir parādītas 1. attēlā.
2. darbība:
Izmantojot šo PCB projektu, varat to savienot ar Arduino un izveidot savu spēli. Tālāk es jums piedāvāšu elektronisku shēmu, lai jūs varētu samontēt vai izveidot projektu savā protoboardā.
3. darbība:
No šīs shēmas mēs izveidojām elektroniskās plates izkārtojumu. Tas ir parādīts 2. attēlā, un jūs varat lejupielādēt failus un izveidot savu projektu.
Izvēlieties 5 tapas no Arduino un savienojiet dēlīšus uz tāfeles ar Arduino. Vai arī citādi varat apkopot šādu elektronisko shēmu.
4. solis: projekta ideja
Es iemācīšu, kā salikt MP3 skaņas sistēmu ar Arduino. Šī sistēma būs atbildīga par balss, kas runā vēstuli, reproducēšanu. Katra burta skaņa tiks uzzīmēta, izmantojot vērtību no 1 līdz 5, kur 1 apzīmē A un 5 apzīmē U.
Tādējādi, dzirdot skaņu, bērnam jāskatās uz tastatūru, jāatzīst patskaņa pareizrakstība un jānospiež pareizais taustiņš.
Ja tas neizdodas, sistēma 3 reizes mirgos sarkanajā gaismas diodē. Pretējā gadījumā sistēma uz 5 sekundēm aktivizēs skaņas signālu un uzzīmēs jaunu patskaņu.
Lai to izdarītu, jums ir jāsamontē šāda ķēde.
Šajā ķēdē jūs savienosit MP3 moduli un patskaņu dēli Arduino. Bluetooth modulis tika izmantots, lai attēlotu Catalex MP3 moduli.
Arduino būs atbildīgs par 5 ciparu kārtošanu un pēc tam komandas nosūtīšanu, lai aktivizētu zīmēto patskaņu
5. darbība:
Pēc tam mēs gaidīsim, līdz bērns dzirdēs un nospiedīs pogu, kā parādīts attēlā iepriekš.
Katra augšējā poga apzīmē alfabēta patskaņu. Tālāk es jums parādīšu, kā jūs veidosit šī projekta programmēšanas loģiku.
6. darbība. Spēles programmēšanas loģikas veidošana
Patskaņu spēles sistēma ir balstīta uz YX5300 moduļa darbību. Šim modulim ir dažas funkcijas, tomēr mēs koncentrēsimies uz spēles darba struktūras prezentāciju, izmantojot YX5300 moduļa galvenās funkcijas.
Zemāk es sniedzu jums visu projekta programmēšanas loģiku.
7. darbība:
Turpmāk es soli pa solim paskaidrošu, kā veidot šīs jautrās spēles bērniem loģiku.
#iekļaut
#define ARDUINO_RX 5 // vajadzētu izveidot savienojumu ar sērijveida MP3 atskaņotāja moduļa TX #define ARDUINO_TX 6 // izveidot savienojumu ar moduļa Software RC mp3 (ARDUINO_RX, ARDUINO_TX); static int8_t Send_buf [8] = {0}; // Buferis komandu sūtīšanai. // LOKĀLI LABĀK statisks uint8_t ansbuf [10] = {0}; // Buferis atbildēm. // LOKĀK LABĀK String mp3Answer; // Atbilde no MP3. Stīgu atbilde (anulēts); String sbyte2hex (uint8_t b); / ************ Komandu baits *************************/ #define CMD_NEXT_SONG 0X01 // Play next dziesma. #define CMD_PREV_SONG 0X02 // Atskaņot iepriekšējo dziesmu. #define CMD_PLAY_W_INDEX 0X03 #define CMD_VOLUME_UP 0X04 #define CMD_VOLUME_DOWN 0X05 #define CMD_SET_VOLUME 0X06 #define CMD_SNG_CYCL_PLAY 0X08 // Atskaņošana vienā ciklā. #definēt CMD_SEL_DEV 0X09 #define CMD_SLEEP_MODE 0X0A #define CMD_WAKE_UP 0X0B #definēt CMD_RESET 0X0C #define CMD_PLAY 0X0D #define CMD_PAUSE 0X0E #define CMD_PLAY_FOLD0FILE_FILE #define CMD_FOLDER_CYCLE 0X17 #define CMD_SHUFFLE_PLAY 0x18 // #define CMD_SET_SNGL_CYCL 0X19 // Iestatīt vienu ciklu. #define CMD_SET_DAC 0X1A #define DAC_ON 0x00 #define DAC_OFF 0x01 #define CMD_PLAY_W_VOL 0X22 #define CMD_PLAYING_N 0x4C #define CMD_QUERY_STATUS 0x42 #define CMD_QUERY_VOLUME 0x43 #define CMD_QUERY_FLDR_TRACKS 0x4e #define CMD_QUERY_TOT_TRACKS 0x48 #define CMD_QUERY_FLDR_COUNT 0x4f / ********* *** Opitons ************************** / #define DEV_TF 0X02 / ************** ************************************************* *****/ int numero; baitu estado; baitu skaņas signāls = 2; baitu tapa = 0; baits KārtotNumurs = 0; bool poga = 0; void setup () {Serial.begin (9600); mp3.sākas (9600); kavēšanās (500); for (pin = 8; pin 13) {pin = 8; } Serial.println ("Varrendo …"); Serial.println (pin); // kavēšanās (1000); } while (poga! = 1); Serial.println ("Saiu …"); if (poga == 1 && (pin-1)! = KārtotNumurs) {sendCommand (0x03, 0, 6); kavēšanās (3000); } ja (poga == 1 && (pin-1) == SortNumber) {sendCommand (0x03, 0, 7); kavēšanās (3000); } // Pārbaudiet atbildi. ja (mp3.available ()) {Serial.println (decodeMP3Answer ()); } kavēšanās (100); //Serial.println("Tocando musica … "); } /*********************************************** ******************************** / / Funkcija sendMP3Command: meklējiet komandu "c" un nosūtiet to uz MP3 * / /*Parametrs: c. MP3 komandas kods, “h”, lai saņemtu palīdzību. *// *Atgriezties: void */ void sendMP3Command (char c) {switch (c) {case '?': Case 'h': Serial.println ("HELP"); Serial.println ("p = Atskaņot"); Serial.println ("P = Pauze"); Serial.println ("> = Nākamais"); Serial.println ("': Serial.println (" Nākamais "); sendCommand (CMD_NEXT_SONG); sendCommand (CMD_PLAYING_N); // lūgt atskaņojamā faila numuru; futrālis' Atmiņas karte ievietota. '; Break; case 0x3D: decodedMP3Answer + = " -> Pabeigts atskaņošanas numurs" + String (ansbuf [6], DEC); // sendCommand (CMD_NEXT_SONG); // sendCommand (CMD_PLAYING_N); // lūgt atskaņojamā faila skaitu; gadījums 0x40: decodedMP3Answer += " -> Kļūda"; break; case 0x41: decodedMP3Answer += " -> Dati atgūti pareizi."; break; case 0x42: decodedMP3Answer += " -> Statusa atskaņošana:" +String (ansbuf [6], DEC); break; case 0x48: decodedMP3Answer + = " -> Failu skaits:" + String (ansbuf [6], DEC); break; case 0x4C: decodedMP3Answer + = " -> Atskaņošana:" + String (ansbuf [6], DEC); break; case 0x4E: decodedMP3Answer + = " -> Mapju failu skaits:" + String (ansbuf [6], DEC); break; case 0x4F: decodedMP3Answer + = " -> Mapju skaits:" + String (ansbuf [6], DEC); break;} return dekodētsMP3Answer;} /********************************** ************ ********************************* / /*Funkcija: Sūtīt komandu uz MP3* / /*Parametrs: baits komanda *// *Parametrs: baits dat1 parametrs komandai *// *Parametrs: baits dat2 parametrs komandai */ void sendCommand (baita komanda) {sendCommand (komanda, 0, 0); } void sendCommand (baitu komanda, baits dat1, baits dat2) {kavēšanās (20); Sūtīt_buf [0] = 0x7E; // Sūtīt_buf [1] = 0xFF; // Sūtīt_buf [2] = 0x06; // Len Send_buf [3] = komanda; // Sūtīt_buf [4] = 0x01; // 0x00 NĒ, 0x01 atgriezeniskā saite Send_buf [5] = dat1; // datah Send_buf [6] = dat2; // datal Send_buf [7] = 0xEF; // Serial.print ("Sūta:"); par (uint8_t i = 0; i <8; i ++) {mp3.write (Send_buf ); Serial.print (sbyte2hex (Send_buf )); } Sērijas.println (); } /*********************************************** ******************************* / /*Funkcija: sbyte2hex. Atgriež baitu datus HEX formātā. * / /*Parametrs:- uint8_t b. Baiti, lai pārvērstu par HEX. *// *Atgriešanās: String */ String sbyte2hex (uint8_t b) {String shex; šeši = "0X"; ja (b <16) šeši += "0"; šeši += virkne (b, HEX); šeši += ""; atgriešanās šeksis; } /*********************************************** ******************************* / /*Funkcija: shex2int. Atgriež int no HEX virknes. * / /*Parametrs: s. char *s, lai pārvērstu par HEX. * / /*Parametrs: n. char *s garums. *// *Atgriezties: int */ int shex2int (char *s, int n) {int r = 0; par (int i = 0; i = '0' && s = 'A' && s <= 'F') {r *= 16; r + = (s - 'A') + 10; }} atgriezties r; } /*********************************************** ******************************* / /*Funkcija: atbilde. Atgriež virknes atbildi no mp3 UART moduļa. * / /*Parametrs:- uint8_t b. spēkā neesošs. * / /*Atgriešanās: virkne. Ja atbilde ir labi formulēta, atbilde. */ Stīgu atbilde (tukšs) {uint8_t i = 0; String mp3answer = ""; // Iegūstiet tikai 10 baitus, kamēr (mp3.available () && (i <10)) {uint8_t b = mp3.read (); ansbuf = b; i ++; mp3atbilde += sbyte2hex (b); } // ja atbildes formāts ir pareizs. ja ((ansbuf [0] == 0x7E) && (ansbuf [9] == 0xEF)) {atgriezties mp3answer; } atgriezt "???:" + mp3answer; }
Pirmkārt, mēs definējam visus programmas mainīgos un YX5300 moduļa piekļuves reģistra adreses.
#iekļaut
#define ARDUINO_RX 5 // vajadzētu izveidot savienojumu ar sērijveida MP3 atskaņotāja moduļa TX #define ARDUINO_TX 6 // izveidot savienojumu ar moduļa Software RC mp3 (ARDUINO_RX, ARDUINO_TX); static int8_t Send_buf [8] = {0}; // Buferis komandu nosūtīšanai. // LOKĀLI LABĀK statisks uint8_t ansbuf [10] = {0}; // Buferis atbildēm. // LOKĀK LABĀK String mp3Answer; // Atbilde no MP3. Stīgu atbilde (anulēts); String sbyte2hex (uint8_t b); / ************ Komandu baits *************************/ #define CMD_NEXT_SONG 0X01 // Play next dziesma. #define CMD_PREV_SONG 0X02 // Atskaņot iepriekšējo dziesmu. #define CMD_PLAY_W_INDEX 0X03 #define CMD_VOLUME_UP 0X04 #define CMD_VOLUME_DOWN 0X05 #define CMD_SET_VOLUME 0X06 #define CMD_SNG_CYCL_PLAY 0X08 // Atskaņošana vienā ciklā. #definēt CMD_SEL_DEV 0X09 #define CMD_SLEEP_MODE 0X0A #definēt CMD_WAKE_UP 0X0B #definēt CMD_RESET 0X0C #define CMD_PLAY 0X0D #define CMD_PAUSE 0X0E #define CMD_PLAY_FOLD0FILE_FILE #define CMD_FOLDER_CYCLE 0X17 #define CMD_SHUFFLE_PLAY 0x18 // #define CMD_SET_SNGL_CYCL 0X19 // Iestatīt vienu ciklu. #define CMD_SET_DAC 0X1A #define DAC_ON 0x00 #define DAC_OFF 0x01 #define CMD_PLAY_W_VOL 0X22 #define CMD_PLAYING_N 0x4C #define CMD_QUERY_STATUS 0x42 #define CMD_QUERY_VOLUME 0x43 #define CMD_QUERY_FLDR_TRACKS 0x4e #define CMD_QUERY_TOT_TRACKS 0x48 #define CMD_QUERY_FLDR_COUNT 0x4f / ********* *** Opitons ************************** / #define DEV_TF 0X02 / ************** ************************************************* *****/ int numero; baitu estado; baitu skaņas signāls = 2; baitu tapa = 0; baits KārtotNumurs = 0; bool poga = 0;
8. darbība
Šīs reģistra adreses tiek izmantotas, lai konfigurētu moduļa darbību. Piemēram, skatiet šo reģistrācijas adresi zemāk.
#define CMD_PLAY_W_INDEX 0X03
Adrese 0x03 ir definēta ar nosaukumu CMD_PLAY_W_INDEX. To izmanto, lai aktivizētu dziesmu no tās numura, tas ir, jūs ievadāt skaņas numuru un tā tiks atskaņota.
Tieši ar šīm vērtībām mēs tās izmantosim un konfigurēsim mūsu projekta darbību.
Kad būsit definējis dažādas adreses, kuras tiks izmantotas, mēs ievadīsim iestatīšanas funkciju un konfigurēsim tapas un seriālo komunikāciju mūsu projektam.
9. darbība. Funkcija Void Setup ()
Tālāk skatiet tukšuma iestatīšanas funkciju. Es izdarīju visus pogu tapu iestatījumus, MP3 moduļa seriālo komunikāciju un kartes moduļa inicializēšanu MP3.
anulēts iestatījums ()
{Sērijas sākums (9600); mp3.sākas (9600); kavēšanās (500); for (pin = 8; pin <13; pin ++) {pinMode (pin, INPUT); } sendCommand (CMD_SEL_DEV, 0, DEV_TF); kavēšanās (500); }
Es sāku sērijveida saziņu, lai drukātu datus uz datora sērijas, un pēc tam mēs sākām sērijveida saziņu caur mp3 objektu.
Sērijas sākums (9600);
mp3.sākas (9600); kavēšanās (500);
MP3 moduli kontrolē, izmantojot komandas, kuras saņem Arduino sērijas. Šajā procesā mēs izmantojām SoftwareSerial bibliotēku un emulējām sēriju uz Arduino digitālajām tapām.
Tādējādi jūs varēsit izmantot Arduino, lai kontrolētu MP3 moduli, izmantojot tam nosūtītās komandas.
Turklāt mēs konfigurējām digitālās tapas un inicializējām MP3 kartes moduli
for (pin = 8; pin <13; pin ++) {pinMode (pin, INPUT); } sendCommand (CMD_SEL_DEV, 0, DEV_TF); kavēšanās (500);
Pēc konfigurācijas veikšanas mums jādodas uz tukšās cilpas funkcijas galveno loģiku.
10. darbība. Galvenās funkcijas tukšuma cilpa ()
Kods ir ļoti vienkāršs, un visa loģiskā struktūra ir parādīta zemāk. Turpmāk es jums izskaidrošu visas galvenās funkcijas loģiku.
tukša cilpa ()
{pin = 8; randomSeed (analogRead (A0)); numero = nejaušs (8, 12); KārtotNumurs = numurs; numero = numero - 7; Serial.println (numero); sendCommand (0x03, 0, numero); kavēšanās (1000); do {poga = digitalRead (pin); Serial.println (poga); pin ++; ja (pin> 13) {pin = 8; } Serial.println ("Varrendo …"); Serial.println (pin); // kavēšanās (1000); } while (poga! = 1); Serial.println ("Saiu …"); if (poga == 1 && (pin-1)! = KārtotNumurs) {sendCommand (0x03, 0, 6); kavēšanās (3000); } ja (poga == 1 && (pin-1) == SortNumber) {sendCommand (0x03, 0, 7); kavēšanās (3000); } // Pārbaudiet atbildi. ja (mp3.available ()) {Serial.println (decodeMP3Answer ()); } kavēšanās (100); //Serial.println("Tocando musica … "); }
Katrā cilpas funkciju cikla sākumā mēs ģenerēsim jaunu vērtību no 8 līdz 12, lai radītu patskaņa skaņu. Vērtība no 8 līdz 12 attiecas uz patskaņa digitālo tapu.
Tālāk ir parādīts kods nejaušas vērtības ģenerēšanai.
tapa = 8;
randomSeed (analogRead (A0)); numero = nejaušs (8, 12); KārtotNumurs = numurs;
Turklāt no summas starp 8 un 12. mēs atņemam 7. Tas ļaus mums norādīt uz atmiņas kartē ierakstīto dziesmu pozīcijām no 1 līdz 5.
numero = numero - 7;
Pēc tam es reproducēju patskaņa skaņu, kas novilkta uz zemāk esošās līnijas.
sendCommand (0x03, 0, numero);
kavēšanās (1000);
Tagad ir pienācis svarīgais laiks: brīdis, kad mēs lasīsim bērna nospiesto pogu. Koda daļa ir parādīta zemāk.
darīt
{poga = digitalRead (pin); Serial.println (poga); pin ++; ja (pin> 13) {pin = 8; } Serial.println ("Varrendo …"); Serial.println (pin); // kavēšanās (1000); } while (poga! = 1);
Šī cilpa tiks izpildīta, līdz lietotājs nospiež pogas. Cilpa ļauj skenēt 5 digitālās tapas un brīdī, kad bērns nospiež vienu no pogām, tas iznāks no cilpas un pārbaudīs, vai bērns ir pareizi reaģējis.
Jūs veiksit verifikāciju, izmantojot zemāk esošo kodu.
ja (poga == 1 && (pin-1)! = KārtotNumurs)
{sendCommand (0x03, 0, 6); kavēšanās (3000); } ja (poga == 1 && (pin-1) == SortNumber) {sendCommand (0x03, 0, 7); kavēšanās (3000); }
Pirmais nosacījums tiks izpildīts, kad lietotājs pieļaus kļūdu, jo tika nospiesta poga un tapas aktivizētā vērtība atšķīrās no izvilktās tapas (SortNumber).
Šajā brīdī jums jāizpilda zemāk esošā komanda.
sendCommand (0x03, 0, 6);
kavēšanās (3000);
Šī komanda tiek izmantota, lai iedarbinātu nepareizu atbildes signālu. Visbeidzot, mums ir otrais nosacījums, kas tiks izmantots, lai pārbaudītu, vai bērnam ir taisnība.
ja (poga == 1 && (pin-1) == SortNumber)
{sendCommand (0x03, 0, 7); kavēšanās (3000); }
11. darbība:
Ja tika nospiesta poga un nospiesta digitālā tapa, tā pati zīmētā tapa, sistēma atskanēs pareizās atbildes skaņa.
Kā es jums paskaidroju, šis kods ir ļoti vienkāršs un palīdzēs jebkuram bērnam attīstīt savas zināšanas par patskaņiem, izmantojot spēli ar Arduino.
Augšējā attēlā skaņu kaste izpilda dziesmu, kas saglabāta MP3 moduļa YX5300 SD kartē.
12. solis. Secinājums
Klases izglītība ir pastāvīgi jāmaina, un Arduino var būt lielisks sabiedrotais jautru uzdevumu veidošanā.
Izmantojot šo projektu, bija iespējams izstrādāt vienkāršu aktivitāti, kas var attīstīt bērnu prasmes, zinot katra patskani skaņu un pareizrakstību.
Atšķirībā no tradicionālajām mācību metodēm, bērni mācīsies, izklaidējoties klasē, izmantojot spēles un elektroniku.
13. solis: apstiprināšana
Šis projekts tika izstrādāts, pateicoties uzņēmuma JLCPCB atbalstam un iedrošinājumam. Viņi veicināja izglītību un aicināja mūs attīstīt patskaņu spēli bērnu mācīšanai klasē.
Ja vēlaties iegādāties patskaņu spēles elektroniskās plāksnes, varat piekļūt šai saitei un iegādāties 10 vienības par 2 ASV dolāriem vietnē JLCPCB.
Ieteicams:
DIY 37 Leds Arduino ruletes spēle: 3 soļi (ar attēliem)
DIY 37 Leds Arduino Roulette Spēle: Rulete ir kazino spēle, kas nosaukta pēc franču vārda, kas nozīmē mazu riteni
Kā izveidot MP3 atskaņotāju ar LCD, izmantojot Arduino un DFPlayer Mini MP3 atskaņotāja moduli: 6 soļi
Kā izveidot MP3 atskaņotāju ar LCD, izmantojot Arduino un DFPlayer Mini MP3 atskaņotāja moduli: Šodien mēs izgatavosim MP3 atskaņotāju ar LCD, izmantojot Arduino un DFPlayer mini MP3 atskaņotāja moduli. Projekts var nolasīt MP3 failus SD kartē un var apturēt un atskaņojiet to pašu, ko ierīce pirms 10 gadiem. Un arī tajā ir jautra iepriekšējā dziesma un nākamā dziesma
Kā lietot DFMini Player MP3 moduli ar Arduino: 4 soļi
Kā lietot DFMini Player MP3 moduli ar Arduino: Lai pievienotu kaut kādu funkcionalitāti, vairākiem projektiem ir nepieciešama skaņas reproducēšana. Starp šiem projektiem mēs uzsveram: pieejamību vājredzīgajiem, MP3 mūzikas atskaņotājus un, piemēram, robotu balss skaņu izpildi. Visos šajos
Simona spēle - jautra spēle!: 5 soļi
Simona spēle - jautra spēle !: Atsauce: šeitPēc garas nedēļas nogales jums patiešām ir jācenšas izpildīt visus uzdevumus un darbu, par kuru esat atbildīgs. Mums ir pienācis laiks trenēt smadzenes, vai ne? Bez šīm garlaicīgajām un bezjēdzīgajām spēlēm ir arī spēle ar nosaukumu Simona spēle
Kā izveidot fāzes kārbu ar MP3 balss moduli: 4 soļi
Kā izveidot fāzes kārbu ar MP3 balss moduli: man ir daži kristāla epoksīda sveķi, kas atgādināti no mana pēdējā DIY projekta, un es nevēlos to izšķērdēt. Pamatojoties uz taupības principiem, es nolēmu izmantot epoksīdu, lai izgatavotu maz lietas. Dažreiz, kad esat nomākts, jūs vienkārši nevēlaties runāt. ES tikai