Re: Odpověď: Re: Sou?et v C - neni pro PIC jiny kompilator?

Jiri Bezstarosti jiri
Středa Březen 17 14:30:41 CET 2004


Zdravim.

Zkusil bych do toho vlozit jeste jiny pohled i kdyz
zrovna mne neni uplne vlastni, prece jen se na to
zkusim podivat taky "jinyma" ocima.

Je spousta lidi, kteri nepotrebuji z jednochipu vytahnout
maximalni vykon a jen by radi treba vygenerovali
kus kodu, ktery treba jen na stisk tlacitka vzdy
na nejake brane neco vygeneruje (treba ovladani
frekvence fazoveho zavesu u oscilatoru prijimace
pres I2C nekolika tlacitky atp.).

Je i spousta elektroniku, kteri ackoli jednochipy
nepouzivaji, jejich vlastnosti by krasne vyuzili,
jen kdyby je to tolik netahalo od treba analogove
techniky do programovani, ke kteremu citi vrozeny
odpor (to je jen priklad, ale verim ze se v tom mozna
nekdo i najde).

Ti, kteri berou kazdou instrukci navic jako zlo, ktere
je treba odstranit, neoceni Vas vytvor tolik, jako
ti, kteri proste obcas potrebuji jednochip a nechteji
se to ucit - alespon ne dele nez jeden vecer :).
Ten kdo to umi, si vzdycky nejak poradi a mezi
takovymi lidmi prosadit novy produkt je asi spise
husarsky kousek.

Tedy videl bych to cele takto. Pokud by cele prostredi
bylo jako textovy editor, ve kterem budou z menu ovladany
vsechny funkce, vcetne kompilace a vlozeni programu
pres programator do jednochipu, najde se spousta lidi,
kteri po tom sahnou a uz se dal nikdy nehnou, protoze
i toto uz je vice, nez si mysleli ze nekdy budou delat.

Vim velice dobre, ze nejnavstevovanejsi clanky na webu
jsou pro zacatecniky. Dostal jsem par dopisu ve stylu:
nikdy to sice delat nebudu, ale po precteni uz vim o cem
to asi je. Presne tito lide by opravdu potrebovali nastroj, ktery
v sobe skryva vsechno co potrebuji - uz jen to ze, je potreba
zdrojak zkompilovat neni vsem uplne jasne. Psal mi clovek,
ktery tvrdil, ze nemuze program dostat do jednochipu - tedy
ze to nefunguje. Kdyz jsme to probrali, zjistilo se, ze se
pokousi vypalit do jednochipu primo ASM soubor, ktery
si nekde stahl (jiste, je to extrem, ale jak ctete, i to se deje).

Pokud tedy umoznite napsat temto lidem program treba
v jednoduchem BASICu nebo necem podobnem a jednim
tlacitkem ho pokud je syntakticky OK dopravite jako zkompilovany
az do jednochipu, budou nadseni. Ze to pojede pomalu,
neco nepujde realizovat z hlediska stihani atd. - vubec nereste.
Cele by to mohlo byt plne knihoven, ktere by se ale nevkladaly
do zdrojaku jako INCLUDE, ale proste by kompilator znal vsechno
podle verze one velke knihovny, ktera by sla vzdy stahnout nejnovejsi
z webu, zpetne kompatibilni. O tom, ze se do kodu pak zaradi jen co
je potreba asi psat nemusim. A nejlepe by bylo jak jen to je mozne
take pred takovym programatorem-uzivatelem skryt i SFR a nastavovat
je treba jen nejakymi prikazy, primo k tomu stvorenymi.

Jiste uz Vas napadlo, ze by to byla dost dobra nahrada ruznych
modulu, ktere pracuji s BASICem a provadeji program z I2C
EEPROM - jsou drahe a vykon je prinejmensim diskutabilni, ale slavi
uspech tim co uz jsem popsal. Pritom staci, aby se cela kompilace
skryla pred ocima uzivatele, seriovy port pro pumpovani programu
nahradil ICSP a uspech je zarucen. Typu PIC to podporovat opravdu
moc nemusi, protoze takovy PIC16F627 a 8 je dostatecny
na vetsinu toho, co si kdo vymysli a kdyz nekdo potrebuje
podobny nastroj, neni pro nej setreni desetikorun nijak dulezite
a vetsinou mu ani vice pinu nijak moc chybet nebude - jinak by si to
totiz nekam zadal napsat. Navic jeden typ je pro mnoho zacatecniku
sympatictejsi, protoze velka rozmanitost muze dost odrazovat.
A chip s FLASH je jasne nutnosti, neni asi potreba rozebirat proc
- tedy pro tento ucel.

Asi nema cenu delat spickovy ostry nastroj pro uzkou skupinu lidi,
ale spise tupejsi nastroj pro obri masu lidi. Kdyz k tomu nechate
nasekat kabliky (kabel-programator) a zverejnite schema, muzete
dodavat takoveto prostredi opravdu ve velkem meritku - staci trochu
udelat reklamu a napsat k tomu vice vhodnych aplikaci a to nejlepe tak,
aby si v tom kazdy nasel to svoje. Tedy napr. na "obal" se napise, ze je
v tom program a ted si vymyslim - pro automaticke zavlazovani zahradky,
pro otevirani garaze tel. kartou, pro nabijeni aku, pro rizeni modelovych
zeleznic, pro .... atd. atd., proste aby to kazdeho zaujalo a nasel tam
minimalne neco podobneho. Verte mi, ze je spousta lidi, co se pak radi
pochlubi svym vytvorem a pak muze i vznikat velky archiv uz hotovych veci.
Co na tom, ze se slusnemu elektronikovi z nekterych z nich zjezi vlasy.
On se pak takovy autor totiz pochlubi kamaradum a vite jak u nas pracuje
zavist - taky tam musim neco mit a lepsiho a retezec ja zapocat a projekt
zije - ale to uz asi bylo prilis idealisticke pojeti :).

Takze misto premysleni nad vhodnosti jazyka, ktery kde usetri
kolik casu ci bajtu, bych se zabyval predevsim tim, pro koho to ma
vlastne byt. To muze pak dat odpoved na hromady otazek samo
a nektere veci uz pak treba ani nebude potreba nijak zvlast
diskutovat - vsechno bude jasnejsi. Dalsi dulezita otazka je, zda
z toho chcete take neco ziskat, nebo si udelat poradnou reklamu,
nebo se jen pochlubit "jak jsem chytry". Kazda z techto moznosti
zase predpoklada jiny vysledek. Pokud se pocita se spickovym
vysledkem pro treti moznost, pak jiste muzete me uvahy zavrhnout
jako naprosto k nicemu, protoze k tomu prakticka hlediska opravdu
neni treba nijak zohlednovat.

Za trochu delsi prispevek se omlouvam, ale treba nekoho privede
k zamysleni nad tim, co se vlastne chce ci ma udelat a cela debata
bude hned vecnejsi, tj. navrhy co by to melo a nemelo delat a take
se pak muzeme dohodnout, ze treba ja k tomu udelam tu napousteci
cast, protoze to mam slusne osahane (transport BIN do jednochipu),
a dalsi lide k cemu budou svolni, nebo co uz psali a mohou dat
k dispozici atd.. Takze by se ve vysledku slepilo cele prostredi tak,
ze by kazdy delal pomerne nezavislou cast a neslapali bychom si
pritom na nohy :). Krasny priklad jsou treba knihovny, kde nekdo muze
napsat LCD, nekdo jiny treba I2C atd., ale s tim, ze se predem dohodne,
jak se zohledni taktovaci frekvence zvolena v prostredi atd., tedy budou
predem znamy alespon nejzakladnejsi moznosti voleb celeho prostredi.

A co to chce na zaver ? Nekoho kdo to cele povede, protoze jinak
je to uplne o nicem. Ale kdyz rikam povede, tak opravdu povede
a kdyz nekomu neco hodi na hlavu, ze to nevyhovuje, bude to jen jeho
rozhodnuti, ktere se bude respektovat. Jakkoli se to zda drsne, tohle
je nutne i u ciste zajmovych seskupeni, pokud se ma vubec neco udelat
a hlavne dodelat ... (aby si to nekdo nevysvetloval jinak nez to myslim,
tedy ze bych to chtel "sefovat" ja, pak verte ze nechtel, uz jen proto,
ze snad vim, o cem to je.)

Snad jsem byl dostatecne vecny. Souhlasit se mnou nemusite, od toho
je to konference :).

--
Jiri Bezstarosti





Další informace o konferenci Hw-list