• 深入理解CPU上下文切换、进程上下文、中断上下文

    由于Linux是一个多任务操作系统,能够支持远大于CPU数量的任务同时运行。

    04-25 149浏览
  • 深入理解CPU上下文切换、进程上下文、中断上下文

    由于Linux是一个多任务操作系统,能够支持远大于CPU数量的任务同时运行。

    04-24 154浏览
  • DSP原理及应用

    7. 1 串行外设接口 ( SPI) 7. 1. 1 SPI 模块概述串行外设接口 ( Serial Peripheral Interface, SPI) 是一个高速同步的串行输入 / 输出接口,通常用于 DSP 与外设或其他处理器之间的通信。 其通信长度 (1 ~ 16 bit) 和通信速率都是可编程的。 SPI 可采用主 / 从模式实现多处理器通信, 典型的应用包括扩展 I / O、 移位寄存器、显示驱动器、 模 - 数转换器 ( ADC) 等器件的外设拓展。 C28x 系列 DSP 的 SPI 支持 16 级深度的发送和接收 FIFO ( 先入先出) 以减小 CPU 开销。 1. 增强型 SPI 模块概述SPI 与 CPU 接口如图 7-1 所示。多通道缓冲串行口 ( McBSP)7. 2. 1 McBSP 概述2833x 系列器件提供了两个高速多通道缓冲串口 (McBSP), 可以与 CODEC 或系统其他器件直接相连。 McBSP 包含了与器件相连接的数据端口和控制端口, 共 6 个引脚, 如图 7-14所示。McBSP 有如下特性:● 全双工通信方式。● 双缓冲发送数据和三缓冲接收数据, 允许连续数据流操作。● 发送和接收具有独立时钟和帧同步的信号。● 具有向 CPU 传送中断请求和向 DMA 控制器传送 DMA 事件的功能。● 128 个发送和接收通道。● 多通道选择模式可以允许或禁止每一通道的传输。● 与工业标准的 CODEC、 模拟接口器件 ( AIC) 及其他串行接口 ADC 模块和 DAC 模块直接连接。● 支持外部的时钟信号和帧同步信号。● 内有可编程的采样率发生器, 用以发生和控制内部时钟信号及帧同步信号。● 帧同步信号和时钟信号的极性可编程。● 与 T1 / E1 帧调节器、 IOM - 2 兼容设备、 AC97 兼容设备、 I2S 兼容设备、 SPI 设备的直接连接。● 数据长度选择范围宽可以是 8、 12、 16、 20、 24、 32 位。● μ - 律和 A - 律格式数据压缩扩展。● 发送或接收 8 位数据时, 可以先传送最低有效位。● 有异常 / 错误状态标志位。● 不支持 ABIS 模式。串行通信接口 ( SCI)7. 3. 1 SCI 模块概述串行通信接口 ( SCI) 是一个两线制异步串行接口, 即通常所说的 UART 口。 SCI 模块支持 CPU 和其他使用标准不归零码 ( NRZ) 的异步外设之间的数字通信。 SCI 的接收器和发送器各自具有一个 16 级深度的 FIFO, 从而减小了 CPU 开销, 并且它们都有独立的使能位和中断位。 两者可以独立地进行半双工通信, 或者同时进行全双工通信。为了保证数据的完整性, SCI 模块对接收到的数据进行间断检测、 奇偶校验、 溢出以及帧错误检测。 通过配置 16 位的波特率选择寄存器可以设置不同的 SCI 通信速率。1. 增强型 SCI 模块特征SCI 模块与 CPU 的连接如图 7-29 所示。DSP原理及应用——跟我动手学TMS320F2833x(411页).pdf

    03-05 204浏览
  • 极速对决:揭秘10种主流PLC在ModbusTCP通信中的速度表现!

    -Begin-大家好!我是付工。通透!终于把ModbusRTU弄明白了这样看来,ModbusTCP协议太简单了太简单了!C#轻松实现Modbus通信前面给大家介绍了一系列关于Modbus和ModbusTCP的知识。今天给大家来实测一下,对于不同品牌的PLC或板卡实现ModbusTCP通信时,通信速度有多快。测试界面我们使用自己开发的通信库进行测试,不同通信库会有细微区别,测试结果仅供参考,并不针对具体产品及厂家。下面是我们的PLC平台,我们选择其中几个比较常用的支持ModbusTCP通信协议的PLC来进行测试。测试软件设计界面如下所示:ModbusTCP默认端口号是502,所以不同设备仅仅只是IP地址不同而已,为了保证数据的准确性,我们使用循环读取的方式,循环三组,每组连续读取10000次,观察总耗时。同时,我们读取的存储区也是一样的,读取4区从0开始的100个寄存器。西门子200Smart西门子200Smart PLC,我们采用的是CPU ST40,大家都知道西门子PLC想要支持ModbusTCP通信,是需要写一点PLC程序的,如下图所示:测试结果如下所示:西门子1200西门子1200 PLC,我们采用的是CPU 1215C DC/DC/DC,西门子1200 同样也需要写一点PLC程序的,如下图所示:测试结果如下所示:西门子1500西门子1500 PLC,我们采用的是CPU 1511-1 PN,西门子1500 同样也需要写一点PLC程序的,如下图所示:测试结果如下所示:三菱FX5U三菱FX5U PLC,我们采用的是FX5U-32MT/ES,三菱FX5U PLC是直接支持ModbusTCP的,但是需要做下配置,在以太网配置里加上ModbusTCP连接设备,端口号设置为502。测试结果如下所示:施耐德M241施耐德PLC,我们采用的是施耐德M241,这个不需要额外写PLC程序。测试结果如下所示:信捷XD5E信捷PLC,我们采用的是信捷XD5E,国产PLC对Modbus协议支持比较好,不需要额外写PLC程序。测试结果如下所示:台达DVP台达PLC,我们采用的是台达DVP-32ES,这个不需要额外写PLC程序。测试结果如下所示:汇川AM600汇川PLC,我们采用的是汇川AM600-CPU1608TN,这个不需要额外写PLC程序。测试结果如下所示:汇川H5U汇川PLC,我们采用的是汇川H5U,这个不需要额外写PLC程序。测试结果如下所示:汇川EASY汇川PLC,我们采用的是汇川EASY521,这个不需要额外写PLC程序。测试结果如下所示:正运动板卡正运动运动控制卡,我们采用的是ECI1408,这个不需要额外写程序。测试结果如下所示:总结通过以上测试结果,我们可以得出以下几个结论:1、由于不同设备对ModbusTCP的处理方式不同,因此最终通信速率有所区别,但平均周期均在10ms以内,此时间为单次交互的时间。2、上位机通信很稳定,连续百万次交互都没有失败次数。3、读取1个寄存器的耗时与读取100个寄存器耗时时间差别不大,上位机开发中尽量采用批量读取的方式。写在最后今年8月,历经2年,我出版了一本上位机书籍——《C#上位机开发实战指南》。我的新书《C#上位机开发实战指南》出版了大家如果需要购买,可以通过京东旗舰店购买。如果需要作者签名版,可以联系我【+V:fuswj001】,59元包邮。-END-上位机技术文章,请关注公众号【上位机Guide】上位机技术交流,请添加本人微信【fuswj001】感谢大家阅读,关注我,分享上位机开发技术。

    01-03 170浏览
  • 什么是DRM?

    DRM介绍

    2024-12-19 284浏览
  • 如何调试一个处理器

    电路板回板后,如果串口能够正常打印,则我们很多调试手段都可以运用,能够运用串口打印,或者调试工具能够快速的进行问题定位。

    2024-12-06 323浏览
  • STM32手册:串口流控制功能

    串口接收方CPU拿取数据的速度赶不上串口数据的通信速度时,会导致丢数据的现象。使用串口流控制功能可以解决以上问题

    2024-11-22 168浏览
  • 一个简单的例子,轻松搞懂CPU的工作原理

    本文我们将从软件工程师的角度去了解计算机是如何工作的,通过对计算机核心工作机制的学习,有利于理解我们平时编程时

    2024-09-24 610浏览
  • 数字信号处理中的FIR滤波器应用

    考虑一个数字信号处理的实例,比如有限冲击响应滤波器(FIR)。用数学语言来说,FIR滤波器是做一系列的点积。取一个输入量和一个序数向量,在系数和输入样本的滑动窗口间作乘法,然后将所有的乘积加起来,形成一个输...

    2024-09-12 325浏览
  • 数字信号处理的模数转换与数模转换详解

    数字信号处理是将信号以数字方式表示并处理的理论和技术。数字信号处理与模拟信号处理是信号处理的子集。数字信号处理的目的是对真实世界的连续模拟信号进行测量或滤波。因此在进行数字信号处理之前需要将信号从模...

    2024-09-12 305浏览
正在努力加载更多...
广告