Sari la conținut
ELFORUM - Forumul electronistilor

limbaje de programare


Postări Recomandate

Daca vrei sa ai succes in programarea embedded (adica pentru microcontrolere) iti recomand sa inveti ceva care iti va da rapid o "rasplata".

 

Ai nevoie de un proiect mic. Propune-ti intr-o prima faza sa aprinzi un LED.

 

Pentru ca sa vezi ca "se poate" iti recomand sa incepi cu ceva usor cum ar fi sa folosesti programarea "vizuala" cu un program ca Flowcode sau Great Basic Cow (cu accent pe Flowcode).

 

Apo i iti recomand sa folosesti mikroC for PIC de la mikroelectronica.

Orice program facut pentru un microcontroler incepe insa cu citirea unui datasheet (fisa tehnica) a unui microcontroler. Incearca cu 12F675 (ieftin si nu foarte complicat) si datasheet-ul sau este aici.

La multi ani la toata lumea!!!

In curand voi face anul de cand sunt pe acest forum si am cerut ajutorul in mai multe sectiuni fiind si eu incepator in ale electronicii dar niciodata pana acum n-am postat la vreo rubrica de la microcontrolere deoarece m-am gandit ca este prea mult pentru inceput dar dupa citirea acestui topic am zis sa incerc si aici.

Intrebarea mea este cum imi pot procura programele(sau cum le zice) ce le-ati postat mai sus?Banuiesc ca se descarca de pe net,dar vreau sa stiu daca asta se poate face gratis.

Va multumesc!

Link spre comentariu

Dragule, eu nu ma pricep la programare dar lucrez cu niste experti in domeniu care le au bine de tot cu programarea incepand de la asamblor pana la programele de inalt nivel. Din cele ce am vazut pana acum in cativa ani bun, cele mai performante aplicati pentru microcontroloare se fac cu limbajul de asamblare. Crede-ma am incercat cu toate, cu C, cu Basic si multe altele, poate, poate voi reusi si eu sa invat cate ceva, nu te chinui. Daca vrei sa manipulezi un upc, de baza este programul la cel mai de jos nivel, asamblorul. C este bun pentru cine il stie dar nu este facut pentru a manipula pinii la un integrat, probabil iti mai trebuie prin programele tale si ceva asamblor asa ca tot acolo ajungi. Mai degraba ar spune cineva cum se face un program, ordinea comenzilor si asa mai departe decat sa purtati discutii despre ce si cum. P.S. Nu ma pricep la programare dar am facut sute de montaje cu partea hard la montaje cu upc, asa ca ceva, ceva mai stiu.

Link spre comentariu

Daca as reusi macar sa aprind un led cu un microcontroler programat de mine as fi tare bucuros.Nu de alta dar am mai intalnit persoane fara pregatire de specialitate in electronica sau programare si care au reusit sa prinda firul macar cat de cat.Si apoi nu vedeti ca tot mai multe proiecte din domeniul electronicii necesita programare.Practic in ziua de astazi electronistul trebuie deseori sa fie si un bun softist.

Link spre comentariu

@cipri_mury

 

FLOWCODE:

Official https://www.matrixtsl.com/flowcode/

Neoffcial recomand versiunea 5.5.2 care se poate inca gasi cu ajutorul site-urilor ce gazduiesc fisiere torrent (a nu se intelege ca recomand programe utilizate ilegal, ci doar metode alternative de download)

 

GREAT BASIC COW: 

Offcial & free: http://gcbasic.sourceforge.net/

 

MIKROC  for PIC:

Offcial: http://www.mikroe.com/mikroc/pic/

Neoffcial: circula pe net (a nu se intelege ca recomand programe utilizate ilegal, ci doar metode alternative de download)

 

MPLABX & compilator XC8:

Offcial: http://www.microchip.com/pagehandler/en-us/family/mplabx/ sectiunea Downloads (FREE)

          http://www.microchip.com/pagehandler/en_us/devtools/mplabxc/   sectiunea Downloads (FREE dar codul generat nu este foarte eficient  - ceea ce nu este atat de important pentru hobby)

Neoffcial: circula pe net (a nu se intelege ca recomand programe utilizate ilegal, ci doar metode alternative de download)

Link spre comentariu

C este bun pentru cine il stie dar nu este facut pentru a manipula pinii la un integrat, probabil iti mai trebuie prin programele tale si ceva asamblor asa ca tot acolo ajungi.

Fix pentru asta există compilatoarele pentru embedded C: se pot accesa absolut toate resursele din microcontroller pînă la ultimul bit fără să scrii cîteva hectare. Absolut toate, nu doar pinii! Unde e nevoie de optimizare la sînge se inserează bucăţi de ASM direct în codul C, fără a fi nevoie să se scrie tot codul în asamblare.

Link spre comentariu

E, eu asta as fi vrut sa evitam.

In cazul C exista un standard, ANSI C si mai multe implementari mai apropiate sau mai departate de standard. In general, din cauza resurselor limitate si diferentelor hardware, compilerele pentru microcontrollere difera de standard, dar suficient de putin in asa fel incat odata stapanit ANSI C,  adaptarea la variantele pentru microcontrollere sa nu constituie o problema. Indiferent de microntrollere.

C in sine contine putine functii; poate fi folosit in atat de multe situatii datorita bibliotecilor care-l insotesc. In general "adaptarea" la alte platforme consta in cateva biblioteci (nu librarii :limb:) specifice hardului, limitari in tipurile de date suportate...

Cum am mai spus si cu alte ocazii, nu-s convins ca documentatia care insoteste compilerele pentru microcontrollere e suficienta pentru invatarea C. Senzatia mea a fost ca documentatiile astea presupun existenta unui minim de cunostinte. Sunt sanse sa ma insel (n-am rasfoit decat documentatia de la picc/xc8 si numai cand am cautat ceva anume) si m-as bucura sa existe compilere cu documentatie completa.

 

Ma opresc aici, cred c-a inteles toata lumea punctul meu de vedere - fanatic. :rade:

Sincer.... nu am inteles nimic ce ati vrut sa spuneti. 

eu nu invat C ul din documentatii de compilere ( banuiesc ca la compilatoare va referiti). Il invat din carte scrisa si tutoriale de pe youtube unde da si exemple si tot si imi e mai usor sa inteleg. In rest... intradevar, am observat si eu ca se cam cer minime cunostinte in programare pt a intelege ce se explica prin tutoriale si documentatii. Ori eu cred ca daca vrei sa iei pe cineva de la zero, ia-l de la zero si explica-i ca la prosti.

Link spre comentariu

Ori eu cred ca daca vrei sa iei pe cineva de la zero, ia-l de la zero si explica-i ca la prosti.

Exact asta fac manualele de, de... ai ghicit "invatat (ansi) C". Fara "dedicatie" embedded/neembedded. Si uite asa, contrazicandu-ma, ai ajuns la vorba mea. :)Dupa ce o sa stii care e structura unui program C, ce e aia variabila, ce e ala vector/array, ce face un pointer si cum arata o functie, dupa ce o sa intelegi care-i rolul functie main, atunci o sa te poti apuca sa aprinzi LED-uri (partea de "embedded"). Asta daca vrei sa inveti sa programezi (si microcontrollere, dar iti va fi util si in alte domenii) in C.

Daca vrei doar sa aprinzi LED-uri cat mai repede, ia un arduino, cauta programe pe net, incearca sa le folosesti si vino cu intrebari la sectiunea respectiva cand ceva nu merge. :) 

Editat de Liviu M
Link spre comentariu

. Asta daca vrei sa inveti sa programezi (si microcontrollere, dar iti va fi util si in alte domenii) in C.

Ai perfecta dreptate. Tocmai de asta si eu recomandat invatarea C-ul si nu a Basic-ului sau altele. Chiar daca la prima vedere C-ul pare mai greu de inteles fata de alte limbaje, dupa ce il inveti nu vei regreta alegerea facuta.

Link spre comentariu

As avea si eu o intrebare in legatura cu limbajul de programare C despre care am auzit si eu atat de multe lucruri.Cei care acum stiti sa-l folositi l-ati invatat singuri?Nu de alta dar eu am vazut ca se studiaza la facultate(la fel ca si alte limbaje de programare) deci sunt convins ca nu este "floare la ureche".

Link spre comentariu

Cei care acum stiti sa-l folositi l-ati invatat singuri?

Eu nu.Am facut profil de informatica intensiv ( 8 ore pe saptaman ) la liceu.Si am inceput cu Pascal, trecerea spre C a fost foarte usoara rezumandu-se doar la diferenta de sintaxa la nivelul de lucru din liceu.

Link spre comentariu

 Unde e nevoie de optimizare la sînge se inserează bucăţi de ASM direct în codul C, fără a fi nevoie să se scrie tot codul în asamblare.

Nu este mai simplu sa programezi direct in asamblor decat sa amesteci doua limbaje? Oricum folosindu-le pe amndoua creste lungimea fisierului din upc cu efectele de rigoare.

Link spre comentariu

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 cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum
×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări