Sari la conținut
ELFORUM - Forumul electronistilor

Compilator C


messu

Postări Recomandate

Ai incercat tu __CONFIG(0x3FF4) si n-a mers?

Nu de alta, da' WDTDIS, UNPROTECT... sunt niste define-uri iar && dintre ele e SI logic.

Asa ca dupa ce trece preprocesorul pe acolo si inlocuieste numele cu numerele corespunzatoare, vine si compilerul si face operatiile logice, ajungand la aceeasi expresie "numere".

Oricum, la mine parca a trecut de --CONFIG() fara sa schimb ceva.

 

LE Uite asa arata sectiunea corespunzatoare din pic125xx.h:

#define CONFIG_ADDR	0xFFF/* MCLR Pin function */#define MCLREN		0xFFF	// master clear reset enable#define MCLRDIS		0xFEF	// master clear reset disable/*watchdog*/#define WDTEN		0xFFF	// watchdog timer enable#define WDTDIS		0xFFB	// watchdog timer disable/* code protection */#define PROTECT		0xFF7	// protect the program code#define UNPROTECT	0xFFF	// do not protect the program code/*osc configurations*/#define EXTRC   	0xFFF	// external resistor/capacitor#define INTRC		0xFFE	// internal#define XT		0xFFD	// crystal/resonator#define LP		0xFFC	// low power crystal/resonator

Dupa cum vezi, in pentru fiecare optiune exista un bit care e facut 0 sau lasat 1; la sfarsit, prin SI-uirela lor logica iese un numar oarecare. Nu vad de ce nu s-ar putea scrie direct numarul.

Link spre comentariu
  • Răspunsuri 23
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

  • Liviu M

    8

  • messu

    8

  • MatyC

    5

  • Mikrosha

    1

Top autori în acest subiect

Despre ce compilator vorbesti? Ca am verificat un lucru abia acum. PICC este folder de instalare pt compilatorul C de la HI-Tech dar si pentru CCS. Pana nu am testat programe pentru CCS nu am realizat confuzia.Insa linia cu #include este specifica pentru HI-TECH, firma care a fost asimilata de catre microchip. Un limbaj de programare nu se invata simplu cu click-uri de mouse in programe flowchart. Acum testez programul in mplab.Am sa atasez mai tarziu manualul dupa ce-l splituiesc. E cam mare.

Link spre comentariu

Mda. __CONFIG (bla & bla); va genera erori cat timp este in fata directivei #include .Pe de alta parte trebuie sa instalez si eu Flowchart ala sa vad in ce fel genereaza cod sursa C ca nu o mai scot din incompatibilitai. Ba ca nu este declarat prototip ba ca intra in conflict parametru cu ce a fost declarat in prototip. Pana la urma programul asta pentru care compilator creeaza sursa in C?

Link spre comentariu

Asa, de amorul artei, poti incerca sa faci codul respectiv compatibil cu picc.

Da' dupa cum ziceam intr-un post anterior, sunt destule diferente intre codul generat de Flowchart si ce asteapta picc.

Daca codul nu merge direct si trebuie modificat ceva, cum messu nu pre le are cu C-ul, va fi un proces destul de anevoios.

 

PS La instalarea picc se instaleaza si manualul. Asa ca eu il am si, daca si-a instalat picc, il are si messu.

Link spre comentariu

Cam ce am gasit in help de la Flowcode

Compiling with non standard applicationsFlowcode is optimized for use with the Boost C compiler and linker and the C code may not be appropriate for other compilers.

Asa ca m-am lamurit la faza asta. Schema logica facuta cu Flowcode dupa generare cod C vom avea un program scris specific pentru compilatorul Boost C. Adaptarea la alt tip de compilator nu este dificila daca stii ce ai vrut sa faci in el. Eu nu am studiat in amanunt programul plus ca eu am interes pentru compilatoarele CC5X si SDCC. Perioada asta nu prea am timp sa studiez diferentele intre HI-Tech PICC si BoostC pentru a face modificarile necesare.@messu. Eu de vreo juma de an incerc sa inteleg C-ul si sunt dependent de manual si help. Cauta sa citesti un manual despre limbajul C in general, nu doar cel specific pentru PIC. Eu am un manual mai vechi pentru clasa a X-a care ma ajutat mult. Nu mai zic de net.Pentru o analiza viitoare nu ar strica si fisierul .fcf.
Link spre comentariu

Va multumesc mult prentru sugestii si pentru ajutor, in general.Nu incerc sa invat C cu click-uri pe un flowchart :) dar de acolo am plecat si e cam singurul reper, momentan...Din pacate stau FOARTE RAU cu timpul si nu cred ca o sa invat C prea curand, sau vreodata...Nu incerc sa va transmit voua "spre rezolvare" treburile mele lagate de microcontrollere, dar speram sa gasesc o solutie simpla la o problema (in cazul de fata) foarte simpla. Probabil ca cei mai multi nici n-ar folosi un uC pentru ce vreau eu sa fac :)Cam asta ar fi povestea.Numai bine !

Link spre comentariu

Pentru a compila sub MPLAB programul generat de Flowcode, fara probleme, va trebui sa instalezi Boost C in MPLAB. Insa din cate am vazut Flowcode poate genera Hex-ul si chiar sa programeze pic-ul prin Pickit 2.La intrebarea ta. Ce compilator sa folosesti? Raspunsul e dificil. Tine de subiectivism in mare parte pentru ca de regula primul compilator folosit va fi si referinta in cazul comparari cu alte oferte. Cand am avut de realizat un prog in C intr-un timp scurt am ales CCS in ciuda faptului ca nu-l agreez. Nu ofera portabilitatea care o doream. Pentru picc de la Hi TECH gasesti pe net o gramada de librarii realizate de altii programatori. Dar de ceva timp HI Tech este incorporata in firma Microchip. SDCC este open source, se ocupa si de pic-uri, dar partea de microchip este in dezvoltare relativ de putin timp. CC5X, din cate am citit, realizeaza hex-uri compacte eficiente ca spatiu. Boost C m-a surprins prin evolutia lui ca din cate am inteles este bun la viteza. Plus ca se lucreaza mult la realizarea de librarii.Insa elementarul elementar in programare este schema logica a unui program, ca practic asta face si Flowcode. Este o aplicatie orientata pe realizarea de scheme logice. In timpuri mai vechi se faceau cu creion si radiera.

Link spre comentariu
  • 3 luni mai târziu...

Ce parere aveti de MPLAB X (beta momentan)/MPLAB cu HI-THECH C ? Eu lucrez cu MikroC PRO pentru ca nu trebuie sa fac o gramada de initializari la inceput si are multe librarii gata implementate , dar de la o vreme nu imi prea place cum merg unele lucruri , asa ca m-am uitat peste HI-TECH C insa nu prea stiu ce poate oferii legat de usurinta utilizarii ... am vazut si MPLAB X la care imi place ca au abandonat vechea interfata pentru netbeans.Asi mai vrea sa stiu cam cita memorie ocupa apelul lui printf/sprintf .

Link spre comentariu

picc (compilerul de la Hi-Tech) folosesc de ceva timp si-mi fac treaba cu el; nu stiu cat ocupa functia printf, ca n-o folosesc.

Mplabx l-am testat numai in linux. Cu beta4 am reusit sa programez/debugez 18F452 folosind icd2; la beta5/beta6 am avut probleme cu ICD2 (clona) - mi s-a bulit firmware-ul din 18F4450 (interfata USB), asa ca nu pot zice mare lucru.

 

LE Am povestit cate ceva la vremea testelor in topicul cu linkurile pentru pic.

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