1470|1

157

帖子

0

TA的资源

一粒金砂(高级)

楼主
 

【STM32F746 Nucleo-144】二、CubeMX-Lwip-FreeRTOS-ETH [复制链接]

  1. 介绍
     
    Lwip是一种小型的网络通讯架构,通讯数据量和通讯数据接口都有限制,在之前的项目开发中,就遇到了这个问题。Lwip网络架构可以在裸机下进行使用,但是要得到更高的效率和速度推荐在freeRTOS系统下进行开发。
     
    首先,我们需要考虑的是LwIP的网络接口。LwIP支持多种网络接口,包括以太网、Wi-Fi、蓝牙等等。我们可以根据具体的应用场景来选择合适的网络接口。例如,对于需要高速数据传输的场景,我们可以选择以太网接口;对于需要低功耗、便携性的场景,我们可以选择Wi-Fi或蓝牙接口。
     
    其次,我们需要考虑的是LwIP的协议栈。LwIP支持多种协议,包括TCP/IP、HTTP、FTP等等。我们可以根据具体的应用场景来选择合适的协议。例如,对于需要实现互联网访问的场景,我们可以选择TCP/IP协议;对于需要实现网页浏览的场景,我们可以选择HTTP协议。
     
    再次,我们需要考虑的是LwIP的并发性。LwIP支持多线程和并发处理,这使得它能够在同一时间处理多个连接和任务。我们可以根据具体的应用场景来选择合适的并发模型。例如,对于需要实现实时通信的场景,我们可以选择使用LwIP的多线程模型;对于需要实现高并发的场景,我们可以选择使用LwIP的并发处理模型。
     
    最后,我们需要考虑的是LwIP的可定制性。LwIP可以进行定制和裁剪,以适应不同的硬件平台和应用场景。我们可以根据具体的需求来选择合适的定制方案。例如,对于需要降低内存占用的场景,我们可以选择对LwIP进行裁剪和优化;对于需要增强安全性的场景,我们可以选择对LwIP的加密和认证模块进行定制和扩展。
     
     
    FreeRTOS是一个流行的实时操作系统(RTOS),广泛应用于嵌入式系统和物联网设备。它提供了一个轻量级的、可伸缩的、可移植的解决方案,用于管理任务、调度器、中断和外设。
     
    FreeRTOS的核心是任务调度器,它能够在不同的优先级上调度多个任务,并确保每个任务都能够得到及时响应。此外,FreeRTOS还提供了丰富的API函数,使用户能够轻松地管理任务、队列、信号量、互斥量和定时器等资源。
     
    FreeRTOS具有以下特点:
     
    1. 轻量级:FreeRTOS内核只占用很小的内存空间,因此非常适合资源受限的嵌入式系统。
    2. 可伸缩:FreeRTOS支持多达255个优先级,可以根据项目需求实现灵活的任务调度。
    3. 可移植:FreeRTOS支持多种硬件平台和处理器架构,方便用户将其移植到不同的硬件环境中。
    4. 可靠性:FreeRTOS内核经过了严格测试和验证,能够确保系统的稳定性和可靠性。
    5. 开源免费:FreeRTOS是开源的,可以免费使用和修改。此外,FreeRTOS还提供了完善的文档和社区支持,方便用户学习和使用。
     
    总之,FreeRTOS作为一种流行的实时操作系统,在嵌入式系统和物联网设备领域得到了广泛的应用。它具有轻量级、可伸缩、可移植、可靠和开源免费等优点,为用户提供了一种高效、可靠的解决方案。
     
    本项目介绍
    使用了lwip协议架构,FreeRTOS操作系统和硬件ETH外设驱动,使用CubeMX软件进行图形化编程,所生成的代码,具有网络通讯的基础功能,可以直接链接到路由器,并获取自己的IP地址,并且可以使用 ping 命令 ping通。
     
  2. CubeMX实现步骤
    2.1 选择芯片或者开发板,因为此开发板是ST官方开发设计的在CubeMX中存有现成的资源
      
    2.2 工程加载后
    ETH外设功能引脚自动配置还有板载LED和串口3等功能
      
    2.3 系统时钟
      
    将系统时钟改到最高速度
      
    2.5 GPIO引脚查看
      
    2.6 FreeRTOS系统勾选配置
    FreeRTOS操作系统由V1 和V2两个版本,简单描述一下。
    FreeRTOS操作系统是一个实时操作系统(RTOS),为嵌入式系统提供了一个灵活、高效和易用的软件平台。FreeRTOS自发布以来,已经经历了多次更新和改进,其中最重要的两个版本是V1和V2版本。
    FreeRTOS V1版本是该操作系统的初始版本,它提供了一个简单而功能强大的内核,支持多任务、中断、队列、消息传递和定时器等功能。V1版本的目标是提供一个能够用于各种嵌入式应用的RTOS框架,支持多种不同的硬件平台,并提供了丰富的API函数和示例代码。
    FreeRTOS V2版本是对V1版本的改进和扩展,它在保持V1版本的核心架构的同时,增加了一些新的特性和功能。其中最显著的是引入了内存管理功能,允许开发人员更好地管理嵌入式系统的内存资源。此外,V2版本还增加了更多的硬件支持,优化了任务调度器,提供了更高效的API函数和更丰富的中间件组件。
    除了V1和V2版本外,FreeRTOS还经历了多个版本的更新和发展,其中包括FreeRTOS V3版本,该版本引入了更多新的特性和功能,例如对低功耗处理器的支持,更高效的队列操作和更强大的可扩展性。FreeRTOS的后续版本还不断对操作系统进行优化和完善,以适应不断变化的应用需求和技术发展。,
      
    2.7 Lwip配置 在此也选择默认
        
    2.8 代码生成配置
      
      
  3. 程序编译测试
    3.1 程序编译后运行下仿真,不然就需要将本地IP地址用串口打印出来。
    如图所示,本地IP是0x5202A8C0 转换成十进制就是 82 2 168 192 所以本机地址是192.168.2.82
    网关IP地址是0x0102A8C0 转成十进制就是 1 2 168 192 ,192.168.2.1
      
     
      
    3.2 使用命令行ping 一下,通讯正常,可以进行下一步的程序开发。
      
    3.3 当前工程代码
    RtosETH.rar (58.4 MB, 下载次数: 3)
此帖出自stm32/stm8论坛

最新回复

谢谢分享!期待后续!   详情 回复 发表于 2023-9-27 15:12
点赞 关注
 

回复
举报

7462

帖子

2

TA的资源

五彩晶圆(高级)

沙发
 

谢谢分享!期待后续!

此帖出自stm32/stm8论坛
 
个人签名

默认摸鱼,再摸鱼。2022、9、28

 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表