Fórum témák

» Több friss téma
Fórum » ARM - Miértek hogyanok
 
Témaindító: gtk, idő: Jún 26, 2007
Lapozás: OK   50 / 177
(#) Topi hozzászólása Júl 26, 2014 /
 
Sziasztok!

Adott egy elég komplex aramkor, stm32-vel. Keves olyan perifériája van, ami nincs hasznalva.
A helyzet az, hogy egyik pillanatrol a masikra egyik-masik modul fejlesztese kozben derult ki, hogy az ethernet link neha eltunik. Semmi gond, kutakodjunk. Kiderult, hogy csak a link statusz tunik el, maga a teljes rendszer mukodik. Ping, http server, dns, dhcp stbstb mind megy.
Kutakodás vege az lett, hogy az mdio-mdc vonalakon van gond.
Hardware szinten minden kizarhato, mert regi szoftware verzioval megy.
Am csodak csodajara az rmii interfesz fele a mac kuldene adatot, de a procibol mdio-n nem jon ki semmi, mdc-n adja a clockot. A proci mdio labat csak a felhuzo tartja magas szinten.

Lényegében olyan, mint ha az mdc adna rendesen a clockot de az mdio tristate. Erdekesseg tovabba, hogy ha lassan debugolva inditom az init reszt akkor megy, ha gyorsan normalbam fut akkor neha jo, neha nem.

Amiket ellenoriztem;
A gpio modok mind jo mind pedig rossz esetben helyesen konfiguraltak, rendesen alternate funkciora.
Minden inditaskor akar debugolva akar elesben inditom az elso regiszter olvasasok jok (id alapjan detektalom az rmii-t, es mindig megtalalja)
Ha kikommentezem azt a reszt amit frissen tettem hozza, akkor is neha jo, neha nem.
Ellenoriztem melyebben a macmiiar regisztert a kikuldesnel. Szegyen szemre rendesen dolgozik, torli a busy flagat, ea latszolag kikuldi az adatot. De az mdio akkor is tristate marad.

Arra is gondoltam hogy orajel vagy pll gond, de akkor nem lenne mdc sem. Mdc marpedig mindig van, latszolag tenne ki az adatot.

Ötlet vagy barmi megfogalmazodott bennetek?
(#) kapu48 válasza Topi hozzászólására (») Júl 27, 2014 /
 
Esetleg el írás?

Vagy más is használja azt a portót?
Elég sok alternatív funkciója lehet:
PA2: USART2_TX/TIM5_CH3 / TIM9_CH1 / TIM2_CH3 /ETH_MDIO/ADC123_IN2

Verem túlcsordulás?
Több helyen előforduló azonos változó név használata?

Sajnos csak Te látod a kódot!
(#) Topi válasza kapu48 hozzászólására (») Júl 27, 2014 /
 
A másra konfigurálást kizártam, ugyanis néha teljesen jól fut, nomeg az init is jól fut, illetve garantáltan mindig ugyan úgy. Nem vagyok RTOS párti, tehát minden a kezemben van.
Tanultam már a sok év alatt a gcc és iar fordítókból, sosem használok azonos változó neveket, mindig unitra jellemző név rövidítéssel van ellátva.

Verem túlcsordulást még nem sikerült fülöncsípnem, és sajnos a főciklus futtatása nélkül is, az init folyamán is van olyan pont hogy megáll.
Amire rájöttem eddig, hogy úgy néz ki hogy az init folyamán az egymás után APB vagy AHB Clock engedélyezés lesz a hunyó. Ha egyszerre engedélyezek egy pontban minden szükséges clock-ot akkor látszólag mindig oké. Olyan, mint ha újabb modulra clock adáskor zökken ki a MAC a működésből. Természetesen clock-okat nem kapcsolgatok üzem közben, csak bootkor minden modul a sajátját inicializáláskor.

Neten egy bugreportot láttam stm32-re, ahol a usernek ugyan úgy megállt az ethernet mac, és ugyan úgy csak süket maradt az MDIO, miközben az MDC vígan adta a clockot, ha pont rosszkor engedélyezett AHB clock-ot. Gyanítom hogy ebbe futottam bele én is, ám hogy hogyan oldok meg egy procin belüli hw bugot, azt még nem tudom.
A hozzászólás módosítva: Júl 27, 2014
(#) pajti2 hozzászólása Aug 16, 2014 /
 
Sziasztok!

USB kliens funkcióhoz az usb_device.c fölé (vagy egybeépítve) mass storage protokol filter-t merre találhatok? Fizetős verzió is érdekel.

Topi:

Ha tényleg processzor hardver bugot fogtál, arra szerintem te is tudod, mi szokott a megoldás lenni: megvárni a hw revision-t.
A hozzászólás módosítva: Aug 16, 2014
(#) zenetom hozzászólása Aug 16, 2014 /
 
Sziasztok!
4 évnyi PIC-ezés után felmerült bennem komolyabban, hogy el kellene kezdeni az ARM procikat.
Viszont ha már ARM, akkor lehetőleg olyannal kellene, ami népszerű, nem a legbonyolultabb, nem drága, és 32 bites. Bár PIC-nél csak 8 bitessel foglalkoztam, de ha már lúd, legyen kövér.
Szóval valami leírás kellene először is, az alapoktól. Nem baj ha angol, de jobban örülnék a magyarnak. Valami olyasmi lenne a legjobb, mint Topi PIC-es cikksorozata.
Szerk.: gondolom itt már az ASM már felejtős, C-ben illdomos fejleszteni. Bár lehet jobb lenne az ASM-mel kezdeni, mert jobban átlátnám egy idő után a rendszert, csak lehet bevisz az erdőbe..
A hozzászólás módosítva: Aug 16, 2014
(#) pajti2 válasza zenetom hozzászólására (») Aug 16, 2014 / 1
 
Egész sorozatot nem tudok, de egy alap dolgot megemlítenék. Az arm-ok között vannak real-time példányok (Coretex-Rx sorozat, akár pic gyanánt is kezelheted), médium csoport (Cortex-Mx sorozat, leginkább rtos fejlesztések), és application level csoport (Cortex-Ax tagok), ami úgy kezdődik, hogy nesze a linux egészben, és kernel modul-tól lefelé semmi. Kezdésnek azt döntsd el, melyik a szimpi, mert mások az eszközök, a szemlélet, minden.
(#) zenetom válasza pajti2 hozzászólására (») Aug 16, 2014 /
 
És ezek a sorozatok bithossz-függőek? Vagy pl. az Rx-ből is létezik 8, illetve 32 bites is?
Végülis lehet jobb lenne az alapoktól kezdeni, nem egyből a 86ezer funkciós 32 bitest..
(#) vzoole válasza zenetom hozzászólására (») Aug 17, 2014 / 1
 
Kérdés, hogy mi az ami kell?

Szerintem PIC után kizárt, hogy neked, csak processzor kéne.
Inkább mikrokontrollerre lesz szükséged, és ebben az esetben a Cortex-M sorozat jöhet számításba.

Az ARM az 32 bites, így nincs választásod.

C vs assembly... ez feladat függő...
Én a C-t javaslom alapból használni, és assembly-t csak ott ahol fontos.

Sajnos jó leírást nem ismerek, de ha itt kérdezel, segítünk.
(#) zenetom válasza vzoole hozzászólására (») Aug 17, 2014 /
 
Akkor kezd tisztulni.
"Már csak" ki kellene találni, hogy konkrétan melyik típust válasszam. Valami olyasmi kéne, ami nem avul el 2 éven belül. Bár a PIC-hez képest ez dimenzióváltás lesz.
(#) vzoole válasza zenetom hozzászólására (») Aug 17, 2014 /
 
Én az ST ARM chip-jeit választottam... ezért én azt javasolnám.
De népszerűek a TI, NXP, Frescale termékei is.

Szinte minden cégnek van demo kártyája. Áruk kb. 3000 Ft-tól indul.
Ezen kínálnak egy mikrokontrollert és esetleg néhány perifériát (LED, gorsulásmérő, USB, kapcsoló, stb.), de ami a lényeg, hogy egy programozó hardver is rá van integrálva, így azonnal használatba veheted, letölthetsz rá programokat.

Pl.: ST Discovery board
A hozzászólás módosítva: Aug 17, 2014
(#) zenetom válasza vzoole hozzászólására (») Aug 17, 2014 /
 
Hol lehet ilyesmit kapni? Milyen környezetben lehet programozni?
(#) vzoole válasza zenetom hozzászólására (») Aug 17, 2014 /
 
Szinte a legtöbb nagy elektronikai komponens web-áruházban.
IDE: Keil, Emblocks, Coocox, IAR, Eclipse, stb.

Én az első kettőt preferálom. Kezdésnek legyen mondjuk Keil.
De ha mazochista vagy akkor Eclipse
(#) pajti2 válasza zenetom hozzászólására (») Aug 17, 2014 1 /
 
Ha ismerkednél alapokkal, keress rá az "Arduino" névre. Dobálni fog mindenféle cuccot 8 bit vagy 32 bit, real-time vagy teljesítmény eszköz, simán a szivárvány bármelyik színében. Nézz körbe közöttük nyugodtan, kotord fel a paraméter listáikat, milyen tápfesz, mennyi proci freki, mennyi ram, milyen perifériák, milyen sdk.

Ha most csöppentél át a pic-ektől frissen, nézd végig a skálát, és majd csak az után válassz, ha a bőség zavarát már túlélted. Gondolom, nem kerget a tatár.
(#) zenetom válasza pajti2 hozzászólására (») Aug 17, 2014 /
 
Apropó, jó lenne egy webszervert futtatni, mondjuk célkitűzésnek legyen az.
Az arduinonál már fut egy linux? SZóval a linuxra fejlesztenék?

vzolee: arduinoról mi a véleményed?
(#) vzoole válasza zenetom hozzászólására (») Aug 17, 2014 / 2
 
Ha linux-ot szeretnél futtatni akkor inkább Raspberry Pi.

Arduino... szerintem zsákutca, habár egy szintig elég.
Egy ARM magos kártyája van az Arduino-nak, ami szerintem nem nagy szám, sőt...
Az meg hogy Pic után egy lebutított AVR-es 8 bites környezetre (=arduino) térj át az inkább visszalépés lenne.
(#) zenetom válasza vzoole hozzászólására (») Aug 17, 2014 / 1
 
Őszintén szólva nem rajongok a linuxért, vagy legalábbis nem érzek még késztetést felé.
Arduinoval is ez a helyzet.
Marad az ARM fejlesztő board, ami viszont jól hangzik.
(#) Topi válasza pajti2 hozzászólására (») Aug 20, 2014 /
 
Utóbb kiderült, hogy valóban HW bugot fogtam procin belül. Cseréltem F407-re, és láss csodát a hiba teljesen eltűnt.
Az F107-hez az errata olyan üres, hogy fütyül benne a szél...
A hozzászólás módosítva: Aug 20, 2014
(#) kapu48 hozzászólása Aug 29, 2014 /
 

Van valami ötletetek, az ilyen KeilARM.pdf doksit, hogyan lehet gyógyítani?
(Szöveg kijelölés másolás, még jobb lenne fordítás (hu)-ra!)?
A hozzászólás módosítva: Aug 29, 2014
(#) Topi válasza kapu48 hozzászólására (») Aug 30, 2014 / 1
 
Nem tudom pontosan milyen gyógyításra gondoltál. Ha valamiért nem tudtál szöveget kijelölni, akkor készítettem most Neked belőle egy másik változatot Acrobat Pro-val.
(#) kapu48 válasza Topi hozzászólására (») Aug 30, 2014 /
 
Köszönöm a fáradozásodat!

Nem akartam részletezni a problémát.

Sajnos viszont a szöveg kijelölés a másolatodon sem működik nálam!
(Amelyik oldalon ábra is van.) (Rendszer: Win7, Adobe Reader XI)

Viszont most már sejtem, hogy Acrobat Pro-t kel szereznem a megoldás hoz!
(#) ciw hozzászólása Szept 4, 2014 /
 
Sziasztok!

STM32-arm hoz szeretnék wifi-t kapcsolni.
Első körben gondoltam keresek valami RMII vagy MII interfészű wifi modult, mint ahogyan van ilyen LAN modul is, de nem találtam.

Találtam WIFI-RS232 modult, ez kicsit idegen nekem, meg RS232-n akkora adatmennyiséget áttolni?
Találtam olyat, hogy WIFI->SDIO1/4 bit. Ez azért nem jó, mert az SD kártyát használom.

Hogy lehet akkor wifi-t kötni ehhez az ARM-hoz?
(#) Lucifer válasza ciw hozzászólására (») Szept 4, 2014 /
 
USB? Csak vicceltem. Az SDIO ma a menő.
(#) Peppe válasza ciw hozzászólására (») Szept 4, 2014 /
 
Szia,

Én is nézegettem WiFi modulokat. És csak UART, SPI, SDIO változat van.
Chipcad-nél nézz szét. Roving network, Wiznet vagy a MCP saját WiFi modulját nézd meg.
Mekkora adatforgalmat akarsz generálni hogy a nem elég a UART vagy SPI?
Stream?
A hozzászólás módosítva: Szept 4, 2014
(#) ciw válasza Peppe hozzászólására (») Szept 4, 2014 /
 
Mondjuk egy lwip Stack és annyi.
Kb mintha egy routernek a config lapját állítgatná az ember.
Nem sok adatforgalom.
Talán Spi port van még szabad, a többi már foglalt szerintem.

Talán ez

Állítólag az WIFI->UART modulok olyanok, hogy az lwip nem tudja kezelni őket, hanem kötelező a beépített stack-jüket használni.

Régen volt ilyen TIBBO lan modul az volt ilyen, hogy csak arra volt jó, amit a belső firmware támogatott.

Lucifer: Az SDIO jó lenne, de sajnos használok SD kártyát is, tehát az már foglalt, vagy arra rá lehet két perifériát is kötni? CS átkapcsolás?
A hozzászólás módosítva: Szept 4, 2014
(#) Peppe válasza ciw hozzászólására (») Szept 4, 2014 /
 
Ha csak config web lap kell akkor ez :
http://www.mikroe.com/click/wifi-plus/ vagy
http://www.mikroe.com/click/cc3000/
is megteszi szerintem.
Én használtam a MCP wifi modulját. Pont ilyen weblapos konfigurációs projekt volt.

SD kártya egy SPI-s adattár tulajdonképpen.
Bármennyit felrakhatsz egy buszra, csak a CS lábat kell bizgergálni külön külön. Neten láttam valahol egy ilyen projektek.
(#) ciw válasza Peppe hozzászólására (») Szept 4, 2014 /
 
Nekem olyan kellene, amit az lwip-vel tudnék használni, végülis lan-al működik, csak most wifi kellene.
A beépített Stack az nem előnyös szerintem, mert meg van kötve a kezem, ráadásul teljesen rá leszek utalva a wifi modul gyártóra.

Az átvitelnél a configot úgy értettem, hogy az biztos, aztán, hogy mi lesz később azt nem tudni, de jó ha van tartalék a kütyüben.
Microchip termékeket, ha lehet kerülöm.

Akkor, ha jól értem, mehet az SD-mellé csak másik cs láb kell, de nem e vész össze a fat és az lwip az SDIO buszon?

Nézelődök még.
(#) kapu48 válasza ciw hozzászólására (») Szept 4, 2014 /
 
Mit értesz SDIO buszon? Az SD kártya 1 közönséges Slave eszköz SPI buszon kommunikál!

Az STM32-arm a Master SPI, vezérelhet jó pár Slave SPI-t párhuzamosan.
Sőt használhatod a WIFI INT kimenetét is, hogy ne legyen adat vesztésed.
(#) ciw válasza kapu48 hozzászólására (») Szept 4, 2014 /
 
SDIO buszon az ARM dedikált SDIO buszát értem, nem a sima SPI-t.

Tudom, hogy az SD-kártya az megy sima SPI-n is.

Viszont, ha azt mondod, hogy a dedikált SDIO buszt is lehet több slave eszközre használni egy időben, más cs lábakkal, akkor már csak egy elérhető SDIO kompatibilis WIFI modul kéne.
Ez jó hír lenne.

Engem egy kicsit zavar, hogy szinte mindegyikre beépített TCP/IP stack-et írnak, de nem nagyon értem, hogy az miért jó nekem.
A hozzászólás módosítva: Szept 4, 2014
(#) kapu48 válasza ciw hozzászólására (») Szept 4, 2014 /
 
Létezik 2 az egyben kivitelben is! Google: Transcend Wi-Fi SD Instruction

Ez HW oldalon meg oldaná a problémádat!
Már csak az a kérdés, hogy van e elég Doksi a programozásának kivitelezéséhez?
(#) ciw válasza kapu48 hozzászólására (») Szept 4, 2014 /
 
Igen, ebay-en is láttam ilyen SD solot alakú WIFI modulokat.

Igazából el kéne döntenem, hogy milyen vonalon akarok elindulni, de ilyen WIFI modulokkal nincs tapasztalatom.
Mikor ARM-el kezdtem foglalkozni, használtam az RMII interfészt LAN-ra DP83848 PHY-vel és arra gondoltam, hogy jajj de jó, ha WIFI kell, akkor az RMII-ra a LAN PHY helyett egy WIFI PHY-t teszek és kész.
Mostanában szembesültem vele, hogy ez sajnos nem így van.

Tehát, most akkor ott tartok, hogy van UARTOM és SPI portom szabadon.
Az SDIO-n SD kártya van, és szerintem ez egyszerre csak egy eszközre csatolhato, vagy kártya, vagy WIFI modul. Mive, hogy ebben a módban a kártya nem használ CS jelet, hanem CMD/DATA jelet használ.

Kérdés melyikkel járok jobban, (szerintem SPI) nem akarok AT parancsokkal kinlódni, az elégvolt a GSM-nél mire a CMUX-ot implementáltam.

Tehát, akkor kizárásos alapon marad az hogy: Kellene nekem egy SPI WIFI modul, ami beszerezhető (ebay - alibaba is jó) és LWIP -vel működik.

Csak meg lessz, aztán rendelek és kipróbálom.
Következő: »»   50 / 177
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem