嵌入式教程_DSP技术_DSP实验箱操作教程:2-28 搭建轻量级WEB服务器实验

HTML语言的嵌入式系统 嵌入式系统是指将计算机技术嵌入到一种特定的设备或系统中,以实现特定功能的计算机系统。与通用计算机相比,嵌入式系统通常具有更高的能效、更低的成本和更小的体积。它们可以是单片机、DSP(数字信号处理器)、FPGA(现场可编程门阵列)等不同形式的硬件,配合专门的嵌入式软件,实现特定的控制、监控和数据处理功能。HTML(HyperText Markup Language)是一种用于创建网页的标记语言。它通过一系列标签和属性,描述网页的结构和内容。 阅读详情

实验目的

本节视频的目的是学习TCP/IP协议的通信原理和Wed服务器的工作原理,实现搭建轻量级Web服务器。
官方公众号:创龙教仪
官方B站号:创龙教仪
官方网站:www.tronlongtech.com

实验原理

硬件原理图

实验过程中使用的是网口。

image.png

WEB服务器

(WORLD WIDE WEB,环球信息网)

即万维网,主要功能是提供网上信息浏览服务。WWW 是 Internet 的多媒体信息查询工具,是 Internet 上近年才发展起来的服务,也是发展最快和目前用的最广泛的服务。正是因为有了WWW工具,才使得近年来 Internet 迅速发展,且用户数量飞速增长。

Web服务器是在运行在物理服务器上的一个程序,它永久地等待客户端(主要是浏览器,比如Chrome,Firefox等)发送请求。当收到请求之后,它会生成相应的响应并将其返回至客户端。Web服务器通过HTTP协议与客户端通信,因此也被称为HTTP服务器。

当我们在浏览器输入URL后,浏览器会先请求DNS服务器,获得请求站点的 IP 地址。然后发送一个HTTP Request(请求)给拥有该 IP 的主机,接着就会接收到服务器给我们的 HTTP Response(响应),浏览器经过渲染后,以一种较好的效果呈现给我们。这个过程中,正是Web服务器在幕后默默做贡献。

Web工作原理

Web服务器的工作原理并不复杂,一般可分成如下4个步骤:

(1)建立连接

客户机通过TCP/IP协议建立到服务器的TCP连接。

在HTTP工作开始之前,Web浏览器首先要通过网络与Web服务器建立连接,该连接是通过TCP来完成的,该协议与IP协议共同构建Internet,即著名的TCP/IP协议族,因此Internet又被称作是TCP/IP网络。HTTP是比TCP更高层次的应用层协议,根据规则,只有低层协议建立之后才能,才能进行更层协议的连接,因此,首先要建立TCP连接,一般TCP连接的端口号是80。

Web浏览器向Web服务器发送请求命令一旦建立了TCP连接,Web浏览器就会向Web服务器发送请求命令。

(2)请求过程

客户端向服务器发送HTTP协议请求包,请求服务器里的资源文档。

浏览器发送其请求命令之后,还要以头信息的形式向Web服务器发送一些别的信息,之后浏览器发送了一空白行来通知服务器,它已经结束了该头信息的发送。

(3)应答过程

服务器向客户机发送HTTP协议应答包,如果请求的资源包含有动态语言的内容,那么服务器会调用动态语言的解释引擎负责处理“动态内容”,并将处理得到的数据返回给客户端。由客户端解释HTML文档,在客户端屏幕上渲染图形结果。

(4)关闭连接

Web服务器关闭TCP连接.

一般情况下,一旦Web服务器向浏览器发送了请求数据,它就要关闭TCP连接,然后如果浏览器或者服务器在其头信息加入了这行代码:Connection:keep-alive,TCP连接在发送后将仍然保持打开状态,于是,浏览器可以继续通过相同的连接发送请求。保持连接节省了为每个请求建立新连接所需的时间,还节约了网络带宽。

image.png

HTTP协议

(HyperText Transfer Protocol,超文本传输协议)

HTTP协议是用于从WWW服务器传输超文本到本地浏览器的传送协议,是基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等。HTTP是一个应用层协议,由请求和响应构成,永远都是客户端发起请求,服务器回送响应,是一个标准的客户端服务器模型。HTTP协议工作于客户端-服务端架构为上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。Web服务器根据接收到的请求后,向客户端发送响应信息。

HTTP是一个无状态的协议,同一个客户端的这次请求和上次请求是没有对应关系。

LwIP协议栈

LwIP是一个轻量级的TCP/IP协议栈,可用于各种嵌入式的系统中。LwIP协议是一套用于嵌入式系统的开放源代码TCP/IP协议栈。LwIP含义是light weight(轻型)IP协议,在实现时保持了TCP协议的主要功能基础上减少对RAM的占用,一般它只需要几十K的RAM和40K左右的ROM就可以运行,这使LwIP协议栈很适合在低端嵌入式系统中使用。

LwIP协议栈的设计采用分层结构的思想,每一个协议都作为一个模块来实现,提供一些与其它协议的接口函数。所有的TCP/IP协议栈都在一个进程当中,这样TCP/IP协议栈就和操作系统内核分开了。而应用程序既可以是单独的进程也可以驻留在TCP/IP进程中,它们之间利用ICP机制进行通讯。如果应用程序是单独的线程可以通过操作系统的邮箱、消息队列等,与协议栈进程通讯。如果应用程序驻留在协议栈进程中,则应用程序可以通过内部回调函数和协议栈进程通讯。

EMAC

(Ethernet Media Access Controller,以太网媒体访问控制器)

简单介绍集成在器件中的以太网媒体访问控制器(EMAC)和物理层(PHY)器件管理数据输入/输出(MDIO)模块的功能描述。 EMAC 模块用于在器件(device)和连接到同一网络的其他主机(host)之间搬移数据,遵从以太网协议。EMAC 控制从系统到 PHY 的包数据流。 MDIO 模块控制 PHY 配置以及状态监控。EMAC 和 MDIO 模块都是通过自定义接口连接到系统内核的,它允许高效率的数据发送和接收。这个自定义接口被称为 EMAC 控制模块,是 EMAC/MDIO 不可或缺的外设。

EMAC/MDIO 特点

EMAC/MDIO 具有以下特点:
(1)同步 10/100 Mbps 操作。
(2)到物理层器件(PHY)的标准媒体独立接口(MII)或简化媒体独立接口(RMII)。
(3)EMAC 作为到器件内外存储空间的 DMA 主控 。

程序流程

image.png

操作现象

硬件设备

本实验使用的硬件接口为网口,所需硬件为实验板、仿真器、网线、RS232 交叉串口母母线、USB转RS232串口线和电源。

image.png

硬件连接

(1)使用网线连接实验板的网口和路由器,程序默认是动态获取IP的。如果没有路由器,则使用网线连接实验板的网口和电脑的网口,请根据实验手册修改程序以及设置电脑的静态IP。

(2)使用 RS232 交叉串口母母线和 USB 转 RS232 串口线连接实验板的UART2串口和电脑的 USB口。

(3)连接仿真器和电脑的USB接口,

(4)将拨码开关拨到DEBUG模式01111,连接实验箱电源,拨动电源开关上电。

image.png

软件操作

(1)先在设备管理器查看串口的端口号;

(2)再设置串口调试工具,波特率设置为115200。

image.png

设置好串口调试工具后,在CCS里进行相关操作。

导入工程,选择Demo文件夹下的对应工程

编译工程

将CCS连接实验箱并加载程序

点击运行程序,串口终端会打印自动获取到的实验箱IP地址

image.png

在 Windows 开始菜单底部输入 cmd 进入控制台窗口,执行 ping 命令,确认实验箱的网络部分工作正常。

打开浏览器输入网址 http://192.168.0.116,就可以看到网址内容。

实验结束后,先点击黄色按钮暂停程序运行,再点击红色按钮退出CCS与实验箱的连接,最后实验箱断电即可。

image.png

以太网(ethernet)通信。DSP开发板28388D发送数据,电脑接收数据。使用的是UDP协议 使用的开发板(DSP28388D): TMDSCNCD28388D(3核) 想要实现的目标: 电脑连到交换机A上,开发板连到交换机A上。电脑与开发板能够进行数据通信(暂时,先调开发板给电脑发送数据) 开发板的开发软件: CCS10.1.0 软件安装注意: CCS软件的安装位置与工作空间的位置,需要在不同的存储盘。(例如:我的CCS软件安装在D盘,工作空间放在了F盘) 使用的例程: TI 提供的C2000 WARE 3.04 C2000ware的位置,要保证原路径不变化。(C盘) CPU1:e 阅读详情

相关推荐

LWIP——无操作系统移植

目录移植说明LwIP前期准备 以太网DMA描述符LwIP移植流程添加网卡驱动程序添加LwIP源文件 移植头文件网卡驱动编写移植总结 LwIP的移植可以分为两大类:第一类是只移植内核核心,此时用户应用程序编写只能基于RaW/CallBack API进行;第二类是移植内核核心和上层API函数模块,此时用户可以使用所有三种API进行编程,即除了RaW/CallBack API外,还有Netconn API和Socket API。第一种移植比较简单,只需完成头文件的定义以及根据使用的具体网卡完成ethernetif

qq_43460068的博客 8772

单片机学习:手把手教你移植LWIP(ENC28J60)

这里只是移植,所以LWIP那么多的协议都不需要管,只要知道哪里需要我们修改,为什么修改就可以了。 上图就是整个移植的基本思路,非常清晰的三个层次。其实想想,本质上就是收发数据,只是LWIP协议通过对数据的封装可以实现网络传输。从图中我们就可以看到这里首先需要ENC28J60的驱动,这个驱动需要实现数据的收发,驱动可以在网上找一个。其次就是要移植并修改LWIP协议了。移植 1.下载LWIP1.

he_wen_jie的博客 2万+

基于DM642 DSP的实时JPEG网络摄像头系统设计与优化实践

在嵌入式视觉处理领域,实时视频流的压缩与网络传输是核心挑战,尤其在安防监控和工业检测等对实时性要求极高的场景。其技术原理通常涉及从视频采集、图像压缩到网络分发的完整数据流处理。JPEG编码作为广泛应用的图像压缩标准,通过离散余弦变换(DCT)、量化和熵编码等步骤,在保证一定图像质量的前提下显著减少数据量。在嵌入式DSP平台上实现高效的实时JPEG编码,其技术价值在于能够在资源受限的环境中,满足低延迟、高帧率的处理需求。这需要深入理解芯片架构、内存管理和多任务调度。典型的应用场景包括网络摄像头、远程监控和机器

weixin_34218890的博客 354

《嵌入式 - Lwip开发指南》第2章 LWIP开发环境简介

开发环境: Keil:V5.30 开发板:STM32 Nucleo-F746ZG开发板 LWIP:V2.1.2 PHY芯片:LAN8742A 在LWIP 教程中 PHY 层使用的是LAN8742A芯片,相当于物理层, STM32F746自带的 MAC 层相当于数据链路层,而 LWIP 提供的就是网络层、传输层的功能,应用层是需要用户自己根据应用需求去实现的。 本文将介绍整个网络开发环境所需的环境与资源。 2.1开发板简介 NUCLEO-F746ZG开发板的处理器是STM32F746ZGT6U,基于ARM 3

不问归期的博客 3681

ARM+DSP异构双核处理器架构解析与嵌入式音频处理实战

在嵌入式系统开发中,异构多核处理器通过集成通用控制核心与专用计算核心,有效解决了高性能与低功耗、实时性与复杂任务调度的矛盾。其核心原理在于将ARM等通用处理器负责运行操作系统、管理任务与通信,而DSP则专精于并行计算密集的数学运算,两者通过共享内存与高效总线进行低延迟数据交换。这种架构的技术价值在于显著提升了系统能效比与实时处理能力,尤其适用于对算力与功耗有严苛要求的场景。在音频处理、电机控制、传感器融合等领域,异构双核设计已成为实现高性能嵌入式系统的关键。本文以TI OMAP-L137为例,深入剖析其AR

weixin_29171087的博客 319

MSC8144 DSP与ATCA平台开发实战:从芯片架构到系统集成

在嵌入式系统与高性能计算领域,多核数字信号处理器(DSP)是实现实时信号处理的核心组件。其原理在于通过超长指令字(VLIW)和单指令多数据(SIMD)架构,并行执行密集的乘加运算,从而高效处理语音、视频编解码及无线基带等算法。这类技术的核心价值在于为通信设备提供了高密度、低延迟的确定性算力。典型的应用场景包括无线基站、媒体网关和高密度数据包处理等电信级设备。本文以经典的MSC8144多核DSP为例,深入剖析其StarCore内核与分层内存设计,并探讨如何基于AMC开发板和ATCA标准,构建可扩展的高性能媒体

cuifan5176的博客 461

嵌入式web服务器系统设计,浅谈实用的嵌入式Web服务器设计

数字化变电站是建立在网络通信技术和电子技术基础上的一种新型变电站自动化系统,其中一个重要特征就是二次设备的网络化。目前在国内的数字化变电站试点中,已经出现了大批支持以太网和TCP/IP协议的嵌入式IED,在具体开发和应用中发现,由于现场环境的复杂多变以及客户需求的多样性,经常需要对这些IED进行参数的配置和修改。但厂家多采用专门的配置软件来进行,操作界面不够统一,给现场操作带来诸多不便。而采用We...

weixin_35786588的博客 1266

嵌入式网络开发实战:基于MCF5223x与ColdFire TCP/IP Lite协议栈

在工业物联网和嵌入式系统领域,实现设备联网是核心需求。TCP/IP协议栈作为网络通信的基石,其工作原理涉及数据封装、路由寻址和可靠传输。掌握轻量级协议栈的移植与优化,能显著提升嵌入式设备的联网能力与开发效率,对于构建工业网关、环境监测等实时性要求高的应用具有重要价值。本文聚焦于恩智浦经典的ColdFire MCF5223x微控制器,该芯片高度集成了以太网MAC/PHY和加密加速单元(CAU),为单芯片网络解决方案提供了硬件基础。通过深入剖析其配套的ColdFire_TCP/IP_Lite协议栈(基于Nich

weixin_34216196的博客 588

分享几个嵌入式相关的高星开源项目

本文分享了一些高分的嵌入式项目,旨在帮助热爱嵌入式的伙伴快速掌握嵌入式相关技能。

qq_42732669的博客 1万+

DSP+ARM+FPGA异构平台开发实战:架构、通信与多核协同

在嵌入式系统与高性能计算领域,异构计算架构通过整合不同架构的处理器核心,如通用CPU、数字信号处理器和可编程逻辑门阵列,旨在实现性能、功耗与灵活性的最优平衡。其核心原理在于根据任务特性进行硬件加速,将控制密集型、计算密集型和高度并行化的任务分别卸载到最擅长的处理单元上执行。这种架构的技术价值在于能够显著提升复杂实时信号处理、图像视觉等应用的吞吐量和能效比。典型的应用场景包括雷达信号处理、软件无线电和高端机器视觉系统,这些场景通常涉及高速数据采集、流式处理和低延迟响应。本文以XQ6657Z45-EVM开发板为

weixin_30755393的博客 394

嵌入式开发热潮:物联网、汽车智能与AI融合驱动下的技术变革与职业机遇

嵌入式系统作为专用计算机系统,是物联网、智能硬件和工业控制的核心技术基础。其工作原理基于微控制器或微处理器,通过软硬件协同实现对物理设备的实时控制与智能处理。随着物联网的全面渗透和汽车“新四化”(电动化、智能化、网联化)的产业升级,嵌入式系统的技术价值日益凸显,不仅支撑着边缘计算和人工智能下沉应用,还成为实现国产化替代与工业升级的关键。在应用场景上,从智能家居的传感器融合到自动驾驶的域控制器,再到工业物联网的预测性维护,嵌入式开发正与AI技术深度融合,推动着TinyML等轻量级AI模型在资源受限设备上的部署

weixin_30905981的博客 376

DSP/BIOS下精简UDP/IP协议栈与以太网驱动实战设计

在嵌入式系统开发中,网络通信是连接设备与外界的关键技术。其核心原理在于通过协议栈实现数据的分层封装与解析,其中UDP/IP协议因其无连接、低开销的特性,在实时性要求高的场景中具有重要技术价值。它避免了TCP复杂握手与重传带来的延迟,为工业控制、传感器网络等应用提供了确定性通信基础。本文聚焦于在资源受限的TI DSP平台上,基于DSP/BIOS实时操作系统,深入探讨如何实现一个高度优化的以太网驱动与UDP/IP协议栈。通过剖析零拷贝、数据包描述符等核心机制,并结合静态内存池、多缓冲池等工程实践,旨在为嵌入式网

weixin_34059951的博客 430

18、工业互联网云平台系统与DSP程序在线升级技术解析

本文深入解析了基于EMQX的工业互联网云平台系统与TMS320F28004x DSP系列程序在线升级技术。云平台采用MQTT协议与MVC架构,实现设备数据的高效通信、远程监控与用户权限管理;DSP在线升级方案通过RS485总线和乒乓存储机制,支持远程固件更新,提升系统可维护性与应用灵活性。两项技术结合为工业智能化发展提供了有力支撑,具有广阔的应用前景。

kk1234的博客 49

内存涨价、供应不稳?嵌入式工程师必看:适合轻量级项目ARM选型与存储避坑指南

单片机不够用时,如何选择高性价比的ARM架构方案,以及在当前“存储涨价潮”下,如何做最精明的选型

2301_77004572的博客 428

基于H743IIT6开发板的RT-Thread系统移植与网络服务构建(集成LAN8720+W25Q128,支持TFTP与Web服务器)

为适配文件系统,需封装底层操作为统一接口:// 分页写入,防止越界} else {i++) {return 0;这些函数将被绑定至rt_device结构体,供FATFS或littleFS调用。

weixin_30923011的博客 1190

利用以太网硬件在环路实现高带宽DSP仿真

通常情况下,在设计基于FPGA的大型信号处理系统的时候,设计人员往往需要进行费时费力的仿真。以Xilinx System Generator for DSP为代表的FPGA设计工具,通过提供可靠的硬件在环接口(该接口可以直接将FPGA硬件置入设计仿真),来解决这种问题。

轻量级TTS技术深度解析:如何在资源受限环境中选择最佳语音合成方案

在物联网设备、嵌入式系统和辅助技术领域,文本转语音(TTS)技术的选择往往面临一个核心矛盾:**语音质量**与**资源消耗**的权衡。当内存只有几MB、CPU频率不到1GHz时,传统的云端TTS或大型神经网络模型变得不切实际。那么,如何在有限的硬件资源下实现多语言、低延迟的语音合成呢? 本文将深入探讨轻量级TTS技术,特别聚焦于**espeak-ng**这一开源解决方案,通过技术对比、架构分析和

gitblog_00954的博客 480

从实验室到生产线:Qwen3-Omni后训练技术在实际业务中的落地挑战

本文探讨了Qwen3-Omni后训练技术在实际业务中的落地挑战,重点分析了多模态AI在工业应用中的关键问题与解决方案。通过金融风控、跨境电商等场景案例,揭示了通用模型与垂直需求的矛盾,并提供了知识蒸馏、语音合成优化等实战经验,助力企业实现技术到业务的转化。

weixin_29035147的博客 269

基于STM32的嵌入式音乐分类设备开发

本文介绍了如何在星图GPU平台上自动化部署🎵 音乐流派分类 Web 应用 ccmusic-database/music_genre镜像,快速构建音乐风格识别服务,适用于在线音频内容打标、智能歌单生成及音乐教育平台等典型场景,显著降低AI模型服务化门槛。

weixin_36487018的博客 95

车载以太网入坑指南,从小白到懂哥的进阶之路【技术分享】

各位技术大佬们好!最近公司项目涉及到车载以太网,刚开始完全懵逼,花了大半个月时间各种查资料、测试设备,总算是摸清了门道。想着互联网上卧虎藏龙,肯定有不少大佬对这个技术感兴趣,所以写个帖子分享一下,顺便求各位大佬指点。

starelink的博客 1262

全球气候模式降尺度方法总结及其代码实现

简介总结各类型气候模式降尺度方法

WW、forever的博客 1万+
上一篇: 嵌入式DSP教程_DSP实验箱操作:2-27 基于USB接口的存储# 设备实验
下一篇: 嵌入式教程_创龙教仪DSP 教学实验箱操作:2-9 VGA显示实验
Tronlongtech
博客等级 码龄4年 687粉丝 102原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值