[elektro] RTOS
hg12345
hg12345 at freemail.hu
Thu Nov 28 09:18:29 CET 2013
Erre gondoltam:
void prvTask1(void *pvParameters)
{
char* pcTaskName;
pcTaskName= (char*) pvParameters;
printf(">>Start %s\n\r",pcTaskName9;
for(;;)
{
printf("%s \t%8i\n\r",pcTaskName,xTaskGetTickCount());
}
}
int main(void)
{
printf("------ CREATE TASK --------------\n\r");
xTaskCreate(prvTask1,"Task1",configMINIMAL_STACK_SIZE,NULL,0,NULL);
printf("------ Start scheduler --------------\n\r");
vTaskStartScheduler();
printf("------ Stop scheduler --------------\n\r");
}
Tudtommal a *pvParameters pointer a TASK nevére mutat, és volt amikor így is csinálta.
A mostani projektet már magam kezdtem nulláról, de itt a mindig NULL pointerem van, vagyis nem mutat sehová.
Üdv
Gábor
flaist <flaist at gmail.com> írta:
>Pass, ezt nem használtam, de nem is értem a kérdést.
>
>TASKxxx ?
>
>FI.
>
>-----Original Message-----
>From: elektro-bounces at tesla.hu [mailto:elektro-bounces at tesla.hu] On Behalf Of hg12345
>Sent: Tuesday, November 26, 2013 3:03 PM
>To: elektro at tesla.hu
>Subject: Re: [elektro] RTOS
>
>Egy kérdés,
>
>úgy látom a magi a void TASKxxx(void* Parameter) elvileg a task debug hibanevét adja vissza, volt is olyan tesztem ahol ez működött, de most mindig NULL pointer ad vissza.
>
>TASK név hossz elegedöre van állítva, TCB tartalmazza a nevet, mit kell még beállítani, hogy a pointer értelmes részre mutasson?
>
>
>flaist <flaist at gmail.com> írta:
>>A stack méret macerás.
>>1. ne használj nagy méretű lokális változókat (pl. tomb).
>>2. Ha mégis akkor növeld meg a stack méretét azoknak a taskoknak amik hasznáják.
>>3. ha stack-t növelsz növelni kell a configTOTAL_HEAP_SIZE-t, az az összes stack méret, + még valmennyi!
>> célszerű annyival növelni amennyivel növeled a stack méreteket summázva.
>>
>>A stack figyelés csak annyi, hogy feltölti AA55H-val, és task váltáskor az RTOS nézi, hogy átíródott-e a határon.
>>
>>FI.
>>-----Original Message-----
>>From: elektro-bounces at tesla.hu [mailto:elektro-bounces at tesla.hu] On
>>Behalf Of hg12345
>>Sent: Monday, November 25, 2013 8:14 AM
>>To: elektro at tesla.hu
>>Subject: Re: [elektro] RTOS
>>
>>Szia,
>>
>>Köszönöm a segítséget.
>>Az CORTEX magban függetlenül a a többirésztől van egy számláló, amit használnak az oprendsszerek az időzítéshez. Szerencsére ezt nem kell állítgatni. A "FreeRTOSConfig.h" alap beállítás csak nagyon egyszerű ütemezőt definiál. Send és ReciveQueue kiegészítéssel, ez müködik is.
>>
>>Szeretném kipróbálni a semaforokat, mutex és stb, ezek amivel
>>megakadtam. Ugyan így nem sikerült beindítani a trace funkciókat
>>
>>Hiába olvasgatom a netes ill a régi pdf leírást, de nem találom benne a stack méret beállításnál mit kell figyelembe venni... Gondolom a az ütemező (nagyon leegyszerűsítve) egy magasszíntű IT-vel átveszi a futást és a kicseréli a futási környezetet. Egy másik kiosztott RAM területre kapcsolja át a SP, LINK és PC regisztereket és a teljes regiszter készlet tartalmat cseréli. (Ha szerencsés akkor ezt védett üzemmódban teszi..., de ezt a nem látom a FreeRTOS esetén) Vagyis az adott taskban futó minden programnak biztosítani kell a verem mérete, ha jól gondolom.
>>Néztem a STACK ellenörzést, de úgy vettem észre ez ebben a verzióban nincs implementálva.
>>
>> üdv
>> Gábor
>>
>>
>>flaist <flaist at gmail.com> írta:
>>>
>>>A processzornak megfelelő "FreeRTOSConfig.h" és "portable" fileokat kell kiválasztani.
>>>És kész!
>>>A PC32-ben a time1-t használja timer-nek, azt nem szabad átprogramozni.
>>>A Te rendszeredhez is meg kell nézni, hogy miket használ, nehogy elprogramozd.
>>>A port.c-ben lehet megnézni.
>>>
>>>Utána már csak a FreeRTOSConfig.h-ban kell hangolni rendszert.
>>>
>>>FI.
>>>
>>>
>>>-----Original Message-----
>>>From: elektro-bounces at tesla.hu [mailto:elektro-bounces at tesla.hu] On
>>>Behalf Of hg12345
>>>Sent: Sunday, November 24, 2013 9:21 PM
>>>To: elektro at tesla.hu
>>>Subject: Re: [elektro] RTOS
>>>
>>>A netes könyv 2005-os van belőle több kivitel is. A honlapon található API magyarázat elég jó, nagyon hasonlít a könyvhöz. (doxigen) Érteni értem, de nagyobb bajom hogy a nem igazán tudom az egyszerű mintapéldákat életre kelteni. :-( Egy halom #define tartalmaz, amit szabályozza a fordítási blokkokat, ugyan mintapéldákban elöl jelzi mit kell megadni, de utána is sokszor problémás a fordítás egy kezdőnek. Ez az én problémám...
>>>
>>>nagyon jó lenne, ha illesztenék a CMSIS alá, persze ez nem a PIC32 világa.
>>>
>>>flaist <flaist at gmail.com> írta:
>>>>A könyvnek egy régebbi verziója fent van a Net-en.
>>>>
>>>>De könyv olvasni tényleg jobb, mint PDF-t (bár ebben könnyebb keresni) , és még támogatod is őket.
>>>>Chipcadnál anno volt.
>>>>
>>>>FI.
>>>>
>>>>-----Original Message-----
>>>>From: elektro-bounces at tesla.hu [mailto:elektro-bounces at tesla.hu] On
>>>>Behalf Of flaist
>>>>Sent: Thursday, November 21, 2013 11:49 PM
>>>>To: elektro at tesla.hu
>>>>Subject: Re: [elektro] RTOS
>>>>
>>>>FREERTOS-t használom PIC32 környezetben.
>>>>Még nem volt gondom vele.
>>>>Persze pár trükköt ismerni kell.
>>>>
>>>>FI.
>>>>
>>>>-----Original Message-----
>>>>From: elektro-bounces at tesla.hu [mailto:elektro-bounces at tesla.hu] On
>>>>Behalf Of hg12345
>>>>Sent: Thursday, November 21, 2013 8:41 PM
>>>>To: elektro
>>>>Subject: [elektro] RTOS
>>>>
>>>>pici érdeklödés
>>>>
>>>>Melyiket érdemes használni, ami egyszerű és megbízható, 32 bites rendszerre ha olcsó vagy ingyenes az további plusz.
>>>>Milyen tapasztalat van ezekről.
>>>>
>>>>üdv
>>>> HG
>>>>
>>>>-----------------------------------------
>>>> elektro[-flame|-etc]
>>>>
>>>>-----------------------------------------
>>>> elektro[-flame|-etc]
>>>>
>>>>-----------------------------------------
>>>> elektro[-flame|-etc]
>>>
>>>-----------------------------------------
>>> elektro[-flame|-etc]
>>>
>>>-----------------------------------------
>>> elektro[-flame|-etc]
>>
>>-----------------------------------------
>> elektro[-flame|-etc]
>>
>>-----------------------------------------
>> elektro[-flame|-etc]
>
>-----------------------------------------
> elektro[-flame|-etc]
>
>-----------------------------------------
> elektro[-flame|-etc]
More information about the Elektro
mailing list