bubulica Postat Iulie 25, 2011 Partajează Postat Iulie 25, 2011 Ceea ce ai explicat tu este un rotary encoder...Practic la asta ma gandeam si eu. Rotary encoder-ul l-as putea defini ca o rutina de matrice suplimentara in softul deja creeat. Matrice care va fi la fel, scanata TOT TIMPUL de catre AVR, pentru a depista o apasare de tasta.Inca de la initializare, AVR-ul citeste pozitia de start matricei - adica starea ei (100 sau 010 sau 001) si AVR-ul va stii ca: Daca matricea se afla la 001 avem: 100 mergi un pas in dreapta sau 010 mergi un pas in stangaDaca matricea se afla la 100 avem: 010 mergi un pas in dreapta sau 001 mergi un pas in stangaDaca matricea se afla la 010 avem: 001 mergi un pas in dreapta sau 100 mergi un pas in stangaCum AVR-ul scaneaza si citeste pozitia matricei intr-una - o bucla continua, va stii in functie de tableul definit mai sus in ce directie este rotita: DREAPTA sau STANGA Link spre comentariu
louis Postat Iulie 25, 2011 Autor Partajează Postat Iulie 25, 2011 vezi ca am mai completat ultimul post. la cum as face eu partea de soft. acum ramane de vazut daca iti permite si hardware-ul.mai sunt niste consideratii legate de consumul circuitului. sunt niste standarde de consum pe dispozitivele care ruleaza nonstop pe baterie. sa nu-ti descarci bateria ;plus ca nu e necesar sa rulezi nonstop codul ci pe un timer decent (nici prea lenes sa-ti rateze butoane, nici prea des). adica nu pe un while care e infinit si-ti incinge procu ci pe timer; vezi prin posturile din prima pagina; iti poti masura curentu cu ampermetru pe while sa vezi cat papa. rupe fata de timer. Inca de la initializare, AVR-ul citeste pozitia de start matricei - adica starea ei (100 sau 010 sau 001) si AVR-ul va stii ca: nu stiu cum procedezi tu in soft. atentie la ce am scris anterior. trebuie sa dai curent separat pe fiecare linie si apoi verifici contactele cu coloanele. dupa care pui pinul de linie inapoi la 0v si treci la cealalta linie; sa nu existe coliziuni. Link spre comentariu
bubulica Postat Iulie 25, 2011 Partajează Postat Iulie 25, 2011 Tu ai ceva cu bateria aia bat-o vina. Pai la cat consuma un AVR tu de asta iti faci probleme? In plus cand merge motorul bateria se incarca, nu asta este pb. Am alternator de 85A pe masina, un Renault Twingo 1.2 16v.Eu prefer sa transpun encoderul ca o matrice. Sincer din motvul LENII am renuntat (nici nu mai aveam chef..) in mod normal AVR-urile stiu sa lucreze cu encoderele - este o mica bucatica de sw care face asta, relativ simpluta insa pe encodere de 2, 4 sau 6 biti. Newencoderposition = Lookup(newpinc , Grayval2encodertable) si bagam tabelul cu valori pt encoderul gray si aia era......iar la final... End IfLoopSi avr-ul se uita intr-una dupa o comanda... Link spre comentariu
louis Postat Iulie 25, 2011 Autor Partajează Postat Iulie 25, 2011 Tu ai ceva cu bateria aia bat-o vina. Pai la cat consuma un AVR tu de asta iti faci probleme? In plus cand merge motorul bateria se incarca, nu asta este pb. Am alternator de 85A pe masina, un Renault Twingo 1.2 16v.o spui cu atata seninatate intai te documentezi cat poate consuma maxim. si la consumul ala in cat timp iti poat descarca bateria. sigur nu vrei sa te trezesti in mijlocu iernii de craciun ca vrei sa fugi undeva si esti cu ea moale.ti-am mai spus, daca pui microcontrolleru sa execute codul nonstop, asa cum sustii tu, adica pe un while, sau end if fara un sleep ceva, fara pauze si o sa tii mana pe el ai sa ai oaresce surprize. termice.un raspuns inteligent era sa-mi arati consumul. sau sa spui ca ramane de studiat. asa pe perceptii te poti insela.totul in varianta in care nu lasi montajul legat nonstop la baterie si il treci pe ignition. dar poate altcineva vrea sa faca precum faci tu si il trece pe baterie. deci orice lucru public trebuie facut eco. sa-i stii consumul, sa nu depasesti niste standarde etc etc. adica sa fii riguros.problema era simpla si faptul ca te-ai impotmolit la ea imi arata ca nu esti nici tu prea avansat ; iar faptul ca esti pe "end if" aka basic imi intareste constatarea bun. acum purcezi la implementat. daca mai ai kef ps: da-mi si mie te rog un cod de optocuplor dintre cele folosite. cine stie cand mai am nevoie de asa ceva, macar sa stiu ce sa caut. Link spre comentariu
fratello Postat Iulie 26, 2011 Partajează Postat Iulie 26, 2011 O schema si soft functionabile cu satelitul de Clio/Logan, pentru Sony(Pioneer) este cumva disponibila ? O schema am vazut mai sus dar fara soft... Multumesc anticipat ! Link spre comentariu
alfabit Postat Iulie 26, 2011 Partajează Postat Iulie 26, 2011 ps: da-mi si mie te rog un cod de optocuplor dintre cele folosite. cine stie cand mai am nevoie de asa ceva, macar sa stiu ce sa caut.Poti folosi TLP621 ( PTH ) sau TLP 121 ( SMD ) dupa preferinte. Link spre comentariu
bubulica Postat Iulie 26, 2011 Partajează Postat Iulie 26, 2011 o spui cu atata seninatate intai te documentezi cat poate consuma maxim. si la consumul ala in cat timp iti poat descarca bateria. sigur nu vrei sa te trezesti in mijlocu iernii de craciun ca vrei sa fugi undeva si esti cu ea moale. ti-am mai spus, daca pui microcontrolleru sa execute codul nonstop, asa cum sustii tu, adica pe un while, sau end if fara un sleep ceva, fara pauze si o sa tii mana pe el ai sa ai oaresce surprize. termice. UNU: o spun cu foarte mare seninanate. Interfata de comenzi (ca si mp3 playerul) este trecuta PRIN contact - deci functioneaza NUMAI cand este contactul pus. Se pot intampla accidente - scurturi, se poate ia foc o masina din cauza faptului ca exista consumatori pusi pe direct. Nu cred ca as putea fi atat de inconstient (aici eu numesc inconstienta) incat sa pun un montaj pe masina trecut DIRECT pe baterie (+12v inainte de contact) INDIFERENT de ce natura ar fi el - decat cu exceptia in care dispozitivul necesita in mod expres conectarea la +12v permanent - insa aici intervin metode de protectie speciale (diode de sens, zenere samd). DOI: eu prefer sa imi fac dispozitivul si sa il gandesc dupa concepte proprii. Crede-ma ca am avut destule teste si incercari cu diverse concepe de program. ASTA este cea mai buna solutie - rapid in executie si sigur - comanda este ferma - ai dat comanda - nu sta sa se gandeasca sau sa balmajeasca ca e cald sau rece, ca nu intelege comanda samd... In masina cand conduci nu cred ca ai nevoie de raspunsuri incerte din partea aparatelor. Cum ar fi sa dai drumul la AC si sa-ti porneasca stergatoarele ? Deci programul trebuie sa ruleze FARA nici un wait. De ce sa il pun sa stea? Eu nu muncesc ? (a se citii - conduc) De asta am pus un Atmega 8 - SA MUNCEASCA SI ULTIMA: ai idee la 2 mhz cum merge un atmega 8? Iti spun eu: RECE Ca fapt divers am uitat montajul alimentat (pe cand faceam teste) peste noapte, iar a 2-a zi de dimineata am fost la serviciu, si abia pe la 18 am ajuns acasa (deci cam 22 de ore). Montajul era rece si nu avea nici cea mai mica problema. SI functiona perfect Eu am folosit ca optocuploare LTV 817B . Foarte bune si cu raspuns excelent. PS o mai spun odata, am postat schema insa softul nu am sa il postez - nici pe bani. ) Am explicat aproape complet modul de functionare - si teoretic conceptul meu despre rotita (dupa cum spuneam mi sa cam luat - imi este o LENE de ma doare). Putina programare nu strica. Link spre comentariu
louis Postat Iulie 26, 2011 Autor Partajează Postat Iulie 26, 2011 ASTA este cea mai buna solutie - rapid in executie si sigur - comanda este ferma - ai dat comanda - nu sta sa se gandeasca sau sa balmajeasca ca e cald sau rece, ca nu intelege comanda samd... In masina cand conduci nu cred ca ai nevoie de raspunsuri incerte din partea aparatelor. Cum ar fi sa dai drumul la AC si sa-ti porneasca stergatoarele ?mda, se pare ca preferi sa persisti in nepasare. poate ca alta data ai sa ai nevoie ca softul sa ruleze pe o baterie mica de 9v spre ex, care nu e nelmitata si pe care in modul nesabuit de lasa ca merge la full, ai s-o dai gata in cateva ore. atunci ai sa ajungi la vorbele mele. poti sa faci acelasi lucru sa functioneze la fel de bine consumand de 1000x mai putin curent. si sa-ti dau un exemplu ca se pare ca nu vrei sa pricepi. poti sa ai un televizor cu 1000 000 de fps si unul cu doar 100fps. imaginea pe ochiul uman sa va vedea la fel. cu toate ca televizorul tau baban consuma rsurse cat 1000 de televizoare la 100fps.rapid si sigur-ul tau n-are treaba cu caldura sau recele. tu NU determini rezistente de circuit. satelitul la clio spre deosebire de cel de la masina mea difera. nu e cu rezistente. eu am povestit despre problema doar ca un tips, ce se poate intampla cand ai de-a face cu determinari de rezistente. nu puteam anticipa cum se va comporta circuitul la caldura pentru ca nu l-am testat intensiv. bineinteles, problema se repara in 2 timpi si 3 miscari din soft. o mica "tunare" software, un mic "update" si totul e ok. Link spre comentariu
louis Postat Iulie 26, 2011 Autor Partajează Postat Iulie 26, 2011 O schema si soft functionabile cu satelitul de Clio/Logan, pentru Sony(Pioneer) este cumva disponibila ? O schema am vazut mai sus dar fara soft... Multumesc anticipat !pai discuta cu bubulica daca vrea sa te ajute. dupa ce isi face si rotita functionabila. oricum iti trebuie programator de avr-uri. in plus in schema lui se poate renunta la optocuplere (cele 8 bucati pentru 8 functii) si trecut curentul din head-unit ce citeste satelitul direct prin microcontroller si rezistentele necesare, pentru ca are only 3v parca. Link spre comentariu
bubulica Postat Iulie 26, 2011 Partajează Postat Iulie 26, 2011 Ma minuneaza ca tu insisti aiurea.Sa lamurim un pic situatia. Este vb de un caseofon SONY care accepta ca intrare de comenzi remote, o valoare rezistiva. Asadar de unde 9v? Crezi ca o sa pun acest sony (sau alt HU sony / pioneer etc) la o motoreta? Sau la un scuter? Pe masina ai NUMAI 12v (sau 6v ca la trabant) sau 5v, 3v, 2.2v etc in calculatoarele masinii - dar asta este alta poveste.Tine cont de faptul ca jucaria NU ESTE UNIVERSALA - nu am si nu am avut nici cea mai mica intentie sa o fac asa. Este pur si simplu dedicata conversiei de la satelitul ce echipeaaza masinile Renault la HU Sony sau HU Pioneer si atat.Versatilitatea consta in faptul ca stiind valorile rezistive pentru fiecare comanda a HU-ului se poate pune ce rezistente se doreste pe ce iesiri se doreste, astfel se obtine foarte usor customizarea comenzilor doar din schimbarea rezistentelor.Te rog sa ma scuzi dar nu "prefer sa persist in nepasare" ci asa vreau eu sa fac sistemul - este solutia pe care am propus-o pentru satelitul de Renault. Cred ca este dreptul FIECARUIA sa aleaga solutia care considera ca este optima.Recomand sa nu scoti optocuplerele respectiv sa folosesti tensiunea din jack-ul HU-ului. In felul asta o sa iti protejezi atmega. Risti sa il termini numaidecat - dupa cum am zis am facut nenumarate teste. Pentru 10 LEI de ce sa ne zgarcim ? Link spre comentariu
louis Postat Iulie 26, 2011 Autor Partajează Postat Iulie 26, 2011 Ceea ce ma minuneaza este ca tu insisti aiurea, de unde 9V? Este vb de un caseofon SONY care accepta ca intrare de comenzi remote, o valoare rezistiva. Asadar de unde 9v? Crezi ca o sa pun acest sony (sau alt HU sony / pioneer etc) la o motoreta? Sau la un scuter? e vorba despre o gandire a software-ului. daca ai avea un task manager ai vedea ca acesta ruleaza la 100%. ori sa faci asa ceva e treaba de newbist. consumi curent degeaba. sa zicem ca nu-ti pasa in cazul de fata. alta data s-ar putea sa-ti pese.9V e o baterie mica. poti face multe montaje cu acelasi microcontroller. daca nu-ti controlezi codul si mergi pe principiul tau...100% cpu...da' ce sa mai vorbesc ca se pare ca tastez degeaba. o sa intelegi tu la un moment dat. vei fi in tema Recomand sa nu scoti optocuplerele respectiv sa folosesti tensiunea din jack-ul HU-ului. In felul asta o sa iti protejezi atmega. Risti sa il termini numaidecat - dupa cum am zis am facut nenumarate teste. Pentru 10 LEI de ce sa ne zgarcim ?nu risti nimic. daca faci rost de schema sony ai sa vezi ca acolo are tot un microcontroller cu care masoara rezistentele puse de tine. deci voltajele sunt compatibile cu microcontrollerele de 5v. n-ai nici o frica. prin cuploarele alea cresti dimensiunile montajului inutil. daca e sa se intample ceva, stai linistit ca pana sa se arda controllerul tau, e arsa unitatea sony. Link spre comentariu
bubulica Postat Iulie 26, 2011 Partajează Postat Iulie 26, 2011 Sa-ti explic cum sta treaba - insisti aiurea. Ce nu vrei - nu accepti sa intelegi, este ca rularea acestui cod in mod loop SPECIAL am facut-o. Este deliberata actiunea ca asa am dorit sa fie. De ce fortezi tu nota nu inteleg. Ai spus parerea ta, am ascultat-o, insa nu vad de unde si pana unde trebuie sa procedam intocmai ce ne spun altii. Poate maine vine unul si zice ca de fapt el ar fi pus un cpu 386 pentru asta si un mini-laptop pe usb. Ok, respect parerea o ascult, insa fac cum vreau eu. Hai totusi sa revenim la subiectul de fata. ori sa faci asa ceva e treaba de newbist Afla ca stiu ceva programare, nu ma iau la intrecere cu nimeni si ca imi concep cam singurel programelele... Si nu am cerut parerea nimanui cu privire la codul implementat de mine - de altfel nu o sa fie nici un cod facut public.Eu nu "protejez" cipurile sa nu munceasca, resurse etc...aici nu este mediu WINDOWS. Afla ca acele microcontrollere sunt RISC si fac FOARTE bine ceea atata timpo cat le este optimizat codul - acea urma de "obosire" apare atunci cand bagi un cod gandit eronat cu o gramada de rutine ce folosesc tzspe mii de intreruperi. Nu obosesti cpu-ul daca ii dai sa execute o rutina in loop. Aici se vede nivelul tau de programare...si cat de "newbist" sunt eu.Inca o data, nu inteleg de unde si pana unde atata agitatie ca nu sunt de acord cu tine...pentru ca asta este in fond. A facut jucaria, bucura-te de ea si sanatate, fiecare face cum poate - "dupa posibilitati coane Fanica" insa solutia propusa de mine eu unul o consider FIABILA atat dpdvd electric (vezi optocuploarele alea nu stau degeaba acolo) cat si al codului - microcontrollerul "pandeste" apasari de taste si prima vazuta o executa.Nu stiu daca ai intalnit vreodata in viata aplicatii facute FIX pentru un singur lucru. Pur si simplu asa este si asta OPTIMIZAT pentru satelit renault si hu sony/pioneer.La HU Sony este de 3v voltajul acolo da? Alimenteaza tu Atmega8 la 3v sa vezi ce bine iti merge... Link spre comentariu
louis Postat Iulie 26, 2011 Autor Partajează Postat Iulie 26, 2011 Nu stiu daca ai intalnit vreodata in viata aplicatii facute FIX pentru un singur lucru. Pur si simplu asa este si asta OPTIMIZAT pentru satelit renault si hu sony/pioneer.La HU Sony este de 3v voltajul acolo da? Alimenteaza tu Atmega8 la 3v sa vezi ce bine iti merge...1. OPTIMIZAT spui tu? pai eu tocmai pentru optimizare te critic. ca nu vrei sa faci nici o optimizare. ai bagat un cod in cpu dupa capul tau (nestiind cum ruleaza de fapt), (si ti-am aratat ca loop-ul ala e cel mai mancator de resurse functionand in modul ala "nonsop" fiind de fapt un JMP la sfarsitul codului catre startul codului si nelasand cpu sa respire), si refuzi sa optimizezi. ti-am sugerat ca la sfarsitul codului sa pui un sleep de cateva milisecunde poate chiar zeci sa vezi ca nu se intampla nimic, tot asa functioneaza dar ai consum redus de un numar de ori. dar tu nici n-ai masurat cat iti consuma circuitul si cum s-ar putea sa-l faci sa aiba acelasi efect functionand cu resurse minime, consumand poate si de 100x mai putin. deci despre ce vorbim noi aici?! 2. nu am spus sa alimentezi nimic la 3v. alimentarea va fi ca si pana acum. numai ca scoti cuploarele si pinii cu rezistente ii faci sa functioneze de genul input cand nu lasa sa treaca curentul din sony prin rezistenta si cand vrei sa lasi sony sa o citeasca il pui pe output cu potentialul 0v. simplu si elegant. bineinteles ca asa va trece curent din sony si prin avr dar e un curent mic care nu il afecteaza cu nimic. Link spre comentariu
bubulica Postat Iulie 26, 2011 Partajează Postat Iulie 26, 2011 Vad o tii cu consumul . Lasa-ma bai nene cu consumul tau. NU MA INTERESEAZA CONSUMUL, si NICI cat de mult este stresat microcontrollerul. Tu pricepi acest fapt? Care parte din nu ma intereseaza nu intelegi?Uite ca nu vreau sa fiu de acord cu tine - care este problema? Eu gasesc principiul meu unul corect.Daca functia loop era atat de absurda precum sustii tu sus si tare, poate nu era cazul sa mai fie inventata nu?Stii unde gresesti tu? Ca nu gasesti normal ca altii sa nu te aprobe. NU AM CERUT laude, nu am cerut sa ma aprobe cineva - am prezentat puri si simplu ce am facut. Am comentat eu cu ceva la ceea ce ai facut tu? NU. Eu imi vad de treaba mea...ceea ce iti recomand si tie, atata timp cat nu esti in stare sa aduci un sfat care chair m-ar putea ajuta. Am cerut sfaturi sau IDEI cu privire la rotita, atata tot. Pe langa faptul ca ai spus numai prostii (asta este parerea mea - pentru ca nu intelegi deloc logica in care am facut eu sistemul, asta este evident) nu vad sa ma fi ajutat mai mult. Tot ce ai facut este sa critici aiurea faptul ca tu ai fi facut altfel. FA ALTFEL, FA IN FELUL TAU dar lasa lucrurile altora ASA CUM SUNT. Am avut eu motivatie pentru ca am facut asa - nu de tampit. Link spre comentariu
louis Postat Iulie 26, 2011 Autor Partajează Postat Iulie 26, 2011 Lasa-ma bai nene cu consumul tau. NU MA INTERESEAZA CONSUMUL, si NICI cat de mult este stresat microcontrollerul. Tu pricepi acest fapt? Care parte din nu ma intereseaza nu intelegi?"NU MA INTERESEAZA CONSUMUL" = "SUNT UN AMATOR NEWBIST" e ca si cum ai merge cu 8000 de ture in viteza 1-a si speri sa ajungi pana la ploiesti. si mai si scoti capu pe geam si urlii in gura mare ca nu te intereseaza consumu si cat de tare esti tu ca mergi optimizat. gata ma opresc aici ca a degenerat discutia. n-are rost sa predic pentru dezinteresati. cine vrea sa-si perfectioneze skill-urile, adica sa gandeasca ca un profesionist a inteles ce vreau sa spun. Link spre comentariu
Postări Recomandate
Creează un cont sau autentifică-te pentru a adăuga comentariu
Trebuie să fi un membru pentru a putea lăsa un comentariu.
Creează un cont
Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!
Înregistrează un nou contAutentificare
Ai deja un cont? Autentifică-te aici.
Autentifică-te acum