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   75 / 177
(#) rolandgw válasza killbill hozzászólására (») Szept 10, 2016 /
 
Én is ezt állítom, hogy jobbak mint az ST. Sima M0-t már használtam,ST-t is.Viszont ha tovább akar lépni az ember a következő lépcső,amihez van egy halom támogatás az a 17xx család.Ott pedig már nincs pl. LQFP48,ami sok helyre elég lenne.
(#) killbill válasza rolandgw hozzászólására (») Szept 11, 2016 /
 
Igen, ez sajnos igy van. Bááár. Mi van a 15xx sorozattal? Cortex-M3, DMA, RTC, EEPROM (ami a kicsikben sajnos nincs), jo timer-ek, USB, ket ADC, DAC es van LQFP48 tokban is.
(#) kit6263 hozzászólása Szept 25, 2016 /
 
Használ valaki kínai klón j-link-et ? Tapasztalatok ?
V8 vagy V9 ? V 9.3 csak 30 dolcsi !
J-Link V9.3 klón
(#) cpt.zoltan.simon válasza kit6263 hozzászólására (») Szept 25, 2016 /
 
Én használtam J-Link-et. Egyet megöltem, a másik is olykor nyögvenyelős, bár nagyon imponál benne hogy J-link-ről lévén szó mindennel működik.
A verzió számot nem ismerem a sajátomnak, és mivel most nem vagyok otthon nem is tudom megnézni. Szóval én sérülékenyebbnek tartom az Ulink2-nél. De lehet csak én vagyok a béna.
Azt tudod véletlenül hogy az említett verziók esetén mi a különbség?
(#) cpt.zoltan.simon hozzászólása Szept 25, 2016 /
 
Hi!

Használt már valaki Segger Embedded Studio-t? Mik a tapasztalatok?
(#) icserny válasza kit6263 hozzászólására (») Szept 25, 2016 / 1
 
A $30-os klón helyett már megfontolnám (kb. dupla árért) a legális student változat beszerzését. A klónokkal az a legnagyobb probléma, hogy a gyártó igyekszik kiszűrni és firmware frissítésnél kinyírni az illegális példányokat. Egy $10-os v8-as klónnal próbálkoztam már, de 2-3 alkalommal már a sírból kellett visszahozni firmware frissítés után. Működik, de fenti okok miatt nem szívesen nyúlok hozzá.
(#) kit6263 válasza cpt.zoltan.simon hozzászólására (») Szept 26, 2016 /
 
Én is pont a verziók miatt görcsölök !
Segger fórum
J-Link V9 will be "feature frozen" in the near future.
The most recent EDU version is V9.40
8.08.90 verziót tudom megvenni (Digikey, FDH) !
(#) cimopata hozzászólása Okt 1, 2016 /
 
Üdv.

STM32F030.
Programon belül ha szeretném a már inicializált logikai bemenetet átkonfigurálni egészen pontosan már nem sima logikai bemenet lenne hanem időzítő PWM input capture bemenete akkor GPIO beállításoknál kell valamit variáljak vagy maradhat a kezdeti sima logikai kapu beállításon?
(#) kapu48 válasza cimopata hozzászólására (») Okt 1, 2016 /
 
A megfelelő Alternativ Funkciot kel választanod:
Bővebben: Link Adatlap 35. oldaltól.
A hozzászólás módosítva: Okt 1, 2016
(#) cimopata válasza kapu48 hozzászólására (») Okt 1, 2016 /
 
Igen köszi értem már mire gondolsz de valamiért nem fogadja el az GPIOA -> AFRL hivatkozást mondván baja van az AFRL-el

  1. GPIOA -> AFRL =         GPIOA -> AFRL | 0x10000000;

AFRL.jpg
    
(#) vzoole válasza cimopata hozzászólására (») Okt 1, 2016 /
 
Nézd meg hogyan van pontosan definiálva.
Szerintem:
GPIOA -> AFR[0]
GPIOA -> AFR[1]
(#) cimopata válasza vzoole hozzászólására (») Okt 1, 2016 /
 
Ezt hol lehet megnézni? Reference doc alapján meg az STM32Fxx.h ban szoktam kinézni a regisztereket de ez egyikben sem így van.
(#) cimopata hozzászólása Okt 1, 2016 /
 
Egyébként így már működik köszönöm.
(#) vzoole válasza cimopata hozzászólására (») Okt 1, 2016 /
 
Ahogy írtad az stm32f0xx.h fájlban van:
__IO uint32_t AFR[2]; /*!< GPIO alternate function low register, Address offset: 0x20-0x24 */
(#) cimopata válasza vzoole hozzászólására (») Okt 1, 2016 /
 
Látom, jól van. Ezután majd figyelem ezeket is.
(#) cimopata hozzászólása Okt 2, 2016 /
 
Próbálom használni ezt a Read protection függvényt de nem fogadja el:

  1. FLASH_OB_RDP_LevelConfig(OB_RDP_LEVEL_1);


Azt írja hogy
Idézet:
„../Src/main.c(83): warning: #223-D: function "FLASH_OB_RDP_LevelConfig" declared implicitly
FLASH_OB_RDP_LevelConfig(OB_RDP_LEVEL_1);”


A stm32f0xx_hal_flash_ex.c könyvtárban van.
A hozzászólás módosítva: Okt 2, 2016
(#) Balázs válasza cimopata hozzászólására (») Okt 2, 2016 /
 
A deklaráció az stm32f0xx_hal_flash_ex.h fájlban van. Be van include-olva? És a .c fájl nincs kizárva a fordításból? A HAL config fájlból nincs kikommentezve a flash modul?
(#) cimopata válasza Balázs hozzászólására (») Okt 2, 2016 /
 
Includeoltam a stm32f0xx_hal_flash_ex.h fájlt is mert az egész scr mappa hiányzott de így ezt a hibát kapom:

Idézet:
„motor FR5050 Configuration\motor FR5050 Configuration.axf: Error: L6200E: Symbol FLASH_PageErase multiply defined (by stm32f0xx_hal_flash_ex.o and main.o).
motor FR5050 Configuration\motor FR5050 Configuration.axf: Error: L6200E: Symbol HAL_FLASHEx_Erase multiply defined (by stm32f0xx_hal_flash_ex.o and main.o).
motor FR5050 Configuration\motor FR5050 Configuration.axf: Error: L6200E: Symbol HAL_FLASHEx_Erase_IT multiply defined (by stm32f0xx_hal_flash_ex.o and main.o).
motor FR5050 Configuration\motor FR5050 Configuration.axf: Error: L6200E: Symbol HAL_FLASHEx_OBErase multiply defined (by stm32f0xx_hal_flash_ex.o and main.o).
motor FR5050 Configuration\motor FR5050 Configuration.axf: Error: L6200E: Symbol HAL_FLASHEx_OBGetConfig multiply defined (by stm32f0xx_hal_flash_ex.o and main.o).
motor FR5050 Configuration\motor FR5050 Configuration.axf: Error: L6200E: Symbol HAL_FLASHEx_OBProgram multiply defined (by stm32f0xx_hal_flash_ex.o and main.o).”
(#) cimopata hozzászólása Okt 2, 2016 /
 
Esetleg valaki bemásolna egy kész olvasásvédelmet azt megköszönném.
(#) Balázs válasza cimopata hozzászólására (») Okt 2, 2016 /
 
Egy clean project után is ezt mondja? Nekem úgy tűnik, benne maradtak a main tárgykódjában az előbbi implicit definíciók.
(#) cimopata válasza Balázs hozzászólására (») Okt 5, 2016 /
 
Félte raktam egyenlőre a problémát.

Más gondom van, amit nem tudom hogy debugolni.

Beállítottam TIM3-at PWM-in mérésre
CCR1 adja vissza a periódusidőt
CCR2 a kitöltést
Ebből számítok egyszerű alapjelet. A dolog működik is szépen egészen addig amíg letekerem a bemenő impulzust 0%-ig. Itt eredményül 0-t kellene hogy adjon de 10-ből 5 esetben "beragad" és a maximum értéket adja.

Sejtem hogy a számláló elkezdi az impulzus mérését csak nem képes befejezni mert idő közben megszűnik teljes jel és 0% kitöltés lesz a bemeneten.

Próbáltam bele rakni a programba ilyen esetre megoldást ha a duty>freq vagy esetleg mindkettő 0 akkor ne számolgasson állítsa 0-ra e mért értéket, de még mindig bugos. Nem tudom mit kéne még változtassak:

  1. duty=TIM3->CCR2;
  2. freq=TIM3->CCR1;
  3. if((duty>freq) | (duty==0 & freq==0)){speed_pot=0;}            
  4. else
  5.                                 {
  6.                                         buffer2=(duty*4095)/freq;
  7.                                         speed_pot=buffer2;
  8.                                 }


A számlálót 1us-os clock hajtja. A mért jel pedig 70us periódusidejű. 0-100% kitöltésű a probléma pedig a 1-0% közt jön elő. Mi lehet a baj?
A hozzászólás módosítva: Okt 5, 2016
(#) killbill válasza cimopata hozzászólására (») Okt 5, 2016 /
 
Fuggetlenul a problemadtol, az aritmetikai | es & helyett logikait (|| &&) kellene hasznalnod az if-ben. Igy is mukodni fog, de nem lesz eleg hatekony a kod, es mas esetekben meg gondot is okozhat. Az | es & bitenkenti muvelet, mig az || es && logikai operator, egesz maskepp mukodik.
(#) cimopata válasza killbill hozzászólására (») Okt 5, 2016 /
 
Oké. Bár a probléma még mindig fenn áll.
(#) csatti2 válasza cimopata hozzászólására (») Okt 6, 2016 /
 
Mielőtt olvasod a CCR1/2 regisztereket, ellenőrizd az SR regiszter CC1IF bitjét. Ha nincs bebillentve akkor nem történt capture és egy idő vagy bizonyos próbálkozásszám után feltételezheted, hogy 0 a duty cycle.

Megj.: Ezt a funkciót (PWM capture) én még nem használtam, de a leírásból nekem ez jön le.
(#) cimopata válasza csatti2 hozzászólására (») Okt 6, 2016 /
 
Szia. Igen. Időközben addig agyaltam amíg ezt tettem amit írtál is.
Szándékoztam megosztani hátha valakinek szüksége lesz majd rá:

  1. if( (TIM3->SR & (1<<1)) && (TIM3->SR & (1<<2))) // capturecompare_1 flag ellenQrzése
  2.                                 {
  3.                                         TIM3->SR=0x0; // státusz regiszterek törlése
  4.                                         duty=TIM3->CCR2;                                               
  5.                                         freq=TIM3->CCR1;
  6.                                 }
  7.                         else
  8.                                 {
  9.                                 if( (TIM3->SR & (1<<3)) )
  10.                                         {
  11.                                         duty=0x0;
  12.                                         freq=0xFFFF;
  13.                                         TIM3->SR=0x0; // státusz regiszterek törlése
  14.                                         speed_potbuf=0;
  15.                                         }
  16.                                 }
A hozzászólás módosítva: Okt 6, 2016
(#) SBahadurD válasza cimopata hozzászólására (») Okt 6, 2016 / 1
 
Csak egy jó tanács:
Nem lenne könnyebben olvasható a kódod, ha (1<<1) és (1<<2) helyett a megfelelő biteknek való gyári #define-t tennéd be? TIM_SR_CC1IF és TIM_SR_CC1IF. Így később is tudod majd, hogy mit csináltál.
(#) kiborg hozzászólása Okt 7, 2016 /
 
Sziasztok!

Érdeklődni kezdtem az ARM-ok után.
Kezdenék egy ILYEN-el. (2db-t rendeltem)
Eleinte nagy az esély, hogy Arduino platformon belül fogok ismerkedni.
Van-e lehetőség arra, hogy az egyikből programozót készítsek, illetve van-e olyan programozó,amit házilag el lehet készíteni(mint az AVR 8bitnél a JTAG, még ha debug nélkül is) ? Idővel szeretném elhagyni az Arduino környezetet és közvetlenül bootloader nélkül használni a chipet.
Másrészt van-e ingyenes programozói felület felület ( C-ben, Windows alatt),ahol írom a programot és utána le is tudom tölteni a chipbe (mint az AVRStudio)?

Kiborg
A hozzászólás módosítva: Okt 7, 2016
(#) icserny válasza kiborg hozzászólására (») Okt 7, 2016 /
 
Idézet:
„Eleinte nagy az esély, hogy Arduino platformon belül fogok ismerkedni.”

Egy leírás a telepítéshez itt található.
Egy régebbi leírás itt található. Ezt a linket csak azért raktam be, mert tartalmazhat olyan apró részleteket, ami esetleg a másikból hiányzik. Az Arduino IDE telepítését és bővítését én az első link alapján végeztem!

Ahhoz hogy az Arduino IDE-vel kényelmes módon az USB csatlakozón menjen a letöltés, ezt a bootloadert kell a kártyába égetni: generic_boot20_pc13.bin

Idézet:
„Van-e lehetőség arra, hogy az egyikből programozót készítsek?”

Hát persze, hogy lehet! Bővebben: Link

Idézet:
„Van-e ingyenes programozói felület felület?”

A Keil ingyenes kiadása 32 K kódméretig használható.
Az Atollic True Studio ingyenes kiadása nem limitálja a kódméretet.
Van számtalan más lehetőség is.

Megjegyzés: Mielőtt az STM32F103C8T6 kártyákat üzembe helyeznéd, ellenőrizd a PA12 kivezetést felhúzó R10 ellenállást! Akkor jó, ha a másik vége 3,3V -ra csatlakozik és 1,5 kOhm értékű (muszájból 1 k-val is elmegy...). Ha tévesen az 5V-ra kötötték a felhúzót, és/vagy más értékű (pl. 10k) akkor nem használható az USB kapcsolat, javítani kell a kártyát! Bővebben: Link (lást pl. Rick Kimball » Mon May 25, 2015 5:13 pm bejegyzését!)
(#) kiborg válasza icserny hozzászólására (») Okt 7, 2016 /
 
Szia!

Köszönöm a gyors választ.
Felmerült pár kérdés a válaszoddal kapcsolatban:

1;A bootloadert Arduinohoz magával az Arduino keretprogrammal lehet letölteni? Ha nem,akkor hogyan?

2; Keil vagy Atollic? Melyiknek jobb a kezelhetősége, jobb támogatás, jobb library ellátottság?

3;Hogy is van ez? olvasgatom, hogy RX-TX lábon keresztül is lehet programozni. Ehhez is kell bootloader vagy megy nélküle is? Bootloader nélkül csak programozóval lehet programot rátölteni? (ha egyik vezérlőt "beáldozom" programozónak, akkor ő csak USB-soros átalakítóként viselkedik ? Lehet vele debugolni? Mi az az SWD only?

Kiborg

ui:köszi a Megjegyzést, ellenőrizni fogom.
(#) kapu48 válasza kiborg hozzászólására (») Okt 7, 2016 /
 
Egy úttal rendelhettélvolna programozót is:
Bővebben: ST-Link
És meglene oldva a problémád, debugolásra is alkalmas!

"Keil vagy Atollic?"
Mindkettőt meg kell ismerni!
Következő: »»   75 / 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