Jump to content


Photo

Lucreaza cineva cu FLOWCODE ?


  • Please log in to reply
644 replies to this topic

#1 OFFLINE   bercioiu

bercioiu

    Membru

  • Membri
  • PipPip
  • 840 posts
  • Locatie:Bucuresti

Posted 14 March 2007 - 12:13 PM

Salutare la toata lumea! Dupa lungi cautari am gasit un program cu care se poate realiza un program pentru Pic-uri fara sa ai cine stie ce cunostiinte despre programare...Este vorba de "FLOWCODE"...Toate bune si frumoase; am facut programul in "FLOWCODE", l-am simulat, totul pare sa fie OK dar cand il downloadez in PIC nu "face" nimic... Folosesc programatorul AD-PIC01V de la Adelaida si ICprog...Am incercat si cel mai simplu program sa blink-uiesc un led dar nimic...Mentionez ca in programul meu am nevoie de toti pinii, deci folosesc oscilator intRC si master clear intern. config word in ICprog am pus 3f18 iar in Flowcode am setat clock speed la 4 MHz...Nu stiu ce gresesc...Dau o bere mare daca ma scoate cineva din necaz!

Cu_reclama

Cu_reclama
  • Membri

#2 OFFLINE   bercioiu

bercioiu

    Membru

  • Membri
  • PipPip
  • 840 posts
  • Locatie:Bucuresti

Posted 14 March 2007 - 12:22 PM

Acesata este codul in C pe care il genereaza FLOWCODE:


//Defines for microcontroller
#define P16F88
#define MX_EE
#define MX_EE_TYPE2
#define MX_EE_SIZE 256
#define MX_SPI
#define MX_SPI_B
#define MX_SPI_SDI 1
#define MX_SPI_SDO 2
#define MX_SPI_SCK 4
#define MX_UART
#define MX_UART_B
#define MX_UART_TX 5
#define MX_UART_RX 2
#define MX_I2C
#define MX_I2C_B
#define MX_I2C_SDA 1
#define MX_I2C_SCL 4
#define MX_PWM
#define MX_PWM_PORT portb
#define MX_PWM_TRIS trisb
#define MX_PWM_CNT 1
#define MX_PWM_0 0

//PIC Functions
#include
#pragma CLOCK_FREQ 4000000

//Configuration data
#pragma DATA 0x2007, 0xffffffff
#pragma DATA 0x2008, 0xffffffff

//internal functions
#include "C:\Program Files\Matrix Multimedia\Flowcode V3\FCD\internals.c"

//Macro function declarations


//Variable declarations



//Supplementary defines


//Macro implementations

//Supplementary implementations


void main()
{

//PIC Initialisation
ansel = 0;
cmcon = 0x07;


//Interrupt initialisation code
option_reg = 0xC0;


//Loop
//Loop: While 1
while( 1 )
{
//Output
//Output: 1 -> A0
trisa = trisa & 0xfe;
if (1)
porta = (porta & 0xfe) | 0x01;
else
porta = porta & 0xfe;


//Delay
//Delay: 500 ms
delay_ms(255);
delay_ms(245);


//Output
//Output: 0 -> A0
trisa = trisa & 0xfe;
if (0)
porta = (porta & 0xfe) | 0x01;
else
porta = porta & 0xfe;


//Delay
//Delay: 500 ms
delay_ms(255);
delay_ms(245);


}


mainendloop: goto mainendloop;
}

#3 OFFLINE   vsurducan

vsurducan

    Membru

  • Membri
  • PipPip
  • 521 posts

Posted 17 March 2007 - 10:59 AM

Flowcode se gaseste aici:
http://microcontroll... ... cts_id=527
Banuiesc ca aveti full version...

Acesata este codul in C pe care il genereaza FLOWCODE:


//Defines for microcontroller
#define P16F88
#define MX_EE
#define MX_EE_TYPE2
#define MX_EE_SIZE 256
#define MX_SPI
#define MX_SPI_B
#define MX_SPI_SDI 1
#define MX_SPI_SDO 2
#define MX_SPI_SCK 4
#define MX_UART
#define MX_UART_B
#define MX_UART_TX 5
#define MX_UART_RX 2
#define MX_I2C
#define MX_I2C_B
#define MX_I2C_SDA 1
#define MX_I2C_SCL 4
#define MX_PWM
#define MX_PWM_PORT portb
#define MX_PWM_TRIS trisb
#define MX_PWM_CNT 1
#define MX_PWM_0 0

//PIC Functions
#include
#pragma CLOCK_FREQ 4000000

//Configuration data
#pragma DATA 0x2007, 0xffffffff
#pragma DATA 0x2008, 0xffffffff


configuration data pare sa fie defect, trebuie sa setati in icprog fuzibilele in mod corespunzator cu realitatea de pe cablajul dvs.

//internal functions
#include "C:\Program Files\Matrix Multimedia\Flowcode V3\FCD\internals.c"

//Macro function declarations


//Variable declarations



//Supplementary defines


//Macro implementations

//Supplementary implementations


void main()
{

//PIC Initialisation
ansel = 0; ; AN 6:0 sunt toti IO, AD dezactivat
cmcon = 0x07; ; comparatoare dezactivate


//Interrupt initialisation code
option_reg = 0xC0;
; pull up enabled, interrupt on rising edge RBO/INT, prescaller assigned to TMR0, rata 1:2

//Loop
//Loop: While 1
while( 1 ) ; forever loop
{
//Output
//Output: 1 -> A0
trisa = trisa & 0xfe;
if (1)
porta = (porta & 0xfe) | 0x01;

; porta si logic cu 0xFE mascheaza bitul A0, rezultatul mascarii ® sau logic cu 0x01 inseamna 1 pe A0 daca R este 1 respectiv 0 pe A0 daca R este 0. O aiureala de cod, probabil gresiti ceva in flowchart

else
porta = porta & 0xfe;


//Delay
//Delay: 500 ms
delay_ms(255);
delay_ms(245);


//Output
//Output: 0 -> A0
trisa = trisa & 0xfe;
if (0)
porta = (porta & 0xfe) | 0x01;
else
porta = porta & 0xfe;

; nu exista nici o diferenta intre codul trimis pentru 1 logic si 0 logic, n-are cum sa palpaie LED-ul

//Delay
//Delay: 500 ms
delay_ms(255);
delay_ms(245);


}


mainendloop: goto mainendloop;
}



#4 OFFLINE   vsurducan

vsurducan

    Membru

  • Membri
  • PipPip
  • 521 posts

Posted 17 March 2007 - 12:17 PM

Flowchartul dvs e bun. Altceva e baiul.
Extensia trebuie schimbata in blink_A0.fcf
Uitati-va la fila cu extensia *.asm.

#5 OFFLINE   bercioiu

bercioiu

    Membru

  • Membri
  • PipPip
  • 840 posts
  • Locatie:Bucuresti

Posted 18 March 2007 - 09:15 AM

Uitati-va la fila cu extensia *.asm.

Iti multumesc pentru raspuns! Daca as intelege ce mi-ai raspuns, crede-ma ca nu as fi apelat la Flowcode... Astept sa-mi vina Versiunea full de la ei si hardware-ul de la e-blocks ca sa faca ele treaba asta, alfel este peste puterea mea de a intelege...Sunt pe dinafara...nu reusesc sa vad atasamentul ta. Oricum iti multumesc! :partyman:

#6 OFFLINE   vsurducan

vsurducan

    Membru

  • Membri
  • PipPip
  • 521 posts

Posted 18 March 2007 - 10:52 AM


Uitati-va la fila cu extensia *.asm.

Iti multumesc pentru raspuns! Daca as intelege ce mi-ai raspuns, crede-ma ca nu as fi apelat la Flowcode... Astept sa-mi vina Versiunea full de la ei si hardware-ul de la e-blocks ca sa faca ele treaba asta, alfel este peste puterea mea de a intelege...Sunt pe dinafara...nu reusesc sa vad atasamentul ta. Oricum iti multumesc! :partyman:


Se pare ca l-a sters.
Dupa salvarea fisierului in care desenati organigrama veti avea ceva de genul nume.fcf
Puteti compila in C sau in assembler. Selectand assembler veti obtine un fisier nume.asm pe care-l puteti inspecta in Notepad.
Acolo veti vedea de fapt ce se intampla cu frumosul flowchart desenat si cat de imbarligat este codul asm.
Fila hexazecimala nume.hex pe care o inscrieti in PIC este creata fie pe baza compilarii fisierului nume.asm fie a fisierului nume.c
Nume.c este un fisier echivalent cu ce ati postat dvs anterior si nu ofera informatii foarte detaliate in cazul unui program cu bug-uri

Imi place softul asta, dar nu cred sa puteti realiza programe foarte complexe. Daca va functioneaza ceva mai complicat (un LCD si un keypad de exemplu) va rog sa postati rezultatul, chiar si un "imi merge" ajunge.

succes

#7 OFFLINE   bercioiu

bercioiu

    Membru

  • Membri
  • PipPip
  • 840 posts
  • Locatie:Bucuresti

Posted 18 March 2007 - 11:27 AM

Imi place softul asta, dar nu cred sa puteti realiza programe foarte complexe. Daca va functioneaza ceva mai complicat (un LCD si un keypad de exemplu) va rog sa postati rezultatul, chiar si un "imi merge" ajunge.

succes


Iti multumesc pentru raspunsul promt. Algoritmul de programare il cunosc (schema de baza scriere program>compilare>upload-are in mcu ) dar nu ma descurc practic cu ce cunostinte am asa ca, apelez la softuri specializate sa ajute puturosi...Proiecte prea complicate nici nu am, am in proiect sa-mi realizez un modul de ridicare geamuri , un modul de pornire al motorului si o alarma pornind de la inchiderea din telecomanda (am 3 canale) montata pe Passat . Flowchart-urile le-am realizat, programele functioneaza bine in Flowcode dar nu reusesc sa le pun in mcu...asa ca astept sa-mi trimita cei de la matrix multimedia tot ce-mi trebuie sa imi pot definitiva proiectele. Daca ai flowcode iti pot trimite un flowchart de la unul din module sa vezi despre ce-i vorba. Te rog sa mi te adresezi la persoana I ca ma sim inconfortabil cu 'puteti" sau "folositi" ... Inca odata iti multumesc!

#8 OFFLINE   iliehar

iliehar

    Nou venit

  • Membri
  • Pip
  • 6 posts

Posted 21 April 2010 - 10:48 PM

Stie cineva in Flowcode progamul in realitate ruleaza ca in simulare , adica daca ai un timer in progam nu mai trece de el pana nu finalizeaza timpul .
Mi se pare absurd eu vreau sa pun un timer doar pe ceva si restul progamului sa lucreze independent.
Adica mai multe lini de progam sa lucreze simultan fara sa se astepte una pe cealalta.
Stie cineva?

#9 OFFLINE   ADiN

ADiN

    Nou venit

  • Membri
  • Pip
  • 55 posts

Posted 28 April 2010 - 07:31 PM

Salutare ,

Eu folosesc flowcode 4 am folosit si 3 ce vreau sa iti spun e sa ai grija sa setezi tipul de oscilator pe care il folosesti tu ca pe default este RC. Eu acolo am avut probleme.


Bafta

#10 OFFLINE   script22

script22

    Membru

  • Membri
  • PipPip
  • 327 posts

Posted 01 June 2010 - 01:49 AM

Stie cineva in Flowcode progamul in realitate ruleaza ca in simulare , adica daca ai un timer in progam nu mai trece de el pana nu finalizeaza timpul .
Mi se pare absurd eu vreau sa pun un timer doar pe ceva si restul progamului sa lucreze independent.
Adica mai multe lini de progam sa lucreze simultan fara sa se astepte una pe cealalta.
Stie cineva?



ar trebui sa mearga baga partea de program activa intr-un loop iar delayurile punele dupa.

e interesant flow code asta nici eu nu stiu programare dar mi-a dat un impuls.
vezi versiunea demo are multe exemple studiaza-le pe fiecare in parte si ai sa vezi ca se pot face destule chestii frumoase.

pe mine flowcode ma ajutat sa invat basicul am prins ideia de "limbaj de programare"
lupta-te cu el si ai sa reusesti

#11 OFFLINE   Liviu M

Liviu M

    -

  • Membri
  • PipPipPipPipPip
  • 3,077 posts
  • Locatie:In sat cu Doru

Posted 01 June 2010 - 07:25 AM

Stie cineva in Flowcode progamul in realitate ruleaza ca in simulare , adica daca ai un timer in progam nu mai trece de el pana nu finalizeaza timpul .
Mi se pare absurd eu vreau sa pun un timer doar pe ceva si restul progamului sa lucreze independent.

Daca vrei paralelism ("multitasking" :rade: ) de la un PIC, trebuie sa lucrezi cu intreruperi.
Adica programezi timerul sa-si faca treaba, programezi restul codului sa faca ce-ti trebuie, activezi intreruperile (generala si pentru timer) si in functia de tratare a intreruperilor, in care ajungi cand timerul genereaza intreruperi, faci prelucrarile ulterioare "terminarii" timerului.

#12 OFFLINE   Stefan Nicolae

Stefan Nicolae

    Opozitia

  • Moderatori
  • 4,645 posts
  • Locatie:KN24KU

Posted 01 June 2010 - 10:35 AM

FlowCode este simplu de utilizat dar nu inveti programare cu el (programarea este esentiala) , pentru a realiza cateva jocuri de lumini e excelent dar la programe mai complexe deja pare mai simplu microPascal/C :rade:

#13 OFFLINE   bobinatorul

bobinatorul

    Coffee Service

  • Membri
  • PipPip
  • 204 posts
  • Locatie:BUCURESTI

Posted 28 September 2014 - 11:47 AM

Salut! De curand am inceput sa folosesc si eu flowcode(bata fiind in limbaje de programare)

Dupa zeci si sute de ore de documentare am inteles cat de cat cum sta treaba cu picurile si arhitectura lor.

Primul meu proiect cu flowcode simuleaza sau ar trebui sa simuleze initializarea unui automat de cafea(dat fiind faptul ca imi este cunoscuta logica de functionare).

In program am folosit pic16f876,display lcd si un sensor de temperature.Toate bune si frumoase.deschid proteus implementez schema ,incarc hexul generat de flow code insa

in simulare display-ul nu afiseaza nimic doar se apride.

Exista cumva incompatibilitati intre flowcode si proteus,gresesc eu undeva sau flowcode nu genereaza ce trebuie?

Multumesc celor ce isi pot face timp sa raspunda la acest topic.

PS:urmatorul pas in simularea automatului este adaugarea tastaturii corespunzatoare bauturilor,aici cred ca va trebui sa folosesc intreruperile sau timer-ele(cred)



#14 OFFLINE   UDAR

UDAR

    Membru evoluat

  • Membri
  • PipPipPipPipPip
  • 4,061 posts
  • Locatie:Cluj Napoca

Posted 28 September 2014 - 12:17 PM

Din câte știu eu , lui Proteus nu-i pasă ( și nici nu știe ) cum s-a generat  .hex-ul , totul este să conțină cod .asm compatibil cu µC simulat și să fie într-un format pe care îl înțelege . Despre FlowCode  nu am habar , am înțeles doar că nu-i chiar un limbaj de programare .



Cu_reclama

Cu_reclama
  • Membri

#15 OFFLINE   bobinatorul

bobinatorul

    Coffee Service

  • Membri
  • PipPip
  • 204 posts
  • Locatie:BUCURESTI

Posted 28 September 2014 - 01:10 PM

Multumesc mult pentru raspuns.

In utima ora am studiat mai bine datele despre display si am gasit buba.

In flowcode conexiunea am facut-o cu data 0,1,2 si 3 la portb insa in proteus am folosit 4,5,6 si 7 la portb cred ca asta se refera la conexiunea in 4biti a display-ului.

Daca este asa accord un minus pentru flowcode.Tind sa cred ca vor mai fi multe avand in vedere spusele colegilor de mai sus insa voi merge in continuare cu el.

Cumva hexul generat de flowcode are o dimensiune mai mare decat daca ar fi fost creat cu un limbaj de programare specializat?






1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users