Chirurgia spinală minim invazivă
Chirurgia spinală minim invazivă oferă pacienților oportunitatea unui tratament eficient, permițându-le o recuperare ultra rapidă și nu în ultimul rând minimizând leziunile induse chirurgical. Echipa noastră utilizează un spectru larg de tehnici minim invazive, din care enumerăm câteva: endoscopia cu variantele ei (transnazală, transtoracică, transmusculară, etc), microscopul operator, abordurile trans tubulare și nu în ultimul rând infiltrațiile la toate nivelurile coloanei vertebrale. www.neurohope.ro |
Arduino - automatizare DIY
#973
Posted 25 March 2017 - 13:54
Am citit azi noapte o gramada despre string asta si m-am tot chinuit, dar nu am reusit sa fac nimic. Peste tot am gasit exemple cu ceasul, exact ca si exemplul tau M-am tot chinuit cu ce sa trec la char in paranteza aia drepata si la formatul ala "%2u:u:u" , unde eu am trecut de fapt "%2dl"
Da-mi te rog un exemplu mai concret. Eu am asa: lcd.setCursor(8,0); lcd.print(Pozitie); Unde Pozitie ar fi: 1 - un numar de la 00 la 20. 2 - sau de la -20 la 20 (aici cred ca corect ar fi de la -20 la 020 .... sau se poate -20 la +20 ? Adica sa afiseze si plusul ? ) (ma multumesc cu un ajutor pentru cazul 1 ) Edited by florin71_skoda, 25 March 2017 - 13:56. |
#974
Posted 25 March 2017 - 14:01
Ala cu ceasul l-am conceput fara ca sa stiu ca sunt exemple.
Asa mi s-a potrivit mie. Incearca "%3d" pentru o variabila integer. Chiar acum nu pot sa fac teste. P.S. ma supara Tapatalk deoarece strege/inlocuieste procente cu alte chestii. Am explicat in comentariu. Semnul plus nu e afisat. Dardaca variabila e negativa, minusul e afisat. Trebuie sa faci niste trucuri suplimentare acolo. Transformi variabila in modul (pierzi semnul) si apoi o faci string de 2 caractere. Apoi faci niste if-uri ca sa faci print la semnul minus si plus in functie de variabila originala. Daca e 0 printezi un spatiu gol. Pseudocode Char volume_sign[1] If variabila_volum_sunet< 0 Volume_sign="-" Else If variabila_volum_sunet>0 Volume_sign="+" Else Volume_sign=" " Edited by radurus, 25 March 2017 - 14:22. |
#975
Posted 25 March 2017 - 14:35
Schimba variabila_volum_sunet cu pozitie in postul anterior.
Char string_pozitie[2] Modul_pozitie = abs(pozitie) sprintf (string_pozitie,%2d,Modul_pozitie) Set.cursor ...... Lcd.print volume_sign Lcd.print string_pozitie Treaba cu modul_pozitie ar putea fi eliminata daca iti accepta sprintf (string_pozitie,%2d,abs(pozitie)) Edited by radurus, 25 March 2017 - 14:45. |
#976
Posted 25 March 2017 - 14:55
Intre timp am descoperit o chestie timpit de simpla, care culmea ca si functioneaza:
Varianta A if (Pozitie<100) lcd.print('0'); if (Pozitie<10) lcd.print('0'); lcd.print(Pozitie); Varianta B if (Pozitie<100) lcd.print(' '); if (Pozitie<10) lcd.print(' '); lcd.print(Pozitie); Numai ca nu merge la numerele negative. ----------- Am incercat ultimul tau exemplu, dar deocamdata da eroare
Spoiler
Edited by florin71_skoda, 25 March 2017 - 15:02. |
#977
Posted 25 March 2017 - 15:02
Credeam ca verifici tu sintaxa.
Nu da copy-paste. Veeifica la sprintf in paranteza, chestia aia cu procente sa fie in ghilimele. Nu exista set.cursor ci lcd.setCursor. Vetifica unde trebuie (, ), {, }, ;. Edited by radurus, 25 March 2017 - 15:05. |
#978
Posted 25 March 2017 - 15:13
florin71_skoda, on 25 martie 2017 - 13:54, said: [...] sa afiseze si plusul? [...] lcd.print((char)43); florin71_skoda, on 25 martie 2017 - 13:01, said: [...] daca trec de 10 si dupaia ma intorc inapoi la 9, pe afisaj ramine "coada" ca nu-si face clear si-mi afiseaza 90 in loc de 9. Cum as putea rezolva problema? [...] |
#979
Posted 25 March 2017 - 15:14
char string_pozitie[2] trebuie sa mearga
Lipseste ; inainte de el sau ceva paranteze. |
#980
Posted 25 March 2017 - 15:19
#981
Posted 25 March 2017 - 15:22
... merge plusul...
Dar daca foloseai Lcd.print("+"); Cum era? |
#982
Posted 25 March 2017 - 15:24
radurus, on 25 martie 2017 - 15:14, said:
char string_pozitie[2] trebuie sa mearga char era scris cu litera mare ... Char ... acum merge si am trecut la urmatoarea eroare ---------- Am eroarea: 'volume_sign' was not declared in this scope lcd.print (volume_sign) ; exit status 1 'volume_sign' was not declared in this scope ------- Asa ca am renuntat la lcd.print (volume_sign) ; Bingo .... Merge .... -------------- Doar la numerele negative vad ca face figuri, cind ajung la -10 , ca-mi pastreaza dupaia zeroul de la final Am schimbat "%2d" in "%3d" si sa rezolvat si problema asta. Acum o sa am probleme cind trec de 99 sau scad sub -99 ----- Codul functional: char string_pozitie[2]; sprintf (string_pozitie, "%3d", Pozitie); lcd.setCursor (8,0); lcd.print (string_pozitie); Edited by florin71_skoda, 25 March 2017 - 15:44. |
|
#983
Posted 25 March 2017 - 15:28
Deci ai rezolvat și problema cu „coada”? Ca să știu dacă să mă mai zbat pentru amărîta aia de bere.
|
#984
Posted 25 March 2017 - 15:30
Dar din dar se face...
Berea vine la mine. Insa trebuie sa scoata alcoolul din ea... (joking) Edited by radurus, 25 March 2017 - 15:38. |
#985
Posted 25 March 2017 - 16:45
florin71_skoda, on 25 martie 2017 - 15:24, said: char era scris cu litera mare ... Char ... acum merge si am trecut la urmatoarea eroare ---------- Am eroarea: 'volume_sign' was not declared in this scope lcd.print (volume_sign) ; exit status 1 'volume_sign' was not declared in this scope ------- Asa ca am renuntat la lcd.print (volume_sign) ; Bingo .... Merge .... -------------- Doar la numerele negative vad ca face figuri, cind ajung la -10 , ca-mi pastreaza dupaia zeroul de la final Am schimbat "-" in "=" si sa rezolvat si problema asta. Acum o sa am probleme cind trec de 99 sau scad sub -99 ----- Codul functional: char string_pozitie[2]; sprintf (string_pozitie, "=", Pozitie); lcd.setCursor (8,0); lcd.print (string_pozitie); Daca ai ales sa printezi 3 caractere pentru variabila aia (semn+numar), atunci trebuie sa faci char string_pozitie[3]. De fapt, pe unde am mai citit, se recomanda sa se faca un string cu un caracter mai mult decat ceea ce vrei sa printezi. Apar probleme la memorie si iti poate printa mizerii. Edited by radurus, 25 March 2017 - 17:02. |
#986
Posted 25 March 2017 - 17:09
La mine merge perfect cu char[2] si "%3d"
Daca las "%2d" Am setat lcd.setCursor (8,0); Drept urmare prima data afiseaza 0 in coloana 9 Daca merg spre plus, cind ajung la 10, o sa am 0 tot la 9 si 1 este afisat la 8, cu o coloana in fata, adica la aia setata. Dar daca ma duc spre minus, in prima faza afiseaza -1, -2, etc. Am - in coloana 8 si cifrele in coloana 9 Dar cind ajung la -10, acel 0 de la final zboara in coloana 10 Cind revin la -9, acel 0 ramine si am afisat -90 Si daca ma duc la plus, acel 0 tot ramine. -------- Daca modific doar "%2d" in "%3d", primul 0 este afisat in coloana 10, chiar daca eu am setat sa fie la 8 Drept urmare am 8 si 9 goale, ca si spatiu de manevra. Cind ajung la -10, acel 0 de la final ramine tot in coloana 10 cu - si 9 se umple coloanele 8 si 9 Daca as merge pina la 100, as avea iar o problema. ------ Am incercat acum si cu char[1] si "%3d" si merge perfect. Probleme am doar cind ajung la -100 --------- Am tot sapat netul sa rezolv si problema cu Lcd.print volume_sign , dar nu am gasit nimic. Am incercat sa tot modific si sa pun si in alte parti acel sing, dar tot nu afiseaza + Edited by florin71_skoda, 25 March 2017 - 17:11. |
#987
Posted 30 March 2017 - 09:55
- Hotaraste cate caractere ai nevoie sa aloci pe display 3 sau 4. Sa zicem 4 pentru a afisa valori de la -999 pana la +999.
- Aloci un bufer cu unu in plus pentru zero terminal adica char string_pozitie[5], daca nu, o sa trebuiasca sa scoti din priza din cand in cand ca se blocheaza softul sau o sa afiseze din cand in cand prostii. - Ca sa formatezi un numar intreg la valoarea afisata care sa includa semnul plus, formatul este urmatorul "%+4d". Daca vrei spatiu pentru numere pozitive in loc de semn, formatul este "%4d" - Valoarea afisata este aliniata la dreapta, de aceea pentru numere mici in fata vor fi spatii. Daca nu iti place si vrei valoarea aliniata la stanga, formatul este "%-+4d" (va fi afisat cu plus in fata) sau "%-4d" daca nu vrei cu semnul plus pentru numere pozitive. char string_pozitie[5]; sprintf (string_pozitie, "%+4d", Pozitie); lcd.setCursor(6,0); // sa fie spatiu sa incapa pe acelasi rand 4 caractere. lcd.print(string_pozitie); |
|
#989
Posted 01 April 2017 - 11:41
Fane, on 15 iunie 2015 - 19:30, said: era un topic mai devreme cu cineva care ii era frica de inundatie. ma gandeam ca ar putea rezolva problema cu brelocuri RFID la cheile fiecaruia din casa si un cititor RFID sub un bol in care sa-si puna fiecare cheile cand intra in casa. cat cititorul vede vreunul din brelocuri tine electrovalva generala deschisa, cand nu mai e nici un breloc in bol taie apa. [...] Varianta cu breloc RFID la cheie mi se pare foarte bună, am și locul potrivit (în poza atașată), doar că trebuie să mă apuc de „săpat” ca să văd cum se poate realiza, pentru că nu mi se pare chiar așa de simplă pentru nivelul meu de cunoștințe în acest domeniu. Ar mai fi și alte idei/variante de recunoaștere a prezenței în casă? O dau la o parte (deocamdată) pe cea cu mai multe cititoare RFID, precum și pe cea cu senzori de prezență. Attached FilesEdited by raduk, 01 April 2017 - 11:49. |
#990
Posted 01 April 2017 - 12:26
Era un sistem inteligent prezentat intr-o cladire.
Persoana purta o bratara rfid la mana. Luminile si climatizarea se reglau in incaperea in care se afla. Nu stiu daca avem acces la cititoare rfid cu raza de 10m si care sa coste putin. Totusi, ce faci dac unul din familie isi uita cheile acasa? (nema protectie) Dar ce se intampla daca nu pui cheile la locul lor, nu primesti apa? E cam periculos sa iti conditionezi disponibilitatea resurselor (apa in cazul acesta) de ezistenta unui semnal rfid. Trebuie sa combini cu alti senzori. Solutia pentru inundatii ar fi senzori plasati in spatiile cu sursele de apa. Se poate merge doar pe alarmare sau impreuna cu intreruperea circuitului de apa. Mai ramane logica de functionare a electrovalvei: deschis cand e alimentat sau nealimentat cu tensiune. Daca mergi pe varianta deschis-alimentat, ce faci cand ai pana de curent, nu ai apa? Pe varianta cealalta deschis - nealimentat nu e safe, adica daca intervine o pana de curent impreuna cu o problema la apa, nu ai nici o protectie. Cea mai buna solutie penttu avarie ar fi o valva de genul celor de la gaz. Este armata (cu arc) iar in caz de probleme, primeste un impuls care trage piedica pentru scurt timp si circuitul ramane intrerupt pana la rearmare manuala. Daca instalatia e bine facuta, scade riscul inundatiei. Mie mi se pare putin cam inutila aplicatia deoarece apa nu e periculoasa. Gazul si curentul pot provoca daune serioase. Edited by radurus, 01 April 2017 - 12:36. |
Anunturi
▶ 0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users