• 【STM32F4】【银杏科技ARM+FPGA】iCore3移植RT-Thread--网络功能


    随着嵌入式系统功能的多样化以及网络在各个领域中的广泛应用,具备网络功能的嵌入式设备拥有更高的使用价值和更强的通用性。RT-Thread系统提供了一套SAL(套接字抽象层)组件,方便我们网络相关的开发。iCore3搭载W5500网络接口,我们这次带来rt-thread+SAL+W5500的以太网通信。

    一、配置W5500的相关GPIO,选择时钟源

    1.1 我们打开../BSP/STM32/STM32F407_gingko_iCore3/board/CubeMX_Config来进行SPI(W5500挂载在SPI总线上)引脚的配置,注意与原理图引脚一致,PA7--SPI1_MOSI、PB3--SPI1_SCK、PB4--MISO,这里仍然是只配置IO,其他参数不予更改。配置完成后点击CREATE CODE。

    1.2 CubeMX生成工程后,只保留红色方框内的文件,其他的两个文件夹可以删除掉。

    1.3 复制刚生成的src文件夹main.c文件夹中的函数SystemClock_Config(void)到board.c。这里内核初始化时要调用该函数进行时钟配置。 

    二、打开SPI设备 

    2.1打开../BSP/STM32/STM32F407_gingko_iCore3/board/Kconfig:

    2.2点击保存,打开Env工具,输入menuconfig命令,使能SPI设备:

    2.3保存退出,输入scons --target=mdk5生成工程,打开putty,选择正确的端口号,编译后下载到开发板,输入list_device命令,既可查看:

    三、更新软件包

    3.1打开../BSP/STM32/STM32F407_gingko_iCore3文件中,在空白处右击,选择“ConEmu Here”:

    输入pkgs --upgrade更新软件源:

    3.2输入menuconfig命令打开其界面,在IoT-internet of things中选中WIZnet:

    保存退出,此时退出ConEmu后再重新打开,输入pkgs --update下载软件包:

    四、添加设备驱动文件

    4.1在../BSP/STM32/STM32F407_gingko_iCore3/board文件夹下,添加一个设备文件,在文件夹下建立一个.c文件(代码如下):

    4.2更改SConscript脚本,讲.c文件添加到工程中:

    五、挂载W5500设备

    5.1打开../BSP/STM32/STM32F407_gingko_iCore3/board/Kconfig文件,添加一下代码:

    5.2打开Env工具,使用menuconfig配置工程,启动SAL:

    5.3修改硬件配置,比对rt-thread引脚编号(在drv_gpio.c文件中查询),得知iCore3开发板上的INT连接的是PG2引脚对应编号为98,RST为硬件复位,可以选择空闲引脚编号,这里选择编号96:

    5.4启用SPI1:

    5.5保存退出,在Env中输入命令:scons --target=mdk5生成工程,编译后下载到开发板,输入list_device:

    输入ifconfig可以打印板子的网络状态,正常获得IP,便是网络驱动正常:

    打开电脑WIN+R输入CMD打开命令行,输入ipconfig查看电脑的IP,此时应关闭电脑的防火墙:

    输入ping 192.168.1.100(iCore3板子的IP地址),可以ping通:

    在putty中,输入ping 192.168.1.123(电脑IP),可以ping通:

    六、更改iCore3板子IP地址

    可通过Env配置固定的IP地址:

    再次输入:scons --target=mdk5生成工程。

    七、tcp client/udp client例程

    完成以上工作,就可以做网络开发了,这里我们以tcp client/udp client为例:

    首先打开文件系统:

    在软件包中开启基础实例代码tcp client与udp client,路径为:RT-Thread online packages->miscellaneous packages->samples:kernel and components samples->a network_samples package for rt-thread:

    点击保存退出配置界面,在Env中输入pkgs --update下载软件包,输入scons --target=mdk5生成工程,打开编译,并下载代码:

    7.1打开网络调试助手工具搭建一个TCP服务器,记录下打开的端口号:

    在shell中输入tcpclient PC的IP地址及端口号,点击enter提示连接成功:

    点击网络调试助手中的发送按钮,提示发送信息,并有返回信息:

    在putty中也有返回信息:

    7.2将协议切换为UDP:

    在shell中输入udpclient PC的IP地址及端口号:

     代码包下载:

    链接:https://pan.baidu.com/s/1sY-WcyCDUUj5KkmK3ZWzPw

    提取码:wjdx

  • 相关阅读:
    Data Visualisation Cheet Sheet
    数据预处理
    算法题目
    集成方法
    Mysql数据库重要知识点(知了堂学习心得)
    Working with Data » Getting started with ASP.NET Core and Entity Framework Core using Visual Studio » 创建复杂数据模型
    Working with Data » Getting started with ASP.NET Core and Entity Framework Core using Visual Studio » 排序、筛选、分页以及分组
    Working with Data » 使用Visual Studio开发ASP.NET Core MVC and Entity Framework Core初学者教程
    ASP.NET Core文档中Work with Data章节的翻译目录
    webpages框架中使用Html.TextArea()在前台显示多行信息时,如何进行大小、样式的设置
  • 原文地址:https://www.cnblogs.com/xiaomagee/p/12901649.html
Copyright © 2020-2023  润新知