Den får det bli!
STM32 har allt - Utom trådlöshet
Re: STM32 har allt - Utom trådlöshet
Tror inte stm32wb har wifi utan BT och nåt mer på 2.4 GHz
Jag hade gjort antingen:
1) Tagit kretsen du hittade och implementerat den i lwip så behöver du bara byta ut lågnivå delarna och inte göra egen IPstack
2) Tagit ESP32 och kopplat till stm32, då de är bra på olika saker
Jag hade gjort antingen:
1) Tagit kretsen du hittade och implementerat den i lwip så behöver du bara byta ut lågnivå delarna och inte göra egen IPstack
2) Tagit ESP32 och kopplat till stm32, då de är bra på olika saker
Re: STM32 har allt - Utom trådlöshet
stm32wb
Har Bluetooth LE 5.2 and IEEE 802.15.4 wireless standards such as Zigbee and Thread.
Tror inte heller esp modulerna kommer att dö ut,
det är snarare så att moduler ifrån andra tillverkare kommer att göra det pga esp.
Då det inte går att konkurrera med esp speciellt inte esp32 som har bluetooth och dual core + native sdio master för att koppla in sd-kort.
Har Bluetooth LE 5.2 and IEEE 802.15.4 wireless standards such as Zigbee and Thread.
Tror inte heller esp modulerna kommer att dö ut,
det är snarare så att moduler ifrån andra tillverkare kommer att göra det pga esp.
Då det inte går att konkurrera med esp speciellt inte esp32 som har bluetooth och dual core + native sdio master för att koppla in sd-kort.
Re: STM32 har allt - Utom trådlöshet
Nu är detta ett redigerat inlägg. Men jag har gjort en del forskning nuRick81 skrev: ↑16 januari 2021, 10:05:01 Tror inte stm32wb har wifi utan BT och nåt mer på 2.4 GHz
Jag hade gjort antingen:
1) Tagit kretsen du hittade och implementerat den i lwip så behöver du bara byta ut lågnivå delarna och inte göra egen IPstack
2) Tagit ESP32 och kopplat till stm32, då de är bra på olika saker
För det första så måste man införskaffa en WF200. Det finns olika versioner så som WF200D, WF200C. Jag vet vad som är unikt med dessa, men troligtvis så är det bara små förbättringar som inte alls spelar någon större roll om man bara ska ha kommunikation och ansluta en router.
Men som sagt!
- Införskaffa en WF200
- Bygg efter denna princip. Se databladet för mer förklaringar: https://www.silabs.com/documents/public ... asheet.pdf
- När man har fått en WF200 på plats och kopplat detta mot en t.ex. STM32 SPI-bus, så fattas det bara att man laddar ned detta bibliotek. https://github.com/SiliconLabs/wfx-fullMAC-driver Detta är för inbyggda system endast. Det finns en WXF Full MAC för Linux också. Men den ska vi inte ha.
- SPI klockan skall vara mellan 1 KHz till 50 MHz. Och även så ska en digital UT hos Host ska fungera som en interrupt. Mest bara för att när WF200 vill tala med sin host, så ska en utgång bli hög. I STM32 får man konfigurera detta själv.
- SPI protokollet ser ut så här. Här bestäms om man ska skriva eller läsa och till vilken adress samt hur långt meddelandet ska vara. Alltså om man ska skriva till addressen "Input/Output queue" så skickar man "0010" + hur många paket av 16-bit meddelanden kommer t.ex. 2 = 0b10. Dvs 001010" Som betyder Skriv till addressen Input/Output queue och sedan skicka 2 datapaket av 16 bit.
- Här är allla kommandon och funktioner för att en host skall kunna tala med en WF200. https://docs.silabs.com/wifi/wf200/rtos ... r-host-api
Hur gör man så att FMAC Drivrutinerna, dvs biblioteket man laddar ned från GitHub, får tillgång till SPI hos hosten?
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Re: STM32 har allt - Utom trådlöshet
Troligen har du defines eller callback för de spi funktionerna som finns i koden. Du ersätter dem med dina egna SPI funktioner.
Annars är det bara byta ut de befintliga SPIfunktioerna till dina egna
Annars är det bara byta ut de befintliga SPIfunktioerna till dina egna
Re: STM32 har allt - Utom trådlöshet
Så här säger manualen.
Jag tolkar detta som att det är här som jag ska skriva in mina funktioner och använda denna header?
https://github.com/SiliconLabs/wfx-full ... host_api.h
https://docs.silabs.com/wifi/wf200/rtos ... r-host-api
Alltså jag skapar en sl_wfx_host_api.c fil och jag använder sl_wfx_host_api.h som header-fil.
Men då är frågan. Om jag ska göra C-kod för denna.
Här är exakt alla register, https://docs.silabs.com/wifi/wf200/rtos ... -registers och det står inget om time, delay eller wait här.
https://docs.silabs.com/wifi/wf200/rtos ... quirementsSl_wfx_host_post_event Implementation
All packets received from the WFx are passed from the FMAC driver to the host application through the sl_wfx_host_post_event() function. This includes the confirmations sent to acknowledge FMAC requests and asynchronous indications based on Wi-Fi events.
The confirmations have to be pushed to the pending sl_wfx_host_wait_for_confirmation() functions. The way the replies are pushed/sent to the waiting functions are fully dependent on the software architecture used (RTOS, bare metal, and so on).
The list of possible indications sent by the WFx can be found on the dedicated indications page. Here again, the way the indications are processed is completely dependent on the application. The information reported by each indication is described in sl_wfx_general_api.h and sl_wfx_cmd_api.h.
Integration Steps
When integrating the FMAC driver into a new system, these are the recommended steps.
1. Implement host functions for communication Bus and RTOS
Implement the bus communication functions for SPI or SDIO and the other functions described above.
2. Test Bus Communication
See the details in the Initialization and Configuration page for each initialization step and make sure the configuration is completely successfully.
3. Use the WFx FMAC driver API to Initiate a Wi-Fi Connection and Send/Receive Data
This step requires implementing the sl_wfx_receive_frame() function as described above.
Jag tolkar detta som att det är här som jag ska skriva in mina funktioner och använda denna header?
https://github.com/SiliconLabs/wfx-full ... host_api.h
https://docs.silabs.com/wifi/wf200/rtos ... r-host-api
Alltså jag skapar en sl_wfx_host_api.c fil och jag använder sl_wfx_host_api.h som header-fil.
Men då är frågan. Om jag ska göra C-kod för denna.
Så måste jag först veta vilket register jag ska skriva till, eller hur?/**************************************************************************//**
* @brief Called when the FMAC driver wants to add a delay
*
* @param wait_ms is the time to wait
* @returns Returns SL_STATUS_OK if successful, SL_STATUS_FAIL otherwise
*
* @note Can be a passive wait or in a RTOS context a task sleep
*****************************************************************************/
sl_status_t sl_wfx_host_wait(uint32_t wait_ms);
Här är exakt alla register, https://docs.silabs.com/wifi/wf200/rtos ... -registers och det står inget om time, delay eller wait här.
-
- Inlägg: 1397
- Blev medlem: 29 januari 2011, 21:06:30
- Ort: Lapplandet
Re: STM32 har allt - Utom trådlöshet
Det är ju en delay på mcu:n de menar, inte på wifi-modulen.
Re: STM32 har allt - Utom trådlöshet
Okej. Men då börjar jag förstå vart jag ska skriva.
Har även hittat ett fattigt exempel här.
https://github.com/SiliconLabs/wfx-full ... host_spi.c
Så då gäller det bara för mig att plöja register och skriva C-kod för att fylla alla dessa header-funktioner.
Varför kunde inte detta vara färdigt....
Har även hittat ett fattigt exempel här.
https://github.com/SiliconLabs/wfx-full ... host_spi.c
Så då gäller det bara för mig att plöja register och skriva C-kod för att fylla alla dessa header-funktioner.
Varför kunde inte detta vara färdigt....
Re: STM32 har allt - Utom trådlöshet
1.) STM32 är inte ett företag utan en processor linje hos STMicroelectronics. Man kan därför inte säga "STM32 verkar inte lägga fokus...."
2.) Det är väldigt ovanligt att hitta WIFI som pheripal i en microprocessor, så dom är på intet sätt unika eller avvikande.
3.) Att använda en ESP som WIFI slav till en STM32 är i min värld att gå över ån efter vatten. Då är det bättre att man lär sig programmera ESP'n
ESP32 exempelvis är en väldigt kompetent flerkärning processor. Det finns ingenting som i dagsläget säger att ESP lever i någon större risk att dö ut jämfört STM32.
2.) Det är väldigt ovanligt att hitta WIFI som pheripal i en microprocessor, så dom är på intet sätt unika eller avvikande.
3.) Att använda en ESP som WIFI slav till en STM32 är i min värld att gå över ån efter vatten. Då är det bättre att man lär sig programmera ESP'n
ESP32 exempelvis är en väldigt kompetent flerkärning processor. Det finns ingenting som i dagsläget säger att ESP lever i någon större risk att dö ut jämfört STM32.
Re: STM32 har allt - Utom trådlöshet
ESP32 har inte samma flexibilitet som STM32 har i alla sina periherals.
Men för enklare projekt med Wifi/BT är den mycket trevlig.
Men för enklare projekt med Wifi/BT är den mycket trevlig.
Re: STM32 har allt - Utom trådlöshet
Fick inte WF200 att fungera. Jag kollade även med några exempel och frågade supporten, men även där var det fattiga svar.
Ett färdigt exempel, som de hävdade, ska fungera direkt. Men i detta fall så måste man bygga upp exemplet redan från grunden.
Så jag lägger ned WF200 och kör kabel istället.
WizNet W5500
Ett färdigt exempel, som de hävdade, ska fungera direkt. Men i detta fall så måste man bygga upp exemplet redan från grunden.
Så jag lägger ned WF200 och kör kabel istället.
WizNet W5500
Re: STM32 har allt - Utom trådlöshet
En fråga!
Jag har hittat ett färdigt exempel med W5500 för STM32 som jag planerar att använda.
https://github.com/afiskon/stm32-w5500
Denna ger alltså en socket-applikation.
Vad kan vi säga om W5500 jämfört med lite större processor med FreeRTOS+TCP?
Med W5500 så måste man ha ett kopplingschema som ser ut så här. Detta är rätt mycket. Då kanske det blir billigare med en STM32 som har inbyggt ethernet, fast man använder RTOS istället.
Jag har hittat ett färdigt exempel med W5500 för STM32 som jag planerar att använda.
https://github.com/afiskon/stm32-w5500
Denna ger alltså en socket-applikation.
Vad kan vi säga om W5500 jämfört med lite större processor med FreeRTOS+TCP?
Med W5500 så måste man ha ett kopplingschema som ser ut så här. Detta är rätt mycket. Då kanske det blir billigare med en STM32 som har inbyggt ethernet, fast man använder RTOS istället.
Re: STM32 har allt - Utom trådlöshet
Det blir väl ungefär lika mycket externt klister om du tar en STM32F207 mot om du tar en STM32F205 och en W5500
Jag hade helt klart valt STM32F207 spåret, jag har kört en gammal W5100 och en ATMEGA1284 i ett gammalt projekt, man är ju nervös varje dag att det ska hittas en bugg i TCP/IP stacken i kislet vilket hade gått att lösa med en mjukvarufix med STM32F207... Men fortfarande såhär 8 år senare och ett antal tusen enheter på marknaden håller det ihop..
Finns inget krav på att köra RTOS bara för att man kör LWIP på STM32...
Jag hade helt klart valt STM32F207 spåret, jag har kört en gammal W5100 och en ATMEGA1284 i ett gammalt projekt, man är ju nervös varje dag att det ska hittas en bugg i TCP/IP stacken i kislet vilket hade gått att lösa med en mjukvarufix med STM32F207... Men fortfarande såhär 8 år senare och ett antal tusen enheter på marknaden håller det ihop..
Finns inget krav på att köra RTOS bara för att man kör LWIP på STM32...
-
- Inlägg: 1397
- Blev medlem: 29 januari 2011, 21:06:30
- Ort: Lapplandet
Re: STM32 har allt - Utom trådlöshet
Jag hade varit väldigt försiktig med hårdvaru-tcp/ip.. Alla som försökt (som jag sett) har lyckats bygga in säkerhetshål.
Mjukvara är lätt att uppdatera jämfört med att byta ut hårdvaran.
Mjukvara är lätt att uppdatera jämfört med att byta ut hårdvaran.
Re: STM32 har allt - Utom trådlöshet
Lekte med ENC26J80 med STM32....efter det är jag väldigt skeptiskt till externa SPI/Ethernet chip...det chippet hade hur många konstiga instabiltetssaker som helt....enda sättet använda den är nog pinga www.google.se varje sekund och starta om skiten om den inte får svar....
såå jag hade lätt valt STM32 med inbyggd Ethernet..
såå jag hade lätt valt STM32 med inbyggd Ethernet..