Fungerar det att programera en PIC/BASIC stamp med C++?

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
lolzor
Inlägg: 16
Blev medlem: 12 januari 2009, 16:40:46

Fungerar det att programera en PIC/BASIC stamp med C++?

Inlägg av lolzor »

Hej där!
Som det framgår av rubriken så är jag lite undrande huruvida man kan programera en PIC i C++, eller om det bara går med C?

För/nackdelar i sådana fall?
Konsekvenser rent tekniskt?

edit:

Håller annars på att försöka lära mig assembler, men då jag finner det rätt jobbigt att kompliera programmen i det språket (troligen beroende på okunskap), så skulle ja föredra C++

Edit: Stavning / blueint
v-g
EF Sponsor
Inlägg: 7875
Blev medlem: 25 november 2005, 23:47:53
Ort: Kramforce

Re: Fungerar det att programera en PIC/BAISC stamp med C++?

Inlägg av v-g »

Rent teoretiskt går det ju men om du inte har originalmjukvaran till processorn som sitter på BS2 kommer du troligen mest sabba den. BS2 fungerar som så att det du kodar läggs i en minneskrets som processorn läser ur "on the fly" så att säga. Det är en av anledningarna att BS är så tröga.

Vill du koda riktigt kör PIC/AVR (Helst PIC då ;) ) kostar en femtilapp för en med 10 gånger mer fjutt än vad du får ur BS2. Läs lite här så hittar du info om hur man går till väga, en RIKTIG programmerare typ WISP648 för PIC rekommenderas, det är inte i den ändan man vill börja bråka.
lolzor
Inlägg: 16
Blev medlem: 12 januari 2009, 16:40:46

Re: Fungerar det att programera en PIC/BAISC stamp med C++?

Inlägg av lolzor »

Var mest för PIC;ar jag tänkte på :)
Ska nämligen med största sannolikhet köpa hem en "BOE-BOT" och då är ju basic ändå en bra start då det finns manual etc för det :)

Men om jag sen fortsätter (vilket ja hoppas :) ) med robotbygge etc. Fungerar det då att programera en pic i C++? (Det var det som egentligen var det väsentliga :P)
Användarvisningsbild
psynoise
EF Sponsor
Inlägg: 7225
Blev medlem: 26 juni 2003, 19:23:36
Ort: Landvetter

Re: Fungerar det att programera en PIC/BAISC stamp med C++?

Inlägg av psynoise »

Freescale HC08 är optimerad för C, i IDE:n CodeWarrior kan man även välja att utveckla i C++, själv har jag ingen erfarenhet av det. Mer info hitter du såklart på Freescales hemsida.
bearing
Inlägg: 11669
Blev medlem: 2 mars 2006, 01:01:45
Ort: Ängelholm

Re: Fungerar det att programera en PIC/BAISC stamp med C++?

Inlägg av bearing »

Behöver du alla finesser som C++ har?
C är vanligare för microcontrollers och har förmodligen allt du behöver.
Mindmapper
Inlägg: 7066
Blev medlem: 31 augusti 2006, 16:42:43
Ort: Jamtland

Re: Fungerar det att programera en PIC/BAISC stamp med C++?

Inlägg av Mindmapper »

Eftersom Basic stamp 2 har en Interpreterande Basic inbyggd i processorn, spelar det inte så stor roll vad du kommer att använda i framtiden, det är andå inte likt något annat.

Inte ens kompilering får du lära dig. Om du hade problem att kompilera assembler så tycker jag att du ska kämpa vidare med det för det är kompilering alla andra vanliga språk använder.

Sen kan AVR eller Freescale HC08 vara bättre platt formar om det är robotar du strävar efter, gentemot Basic stamp alltså. Titta på Arduini t.ex. Men vad jag vet använder inte AVR heller C++, däremot är väl GCC nästan industristandard.
sodjan
EF Sponsor
Inlägg: 43243
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Fungerar det att programera en PIC/BAISC stamp med C++?

Inlägg av sodjan »

> huruvida man kan programera en PIC i C++

Nej. Och det finns knappat något behov.

> eller om det bara går med C?

Det går även med assembler och olika BASIC och Pascal kompilatorer.

> Håller annars på att försöka lära mig assembler, men då jag finner det rätt jobbigt att kompliera programmen...

På vilket sätt då ? Det är bara at klicka på "Build" knappen...

Sen så står det "stamp" i rubriken, men du frågan bara angående "PIC".
Förtydliga vad det är du tänker använda.
bearing
Inlägg: 11669
Blev medlem: 2 mars 2006, 01:01:45
Ort: Ängelholm

Re: Fungerar det att programera en PIC/BAISC stamp med C++?

Inlägg av bearing »

C++-kompilerare finns, fast verkar onödiga tycker jag.
http://www.sourceboost.com/Products/Boo ... rview.html
Användarvisningsbild
AndersG
EF Sponsor
Inlägg: 9051
Blev medlem: 25 februari 2008, 17:10:58
Ort: Mariehamn
Kontakt:

Re: Fungerar det att programera en PIC/BAISC stamp med C++?

Inlägg av AndersG »

Håller med. Styrkan i C++ är ju objektorienteringen, men samtidigt får man overhead. Tror inte att man skriver så stora program att det blir några fördelar.
Mindmapper
Inlägg: 7066
Blev medlem: 31 augusti 2006, 16:42:43
Ort: Jamtland

Re: Fungerar det att programera en PIC/BAISC stamp med C++?

Inlägg av Mindmapper »

Sodjan>
Sen så står det "stamp" i rubriken, men du frågan bara angående "PIC".
Förtydliga vad det är du tänker använda.


lolzor> Var mest för PIC;ar jag tänkte på
Ska nämligen med största sannolikhet köpa hem en "BOE-BOT" och då är ju basic ändå en bra start då det finns manual etc för det


BOE-BOT använder Basic Stamp 2. Inte helt självklart men...
Användarvisningsbild
Maxx
Inlägg: 62
Blev medlem: 24 december 2008, 02:27:59
Ort: Skåneland

Re: Fungerar det att programera en PIC/BAISC stamp med C++?

Inlägg av Maxx »

Mindmapper skrev:Eftersom Basic stamp 2 har en Interpreterande Basic inbyggd i processorn, spelar det inte så stor roll vad du kommer att använda i framtiden, det är andå inte likt något annat.
Det finns en kompilator, som bla säljs av Elfa! (Länk) Den heter MBASIC och kommer från samma företag som utvecklat Basicstamp (BasicMicro). Detta är i princip samma BASIC som den Interpreterande i stampen!

Med denna kompilator kan trådskaparen överföra sina program och kunskaper till många olika pic-ar! Jag har studerat ämnet i några veckor och tycker att detta, verkar vara en bra fortsättning på Basicstamp. Dvs om man vill börja konstruera egna kretsar (talar inte om ic-kretsar)! :D /M
lolzor
Inlägg: 16
Blev medlem: 12 januari 2009, 16:40:46

Re: Fungerar det att programera en PIC/BAISC stamp med C++?

Inlägg av lolzor »

Tackar för alla snabba svar!

Hoppas att det framgick att jag är helt ny i sådana här "kretsar" (hihi), och har egentligen ingen större kunskap i vare sig olika modeller och dylikt, även om man har försökt läsa in sig lite granna i alla fall.
Hur som helst, har fått hem min Boe-Bot och så sakta börjat lära mig lite om den iaf :p (Måste ju börja någonstans, så BAISC stamp 2 får väl duga så länge :p )

Men om jag nu får ställa en följdfråga till min föregående (jag ursäktar än en gång min totala okunskap)

Har nu insett att det antingen är C eller Assembler som gäller om man ska avancera uppåt i kunskapshierarkien...

Men vad har respektive språk för för och nackdelar i detta sammanhang?
Vilket programspråk är "bäst" att lära sig om man har en vision om att en dag kunna tänja processorns gränser till dess ände, och kunna göra t.ex robotar och automatisk ljuständning/släckning i ett rum (bara för att nämna något)?
sodjan
EF Sponsor
Inlägg: 43243
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Fungerar det att programera en PIC/BAISC stamp med C++?

Inlägg av sodjan »

Diin fråga är naturligtsvis intressant, men brukar tyvärr ge upphov till lite "krig" mellan olika läger.
Min personliga uppfattning är att det hela väldigt mycket beror på vad du vill med det hela.

Om du har ett genuint intresse för själva tekniken i sig självt, så kan assembler vara
en bra start eftersom man jobbar närmare hårdvaran så att säga. En annan fördel med
assembler är att alla exempel i datablad och "application notes" oftast är skriva i assembler.
Sedan kan man mycket väl gå över och jobba t.ex med en C kompilator, om man tycker det är
smidigare.

Kunskap om assembler är nästan alltid "bra att ha" oavsett vilket språk man använder
vanligtvis, undantaget Stamp möjligtvis...

Om det viktigaste är att det "händer något" (och det spelar mindre roll att du inte alltid
förstår varför) så kan mycket väl en Stamp eller en BASIC med mycket "inbyggt" fungera
I alla fall så länge som det inte är allt för komplext.

> och automatisk ljuständning/släckning i ett rum

Det går säkert bra med en Stamp, det är knappast att "tänja processorns gränser till dess ände"...

Du kan helt kallt räkna med att du kommer att byta ut din BASIC Stamp förr
eller senare till något som du kan köra lite mer fritt.
Mindmapper
Inlägg: 7066
Blev medlem: 31 augusti 2006, 16:42:43
Ort: Jamtland

Re: Fungerar det att programera en PIC/BAISC stamp med C++?

Inlägg av Mindmapper »

Beror på vem du frågar och var du är!

Jämför vad som är bäst SAAB, Volvo eller Hyundai. Finns massor av dessa trådar här på forumet.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46880
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Fungerar det att programera en PIC/BAISC stamp med C++?

Inlägg av TomasL »

Med assembler, egentligen inget språk, utan snarare maskininstruktionerna som fått läsbara namn istället för ettor och nollor.
Har du fullständig och total kontroll över processorns samtliga delar, och du kan göra vad som helst med den.
Däremot kan det bli lite o-överskådligt (och obegripligt) att skriva större/komplicerade program i assembler.

I C har du nästan lika bra kontroll, men inte riktigt.
Dock hanterar de flesta C-kompilatorer sk inline assembler, dvs man kan skjuta in rader eller hela block med assembler i c-koden.
Till exempel

Kod: Markera allt

void funktion (void){
en massa programkod
ytterligare en massa programkod
//nu behöver vi av nån anledning vänta en instruktionscykel (omöjligt i C)
#asmline nop
//då har vi väntat och kan fortsätta.
C-kod igen.
//Nu behöver vi ett helt block i asm
#asm
         nop
         nop
         nop
#asmend
}
Så kan man göra i C till exempel när man vill ha exakt kontroll, vilket kan vara nödvändigt i vissa lägen när man skall prata med yttre enheter.

BTW "nop" betyder på PICiska "NoOPeration", dvs gör ingenting.

Men, oavsett vilket språk/metod du väljer, MÅSTE du läsa referensmanualen+databladet+erratorna för kretsen du skall jobba med, och du MÅSTE kunna dessa utantill, som ett rinnande vatten ungefär, annars kommer du ohjälpligt att sitta fast och inte fatta nånting. (perfekt säng och toa-litteratur).
När det gäller uChips datablad så står ALLT där, det gäller bara att hitta det.
Om du skall skriva i C så är K&R "The C Programming Language" ett oumbärligt uppslagsverk (finns på Svenska också).
Lycka till
Skriv svar