[ARM]DiscoverF4 CycloneTCP Stack Webserver/Client Demo mit CoIDE

OP #3347282
Lesenswert?
• ▲
▼
Auf der Suche nach einer Alternative für lwip bin ich hier fündig 
geworden[1].

Anbei ist ein Projekt für CoIDE 1.7.5 mit dem Netzwerk-Stack CycloneTCP. 
Es basiert auf die im Quelltext vorliegenden Demos für Keil.

Hardware ist das DiscoveryF4 mit dem DP83848 Modul von Waveshare. Auf 
USART6 laufen verschieden Statusmeldungen.

Nach dem Einschalten wird versucht via DHCP eine IP zu erhalten. Gelingt 
das, leuchet die grüne LED und auf der USART wird die IP ausgegeben. 
Eine rote LED blinkt solange das Programm läuft.

Den Webserver kann man ausprobieren indem man die erhaltene IP im 
Browser eingibt.

Wenn man den blauen Taster betätigt, wird die Startseite von diesem 
Forum geholt und auf der USART ausgegeben. Während dessen leuchtet die 
orange LED.

Als Terminalprogramm für die USART hat sich Putty sehr bewährt.

Die Demo läuft deutlich stabiler als die von ST. Die Codequalität des 
Stacks spricht auch für sich.


Viel Spaß!


[1]www.oryx-embedded.com
Angehängte Dateien:
Gast #4105206
Lesenswert?
• ▲
▼
Hallo,

I have following problem while building with Coocox 1.7.0 or 1.7.8 
(unfortunately I dont have the Coocox 1.7.5 to test it):

[cc] Starting link
       [cc] arm-none-eabi-gcc -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 
-mfloat-abi=softfp -mthumb -Wall -g -nostartfiles -Wl,-Map=Websrv.map 
-Os -Wl,--gc-sections -LC:\CooCox\CoIDE\configuration\ProgramData\Websrv 
-Wl,-TC:\CooCox\CoIDE\configuration\ProgramData\Websrv/arm-gcc-link.ld 
-g -o Websrv.elf ..\obj\socket.o ..\obj\pkcs5.o ..\obj\whirlpool.o 
..\obj\raw_socket.o ..\obj\stm32f4xx_syscfg.o ..\obj\idea.o 
..\obj\cipher_mode_cbc.o ..\obj\stm32f4xx_sdio.o ..\obj\tcp.o 
..\obj\tcp_timer.o ..\obj\icecast_client.o ..\obj\stm32f4xx_cryp_aes.o 
..\obj\stm32f4xx_hash.o ..\obj\arp.o ..\obj\icmpv6.o 
..\obj\stm32f4xx_hash_sha1.o ..\obj\seed.o ..\obj\chargen.o 
..\obj\camellia.o ..\obj\mld.o ..\obj\os.o ..\obj\dhcp_client.o 
..\obj\stm32f4xx_usart.o ..\obj\tcp_ip_stack.o ..\obj\stm32f4xx_pwr.o 
..\obj\daytime.o ..\obj\yarrow.o ..\obj\mpi.o ..\obj\dsa.o 
..\obj\cipher_mode_ecb.o ..\obj\stm32f4xx_can.o ..\obj\slaac.o 
..\obj\stm32f4_discovery_sdio_sd.o ..\obj\ripemd128.o 
..\obj\stm32f4xx_wwdg.o ..\obj\ipv4_frag.o ..\obj\stm32f4xx_hash_md5.o 
..\obj\str.o ..\obj\stm32f4xx_dac.o ..\obj\tiger.o ..\obj\discard.o 
..\obj\startup_stm32f4xx.o ..\obj\stm32f4x7_eth.o 
..\obj\stm32f4_discovery.o ..\obj\sha512_256.o ..\obj\base64.o 
..\obj\stm32f4xx_crc.o ..\obj\stm32f4xx_iwdg.o ..\obj\echo.o 
..\obj\main.o ..\obj\dhcpv6_client.o ..\obj\stm32f4xx_rcc.o 
..\obj\dhcpv6_debug.o ..\obj\tcp_misc.o ..\obj\sha256.o 
..\obj\dhcpv6_relay.o ..\obj\dns_client.o ..\obj\timers.o 
..\obj\smtp_client.o ..\obj\sha384.o ..\obj\cipher_mode_ctr.o 
..\obj\des3.o ..\obj\dh.o ..\obj\endian.o ..\obj\ndp.o 
..\obj\stm32f4xx_adc.o ..\obj\asn1.o ..\obj\stm32f4xx_dcmi.o 
..\obj\pem.o ..\obj\ping.o ..\obj\tasks.o ..\obj\aes.o ..\obj\md2.o 
..\obj\stm32f4xx_cryp_des.o ..\obj\stm32f4xx_cryp.o 
..\obj\cipher_mode_gcm.o ..\obj\stm32f4xx_fsmc.o ..\obj\ipv4.o 
..\obj\sha512_224.o ..\obj\md4.o ..\obj\cipher_mode_ofb.o 
..\obj\dhcp_common.o ..\obj\ethernet.o ..\obj\stm32f4xx_gpio.o 
..\obj\x509.o ..\obj\stm32f4xx_flash.o ..\obj\md5.o ..\obj\list.o 
..\obj\cipher_mode_ccm.o ..\obj\system_stm32f4xx.o ..\obj\syscalls.o 
..\obj\res.o ..\obj\mime.o ..\obj\stm32f4xx_dma.o ..\obj\sha224.o 
..\obj\ipv6.o ..\obj\ssi.o ..\obj\tcp_ip_stack_mem.o ..\obj\port.o 
..\obj\queue.o ..\obj\dp83848.o ..\obj\ripemd160.o ..\obj\debug.o 
..\obj\igmp.o ..\obj\sha1.o ..\obj\hmac.o ..\obj\croutine.o ..\obj\udp.o 
..\obj\ip.o ..\obj\rc4.o ..\obj\stm32f4xx_spi.o ..\obj\aria.o 
..\obj\stm32f4xx_i2c.o ..\obj\dhcpv6_common.o ..\obj\stm32f4xx_rng.o 
..\obj\resource_manager.o ..\obj\sha512.o ..\obj\stm32f4xx_exti.o 
..\obj\icmp.o ..\obj\ipv6_frag.o ..\obj\misc.o ..\obj\cipher_mode_cfb.o 
..\obj\rc6.o ..\obj\dhcp_debug.o ..\obj\rsa.o ..\obj\stm32f4xx_rtc.o 
..\obj\http_server.o ..\obj\stm32f4xx_cryp_tdes.o ..\obj\des.o 
..\obj\nic.o ..\obj\date_time.o ..\obj\stm32f4xx_tim.o ..\obj\tcp_fsm.o 
..\obj\stm32f4xx_dbgmcu.o ..\obj\ftp_client.o -L..\..\.. -lm -lgcc -lc
       [cc] c:/program files (x86)/gnu tools arm embedded/4.9 
2014q4/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/lib/ 
armv7e-m/softfp\libc.a(lib_a-fclose.o):  In function `fclose':
       [cc] fclose.c:(.text.fclose+0x0): multiple definition of `fclose'
       [cc] 
..\obj\resource_manager.o:D:\Work\References\Ethernet\OryxWebsrv\Cyclone 
TCP_CycloneSSL_CycloneCrypto_Open_1_3_5\common/resource_manager.c:286: 
first defined here
       [cc] collect2.exe: error: ld returned 1 exit status


Do you have an idea?
Khang.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.