 |
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
. Član

Pridružen-a: Pon 23 Avg 2004 16:16 Prispevkov: 16777190 Aktiv.: 70644.36
|
Objavljeno: Pet Avg 06, 2010 7:18 pm Naslov sporočila: |
|
|
Brisana vsebina odstranjenega uporabnika.
|
|
Nazaj na vrh |
|
 |
PrimozL Član


Pridružen-a: Tor 21 Mar 2006 10:55 Prispevkov: 404 Aktiv.: 1.72 Kraj: okolica Vipave
|
Objavljeno: Sob Avg 07, 2010 10:17 am Naslov sporočila: ST uC |
|
|
Živijo,
ST ARM uC so po zasnovi prav v redu. Delal sem en resen projekt s STR912FAW44. Pri dokumentaciji so pa malo hecni. Raje napišejo dve strani teksta, ki te bolj kot ne spravi v dvome, kot bi narisali eno sliko ali blok diagram, ki bi vse pojasnil.
Torej ti priporočam, da pogledaš, če ti njihova dokumentacija ustreza.
LP Primož.
|
|
Nazaj na vrh |
|
 |
aly Član



Pridružen-a: Tor 28 Sep 2004 14:51 Prispevkov: 9407 Aktiv.: 39.61 Kraj: Kranj - struževo
|
Objavljeno: Sob Avg 07, 2010 11:35 am Naslov sporočila: |
|
|
spy je napisal/a: |
Vendar bodi pozoren: dobavni roki za ta uC so dolgi.....pregrešno dolgi. Jaz zato ravno migriram v obratni smeri, kot ti. |
Zanimive informacije. Sem poslal povpraševanje na Ebv, pa čakam na odgovor. QFN in BGA itak ni za dobit na Farnellu, zato sem odvisen od distributerjev...
Mare69 je napisal/a: |
a je kaj v planu tudi kakšen enkoder s single wire CAN |
Žal ne - ni (še) povpraševanja za tovrstnim vmesnikom. Še za standardni dvožični CAN ni dosti povpraševanja (industrijske aplikacije, strojegradnja, motorni pogoni v glavnem rabijo inkrementalne, 3-fazne za komutacijo ali za absolutne ssi, biss).
_________________ I'm going to stand outside, so if anyone asks, I'm outstanding  |
|
Nazaj na vrh |
|
 |
alessio Član

Pridružen-a: Pon 04 Dec 2006 8:39 Prispevkov: 363 Aktiv.: 1.60 Kraj: Ljubljana
|
Objavljeno: Ned Avg 08, 2010 11:36 am Naslov sporočila: |
|
|
Da odgovorim na tvoje prvo vprašanje glede (GNU) prevajalnika:
Definitivno bi ti priporočal CodeSourcery (CS) toolchain, vsaj kar se tiče GNU izbire.
Razlog je v tem, da je CodeSourcery firma, ki je neposredno supportirana s strani ARM company.
Vsi popravki in izboljšave bodo zagotovo najhitreje vkomponirane pri CS. Obstaja več različic:
Lite, Academic, Personal, Standard & Professional. Primerjava je v spodnji tabeli:
http://www.codesourcery.com/sgpp/datasheet?target_arch=ARM&target_os=EABI
V Lite različici je, tako kot pri WinArm in Yagarto, vključen samo prevajalnik, assembler, linker.
Ta verzija je prostopdostopna in odprtokodna. Ni pa v tej različici vključenih IDE-ja, knjižnic, malo bolj sofisticiranega debuggerja ipd.
Tole je zadnji release:
http://www.codesourcery.com/sgpp/lite/arm/portal/release1294
CS je definitivno prva izbira po mojem mnenju glede GNU toolchain-a za ARM core.
Vendar, sam sem sicer kar lep čas uporabljal CS lite, vendar sem pred časom presedlal na Keil in ugotovil da se nam je investicija v Keil že parkrat povrnila
(v smislu večje produktivnosti, hitrejšega odpravljanja težav, komercialnega supporta...) Basic različica stane okoli 2k€, kar je za profesionalno orodje in uporabo za profesionalne namene zelo ugodno.
Izbira STM32 MCU-jev se mi zdi dobra. Trenutno jih veliko uporabljamo. Prej so bili v igri MCU-ji z ARM-core NXP LPC2xxx in LPC1xxx ter Luminary LM3Sxxxx.
V splošnem se strinjam z Umnikom, da imajo relativno zakomplicirano periferijo,
vendar je ta res dobro dokumentirana in za vsako obstaja LLD driver. Ti driverji sicer niso optimalni iz vidika hitrosti in prostora,
vendar so ti lahko dobra osnova, da si napišeš optimalne driverje za svoje specifične potrebe.
http://www.st.com/stonline/products/support/micro/files/stm32f10x_stdperiph_lib.zip
Sicer pa je moje vodilo pri izbiri MCU-jev:
1. Dobavljivost
2. Periferija
3. CPU performance
4. Cena
5. Support
LPC11Cxx bi bil sicer idealen za en aktualen projekt, vendar pade na 1. kriteriju.
Tako da je šel v BOM STM32F103C6xx.
_________________ Question is more important than the answer.(Plato) |
|
Nazaj na vrh |
|
 |
domen_puncer Član

Pridružen-a: Čet 01 Maj 2008 13:30 Prispevkov: 78 Aktiv.: 0.37 Kraj: Ljubljana, Mozirje
|
Objavljeno: Tor Avg 10, 2010 8:39 am Naslov sporočila: |
|
|
stm32f103 v sluzbi uporabljam ze leto in pol in meni so kar fajni. Tudi na qfp48 dobis dosti periferije, za kar pri lpcjih moras vzet 80 pinski 17xx.
Drugace nimam nekih pripomb, razen njihovih poimenovanj (value, performance, blabla line), pa tega, da v softwaru ne mores zaznati (vsaj "lepo" ne) tocno kateri uC uporabljas.
Delam z gnu orodji (arm lite s codesourcery), openocd (amontecov jtag dongle). ISP loaderja se nisem uporabljal, ampak ko sem jih iskal so tile izgledali zanimivi:
http://mercurial.intuxication.org/hg/stm32loader
http://sourceforge.net/projects/sloadhost/files/
Programiral sem tudi boot-up zadeve, kaj v asm itd.
Ko bos imel kak zanimiv problem sporoci
_________________ Tiskanje sudoku |
|
Nazaj na vrh |
|
 |
aly Član



Pridružen-a: Tor 28 Sep 2004 14:51 Prispevkov: 9407 Aktiv.: 39.61 Kraj: Kranj - struževo
|
|
Nazaj na vrh |
|
 |
spy Član


Pridružen-a: Sre 06 Sep 2006 20:43 Prispevkov: 403 Aktiv.: 1.76 Kraj: Tržič
|
Objavljeno: Čet Avg 12, 2010 1:15 pm Naslov sporočila: |
|
|
aly je napisal/a: |
z dobavnimi roki ni večjih težav |
Odvisno, kaj so "večje težave". Za mojo verzijo 103-ke je dobavni rok pol leta....
Sicer pa, se že veselim diskusij okoli tega čipovja na forumu... meni osebno je simpatičen uC-ček.
|
|
Nazaj na vrh |
|
 |
aly Član



Pridružen-a: Tor 28 Sep 2004 14:51 Prispevkov: 9407 Aktiv.: 39.61 Kraj: Kranj - struževo
|
Objavljeno: Čet Avg 12, 2010 4:23 pm Naslov sporočila: |
|
|
Saj imajo vsi dobavni rok okrog pol leta
Današnji podatki:
p.s. Ledica še vedno noče blinkat
_________________ I'm going to stand outside, so if anyone asks, I'm outstanding  |
|
Nazaj na vrh |
|
 |
. Član

Pridružen-a: Ned 19 Sep 2004 22:04 Prispevkov: 16777193 Aktiv.: 70644.37
|
Objavljeno: Čet Avg 12, 2010 9:56 pm Naslov sporočila: |
|
|
Brisana vsebina odstranjenega uporabnika.
|
|
Nazaj na vrh |
|
 |
aly Član



Pridružen-a: Tor 28 Sep 2004 14:51 Prispevkov: 9407 Aktiv.: 39.61 Kraj: Kranj - struževo
|
Objavljeno: Ned Okt 17, 2010 9:22 pm Naslov sporočila: |
|
|
borisz je napisal/a: |
Še kakšnega Atmela si umisli, pa ne boš mogel narediti serije izdelkov prej kot v enem letu. |
Heh, NXP ima pa še daljše dobavne roke kot STM
Tisti, ki jih bom rabil, so pri distributerju na lagerju. Ta drugi pa na Farnellu.
No, nazaj k temi...
Z virtualnim COM portom na STM32 se mučim, kako bi detektiral Connect in Disconnect, ki pride z računalnika. Precej težavno. Prišel sem do rutin, ki prestrezajo kontrolni promet, ne znam pa izluščit tapravih podatkov. Za connect trigger uporabim kar rutino kjer sprejme nastavitev baudrate. Disconnect pa mi je še uganka. Je kdo to že preučeval?
Pa še druga reč, če ima kdo že spisan primer kode za branje inkrementalnega enkoderja (če je verzija z uporabljenimi knjižnicami od STM), se zelo priporočam. Me nekaj zeza konfiguracija...
Hvala!
_________________ I'm going to stand outside, so if anyone asks, I'm outstanding  |
|
Nazaj na vrh |
|
 |
spy Član


Pridružen-a: Sre 06 Sep 2006 20:43 Prispevkov: 403 Aktiv.: 1.76 Kraj: Tržič
|
Objavljeno: Ned Okt 17, 2010 10:05 pm Naslov sporočila: |
|
|
Če ti kaj pomaga: glej spremenljivko "bDeviceState" in njeno stanje (verjetno si vzel že pisan primer virtualnega com porta). Jaz gledam stanje "bDeviceState == CONFIGURED" da vem, če je povezava vzpostavljena in podatki pridejo v com buffer v PCju.
BTW, kje ti gledaš dobavne roke, da ne sovpadajo z mojimi?
|
|
Nazaj na vrh |
|
 |
aly Član



Pridružen-a: Tor 28 Sep 2004 14:51 Prispevkov: 9407 Aktiv.: 39.61 Kraj: Kranj - struževo
|
Objavljeno: Pon Okt 18, 2010 8:31 am Naslov sporočila: |
|
|
spy je napisal/a: |
"bDeviceState == CONFIGURED" |
Ja, to sem tudi poskusil.
Ta spremenljivka je odvisna od stanja USB povezave in ion se postavi v Configured, ko je driver na PCju ustrezno povezan na napravo.
Žal ta spremenljivka ni odvisna od stanja virtualnega COM porta, da bi videl, ali kakšen program uporablja COM port ali ne.
spy je napisal/a: |
BTW, kje ti gledaš dobavne roke, da ne sovpadajo z mojimi? |
EBV news (mailing list). Tale je oktoberski:
_________________ I'm going to stand outside, so if anyone asks, I'm outstanding  |
|
Nazaj na vrh |
|
 |
spy Član


Pridružen-a: Sre 06 Sep 2006 20:43 Prispevkov: 403 Aktiv.: 1.76 Kraj: Tržič
|
Objavljeno: Pon Okt 18, 2010 12:11 pm Naslov sporočila: |
|
|
Aha, razumem. Connect na virCOM port s PC strani, ne USB connect stanje. Dvomim da se da s tem priloženim driverjem. Jaz sem sicer imel drug namen šariti po bufferju s strani uC, pa sem prišel do zaključka, da bo treba svoj driver napisat. Isto so mi tudi v STju rekli.
|
|
Nazaj na vrh |
|
 |
aly Član



Pridružen-a: Tor 28 Sep 2004 14:51 Prispevkov: 9407 Aktiv.: 39.61 Kraj: Kranj - struževo
|
Objavljeno: Sre Okt 20, 2010 8:25 pm Naslov sporočila: |
|
|
aly je napisal/a: |
ima kdo že spisan primer kode za branje inkrementalnega enkoderja (če je verzija z uporabljenimi knjižnicami od STM), se zelo priporočam. |
Huh! Sem se le dokopal do rešitve. In sicer:
Koda: |
// TIM3 clock enable
RCC_APB1PeriphClockCmd (RCC_APB1Periph_TIM3, ENABLE);
TIM_DeInit (TIM3); // reset
TIM_TimeBaseStructure.TIM_Period = 0xFFFF; // max
TIM_TimeBaseStructure.TIM_Prescaler = 0;
TIM_TimeBaseStructure.TIM_ClockDivision = 0;
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
TIM_TimeBaseInit (TIM3, &TIM_TimeBaseStructure);
TIM_EncoderInterfaceConfig (TIM3, TIM_EncoderMode_TI12, TIM_ICPolarity_Rising, TIM_ICPolarity_Rising);
// Clear TIM3 update pending flag
TIM_ClearFlag (TIM3, TIM_FLAG_Update);
// Enable TIM3 Update interrupt
TIM_ITConfig (TIM3, TIM_IT_Update, ENABLE);
// TIM3 enable counter
TIM_Cmd (TIM3, ENABLE); |
Lepo šteje.
_________________ I'm going to stand outside, so if anyone asks, I'm outstanding  |
|
Nazaj na vrh |
|
 |
spy Član


Pridružen-a: Sre 06 Sep 2006 20:43 Prispevkov: 403 Aktiv.: 1.76 Kraj: Tržič
|
Objavljeno: Čet Okt 21, 2010 8:33 am Naslov sporočila: |
|
|
aly je napisal/a: |
primer kode za branje inkrementalnega enkoderja |
Huh, ne boš verjel. Ravno včeraj sem se cel dan zafrkaval s tem. Najti dober algoritm, ki lepo šteje, sicer brez uporabe knjižnic (nimam obeh hallov vezanih na timer). Na koncu mi je uspelo.
Aly, daj poskusi sledeče. Osciliraj os okoli "flanke" v območju recimo enega obrata in glej, če ti slučajno zaznava (bere) več celih impulzov. Se pravi, če na meji (flanki) obrneš smer, kam ti šteje - naprej/nazaj. To je pomanjkljivost večine algoritmov, pa me zanima, kako je to rešeno v knjižnicah.
|
|
Nazaj na vrh |
|
 |
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 7 dni
Powered by phpBB © 2001, 2005 phpBB Group
|