Sida 1 av 13
Great Cow BASIC
Postat: 29 december 2008, 06:31:38
av Maxx
Den enda riktigt fria programvara för att programera PIC-ar i Basic, jag kunnat hitta. Är även ett "öppen källkods-projekt"! Någon som testat? Kom gärna med synpunkter...

/M
Great Cow BASIC
http://gcbasic.sourceforge.net/about.html
Postat: 29 december 2008, 11:31:48
av Icecap
Synpunkt?
BASIC är skit!
Vill du programmera "på riktigt" och tycker att assembler är jobbigt är det frågan för VARFÖR det är jobbbigt:
1: Besvärligt att förstå?
2: Mycket skrivande för få funktioner?
Är ditt svar 1 är mitt svar: gör om, gör rätt! Utan förståelse för hur en µC fungerar på asm-nivå förlorar man mycket.
Är ditt svar 2 är mitt svar: använd C, finns gratis till PIC också.
Med BASIC målar du dig mycket snabbt in i ett hörn, med ANSI C kan man ta med programbiter till andra projekt, jag har t.ex. använd samma programbit till PIC, Renesas M16C och Fujitsu FFMC16LX utan ändring, faktisk har jag gjort det med lite olika programbiter.
Fujitsu'n och Renesas'en är skapligt lika men de är "mycket" olika PIC'en, gör om det i BASIC.
Vissa svär till BASIC "för man kan minsann göra avancerade saker där" men det är oftast för att de inte känner till annat, jag har själv suttit i det träsk och kämpat, jag lyckades att göra "stora" program med avancerade funktioner men bara med mycket möda och besvär. Jag investerade i en Pascal... varefter proppen släppte och man faktisk kunde åstadkomma något vettigt.
Senare bytte jag till C och har inte varit ledsen för det, största skillnaden som märks är egentligen utskriftdelen, alltså formatteringen av utskrifter.
Men BASIC suger fett!
Postat: 29 december 2008, 11:51:18
av AndersG
BASIC är skit!
It is a poor workman who blames his tools..
Men OK. Håller med. Har programmerat sedan 70-talet. Det första jag lärde mig var faktiskt Basic, men jag gick snabbt vidare, över Pascal, till C/C++ och Java. Har även programmerat assembler (8080/z80, 80x86 och nu senast PIC). Har tom skrivit kommersiell kod i Basic, dock är det inte något jag gör om jag själv får välja, men ibland måste man, VBA tex.
Men PIC är ju maskinnära programmering, så du har helt rätt i att man skall börja med Assembler där.
Postat: 29 december 2008, 12:03:55
av Icecap
"It is a poor workman who blames his tools..."
Jovisst men med BASIC är det som att bygga ett hus med
SÅNA HÄR verktyg.
Och då tillåter jag mig faktisk att klaga lite på verktygen...
Postat: 29 december 2008, 12:35:38
av pheer
Ni skriver båda att ni börjat med basic eller använt det i början. Varför ska
inte Maxx också få börja harva i basic-träsket för att sakta men säkert
bygga upp lite förståelse för hårdvaran.
Postat: 29 december 2008, 12:39:56
av Maxx
Tack för synpunkter...
BASIC (Beginner's All-purpose Symbolic Instruction Code) är väl ett nybörjarspråk! Att man som professionell använder andra språk, är väl i sin ordning. Om jag inte missförstått kan man skriva och åberopa assembler-rutiner från basic-en.
Att man som nybörjar skulle börja med assembler låter lite tråkigt! Hur lång tid tar det inte innan man kan tillverka något roligt?
Det har för många blivit en konstform att optimera kod! Trots att det, i många tillämpningar, inte behövs med dagens snabba och minnesstarka prossesorer!

/M
Postat: 29 december 2008, 12:45:08
av Mindmapper
Det är väl snyggt om man kan optimera kod så att man inte behöver det värsta i MCU'väg. Även om inte prisskillnaden är så stor så kan det vara en del andra vinster med det.
Om billindustrin kunde optimera bensinförbrukningen vore det lika bra det också.

Postat: 29 december 2008, 12:50:54
av blueint
Det man kan invända mot BASIC är att det lär ut ostruktererad programmering.
Postat: 29 december 2008, 12:55:25
av sodjan
> inte behövs med dagens snabba och minnesstarka prossesorer!
Var det inte 8-bitars PICs du skulle använda ?
Me, visst, personligen är jag inte lika kategorisk som Icecap ibland kan framstå.
Om en BASIC gör att man får en "kick-start" in i PIC världen, så är det väl vackert så.
Sen kan man alltid (om intresse och behov finns) "gå vidare" och lära sig
tekniken lite djupare. Och om man tänker göra något mer än det allra
mest grundläggande så kommer i alla fall behovet att finnas...
> Det man kan invända mot BASIC är att det lär ut ostruktererad programmering.
Det beror ju väldigt mycket på ur den aktuella BASIC'en ser ut !
Det går lika bra att skriva ostrukterat i C om man bara vill...
Postat: 29 december 2008, 12:58:30
av Icecap
Maxx: du har alltså inte förstådd skillnaden...
Tankesättet är väldigt olika i mångt och mycket mellan BASIC och andra programmeringsspråk och den skillnad gör att det är extra jobbigt att migrera ifrån BASIC.
Att BASIC som språk har en hel del begränsningar är en annan sak men det är strukturen som skiljer sig och det är vad som gör det svårt, alla språk har problem som andra språk klarar av utan problem.
Då jag började med Pascal tyckte jag att det att kunde "bygga egna variabler" var något larv, vad fan skulle jag med det? char, int och long räckte väl till vettiga människor! Men nu där jag har jobbat i ett antal år förstår jag knappast att man kan klara sig utan...
Hela grejen är att BASIC är ett dåligt sätt att börja med högnivåspråk på, det är helt enkelt en återvändsgränd, alltså ville det vara oerhört bättre att lägga inlärningsenergin på ett språk som inte, i sin struktur, har en massa begränsningar som man inte kan komma förbi.
Postat: 29 december 2008, 13:01:40
av AndersG
Det går lika bra att skriva ostrukterat i C om man bara vill...
Men det är svårare. Procedurella språk som Pascal, SIMULA, C, Java har mera av strukturen inbyggt. De "tvingar" en att tänka till från början, något som "vanlig" basic inte gör, ej heller assembler, men visst går det att skriva skitsnårig kod i C om man vill, där finns ju tom ett GOTO.
Allt detta är dock av akademisk betydelse om man har en 8-bitars PIC.
Postat: 29 december 2008, 13:13:30
av laban12
Även jag började i Basic!!

På en Commodore PET-700, det var tider det!
Det är ju så GALET lätt att förstå små Basic-snurror att det är en bra ände att börja i.
Vill man förstå hur PIC/AVR fungerar så rekommenderar jag assembler! Helt klart, jag håller med ICECAP till 100%! Men vill man bara få en lysdiod att blinka, och aldrig kommer skriva mer avancerade program än så, och inte bryr sig det minsta om hur hårdvaran fungerar - visst kör då på med Basic.
Jag gick från Basic till Pascal till C till C++ till Assembler till Java, alla språk har sina för och nackdelar, samt lämpöliga plattformar.
Det viktiga är att man inte snöar in sig, utan vågar pröva något nytt. Det finns inget bättre sätt att lära sig på än att pröva!
Postat: 29 december 2008, 13:15:35
av Maxx
Tack alla, riktigt intressanta synpunkter!
Har iaf fått upp ögonen för G C BASIC-s 8 bitars begränsning!

/M
Postat: 29 december 2008, 13:18:21
av johano
Nåja, modern BASIC *är* "procedurellt", det var många år sedan man måste skriva
/johan
Postat: 29 december 2008, 13:18:56
av sodjan
> Allt detta är dock av akademisk betydelse...
Precis...
Det viktiga är att man vet vad man håller på med.
Större delen av världens IT system körs i alla fall med COBOL...

För varje gång någon gör en sökning på Google, görs det
samtidigt 170 transaktioner i applikationer skrivna i COBOL...
Det viktiga är alltid att få fram något som gör "nytta", jag har
alltid lyckats ganska bra med alla mina försök med Fortran, BASIC,
Pascal, SQL, COBOL, C eller vad det nu har varit...
Om man förstår fördelen med att strukturera koden "snyggt" så
gör man nog det oavsett vilket verktyg man använder. Om man inte
förstår det, så spelar verktyget inte heller så stor roll...
(Håller även med laban12...)
> Har iaf fått upp ögonen för GC-BASIC-ens 8 bitars begränsning!
Vilken då ?
Jag har inte kollat så noga, men är det något specifikt med just GC-BASIC ?
Alltså jämför med någon annan PIC BASIC ?