Hirdetés
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- AMD Navi Radeon™ RX 9xxx sorozat
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- Nvidia GPU-k jövője - amit tudni vélünk
- Azonnali fotós kérdések órája
- Fejhallgató erősítő és DAC topik
- iPad topik
- Amlogic S905, S912 processzoros készülékek
- Melyik tápegységet vegyem?
Új hozzászólás Aktív témák
-
daninet
veterán
válasz
DrojDtroll #4417 üzenetére
Igen, meg az első homingnál lehetne az időt mérni, mert ugye mindig máskor kapcsolom ki. Vannak elméleti ötleteim. Ezt egy arduinonál még lehet megoldanám, csak itt bőven meghaladja a képességeimet.
Azt is elfogadom válasznak, ha nem lehet ennyivel megoldani, valamiért azt várom picit lesz valaminegysoros akármi amit oda berakhatok és menni fog. De azt is elfogadom válasznak ha nincs ilyen. -
daninet
veterán
válasz
dabadab #4415 üzenetére
Elvileg C++, igen (70%-ban, 30-ban C). De javíts ki ha nem, átrakom másik topikba. Marlin firmware-t akarom módosítani. Volt már itt téma, akkor te segítettél, de az igényeim alacsonyabbak voltak
, csak újra akartam indítani a sorozatot, működött is.
Szóval alant a kódban a random(2,10); függvényt használtam, de mint írtátok, ez ugyanazt a sorozatot generálja mindig, nekem ez nem jó.
Hogy értsétek, erről a homokba rajzolós asztalról van szó. SD kártyán vannak a minták, indításnál az auto0.g fájl tartalmazza a homing sequence-t, a többi auto1.g - auto9.g a mintákat amiket rajzol. Mivel ezek órákig mennek nem poén, ha mindig bekapcsolom és ugyanazzal indul. Jó lenne, ha random választana egy számot 2-10ig (függvényben alul van egy x-1) és akkor valamelyik mintát elkezdené rajzolni.
Kontextusnak annyi, hogy elkezdi beolvasni az SD kártya tartalmát a program, és ha nincs ott egy fájl amit áramkimaradás esetén akkor kezdi a kód szerint az auto0.g-tmod: elég rossz itt a kódformázás, itt egy pastebin link: https://pastebin.com/zFwjc0y9
#if DISABLED(NO_SD_AUTOSTART)
/**
* Run all the auto#.g files. Called:
* - On boot after successful card init.
* - From the LCD command to Run Auto Files
*/
void CardReader::autofile_begin() {
autofile_index = 1;
(void)autofile_check();
}
/**
* Run the next auto#.g file. Called:
* - On boot after successful card init
* - After finishing the previous auto#.g file
* - From the LCD command to begin the auto#.g files
*
* Return 'true' if an auto file was started
*/
bool CardReader::autofile_check() {
if (!autofile_index) return false;
if (!isMounted())
mount();
else if (ENABLED(SDCARD_EEPROM_EMULATION))
settings.first_load();
// Don't run auto#.g when a PLR file exists
if (isMounted() && TERN1(POWER_LOSS_RECOVERY, !recovery.valid())) {
char autoname[10];
sprintf_P(autoname, PSTR("/auto%c.g"), '0' + autofile_index - 1);
if (fileExists(autoname)) {
cdroot();
openAndPrintFile(autoname);
// Generate a random number between 2 and 10
int randomNumber = random(2,10);
autofile_index = randomNumber;
//
return true;
}
}
autofile_cancel();
return false;
}
#endif
-
daninet
veterán
Sziasztok!
Teljesen noob kérdés:
Random int számot kellene generálnom egy mikrokontrolleren, de nincs órája és limitált a memória. Szóval kóddal kellene megoldalni anélkül, hogy behívok bármilyen library-t.
Végignéztem a keresőben egy csomó találatot de mindenhol az órával variálnak. Nekem ugyanez kóddal kell, valami memória hash-elős akármilyen trükkel.
Hogyan oldható ez meg? -
daninet
veterán
válasz
jattila48 #4353 üzenetére
igen
dabadab: igenmindenkinek köszi, működik.
Egyébként ha valaki érdekel egy ilyen homokba rajzasztal playlistjét indítja majd a kód, a 9 fájl darabja 30-60perc egymás után rajzolódik a homokba. -
daninet
veterán
Sziasztok!
Valaki validálná nekem, hogy az alábbi kód helyes? Azt akarom, ha ez a loop eléri az auto9.g sorszámot ugorjon vissza nullára (vagyis a számlálóban 1-re amiből kivonunk egyet).
Ezek a fájlok majdnem 6 óráig futnak ezért szeretném tudni a hosszú teszt előtt, hogy amit belekontárkodtam működikvoid CardReader::autofile_begin() {
autofile_index = 1;
(void)autofile_check();
}
bool CardReader::autofile_check() {
if (!autofile_index) return false;
if (!isMounted())
mount();
else if (ENABLED(SDCARD_EEPROM_EMULATION))
settings.first_load();
// Don't run auto#.g when a PLR file exists
if (isMounted() && TERN1(POWER_LOSS_RECOVERY, !recovery.valid())) {
char autoname[10];
sprintf_P(autoname, PSTR("/auto%c.g"), '0' + autofile_index - 1);
if (fileExists(autoname)) {
cdroot();
openAndPrintFile(autoname);
if (autofile_index = 10)
autofile_index = 1;
else if (autofile_index < 10)
autofile_index++;
return true;
}
}
autofile_cancel();
return false;
}
-
daninet
veterán
Hát, köszönöm a sok hozzászólást, fogalmam sincs mi a jó vélemény
Tanulok tovább
-
daninet
veterán
nos kész a dobókocka játék, kb 2 hetet tanultam egy mobilapplikációból a c++ -t ezt hoztam ki. Azóta utánanéztem pár dolognak, de ezt újra már nem kezdem.
-eleinte kicsit inkonzisztensen használtam a printf()-et, annak valamiért jobban tetszik a syntax-ja, de abbahagytam
-goto-val ugrálok előre hátra a kódban (vissza a menühöz pl) azóta olvastam ez nemjó, értem miért bár nem teljesen tudom mi válthatja ki
-nem gyűjtöttem semmi szemetet
-nem használtam semmiféle class-t és objectet, azt még nem nagyon értem, illetve kellene egy komplexebb feladat ahol értelmet nyer
-ide illeszd be a kommentjeid -
daninet
veterán
válasz
PandaMonium #3934 üzenetére
Fogalmam sincs mi tortenik, szoval a kodban az elso ilyen megallast nem ertelmezi legyen az barhol. Szoval beraktam az elejere egyet, atugorja, utana jo.
Ha nem megy esszel oldd meg erovel
-
daninet
veterán
Azt mondjátok már meg ebben a loop-ban miért nem áll meg gombnyomáshoz az első körnél, csak a másodiknál.
for (int i = 0; i < playerz; i++)
{
for (int x = 0; x < 2; x++)
{
cout << names.at(i) << " " << x + 1 << ". dobasa!";
do
{
cout << "\nGuritashoz nyomj Entert...";
} while (cin.get() != '\n');
srand(time(0));
cout << "\nEredmeny: " << gurit();
cout << "\n\n";
}
} -
daninet
veterán
Sziasztok!
kezdő téma, klasszik iskolapéldát akarom megoldani, dobókockás játék. Kb minden kész már, csak az elején statikus még,
először beadom a játékosok számát, majd be kellene irni a neveket, de c++ nem támogat int értéket array-nek, csak konstansot. Próbáltam keresni, de string-re nem láttam semmit, nyilván nem tudom mit keressekannyi kellene legyen az array mérete ahány a játékosok száma
Új hozzászólás Aktív témák
Hirdetés
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- www.iking.hu - Eladó Samsung S23 Ultra Phantom Black Használt, Karcmentes
- Csere-Beszámítás! Számítógép játékra! I7 6700 / GTX 1070 8GB / 16GB DDR4 / 500GB SSD
- Lenovo IdeaPad Gaming 3 - 15,6"FHD IPS - i5-11320H - 16GB - 512GB - GTX 1650 - Win11 - 2év garancia
- HATALMAS AKCIÓK! GARANCIA, SZÁMLA - Windows 10 11, Office 2016 2019 2021,2024, vírusírtók, VPN
- LG 32GP850-B - 32" NANO IPS / 2560x1440 / 180Hz 1ms / NVIDIA G-Sync / AMD FreeSync / HDR 400
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest