当前位置: 首页 > news >正文

网站管理文档怎么写上海市工程建设协会网站

网站管理文档怎么写,上海市工程建设协会网站,如何让搜索引擎收录网站,广州涉疫重点场所有更新引言 在嵌入式中#xff0c;不可避免地会遇到数据的收发。 其实#xff0c;数据的收发有很多情况。 总体上#xff0c;分为数据的收和发#xff1a; 其中#xff0c;数据发送是一个主动的行为#xff0c;我们对要发送数据的数量特点等都是知道的#xff0c;比如我们通过…引言  在嵌入式中不可避免地会遇到数据的收发。 其实数据的收发有很多情况。 总体上分为数据的收和发 其中数据发送是一个主动的行为我们对要发送数据的数量特点等都是知道的比如我们通过串口发送数据这时候使用常规发送方式或者结合使用DMA都是可以的 相较而言数据的接收就会麻烦一些因为接收数据对于用户来说是一个被动响应的行为。接收数据也有很多种情况 1、接收定长数据 2、接收不定长数据 3、接收的数据是随机到来的比如串口屏的触摸发送键值到下位机这种情况下触摸行为是没有任何规律的数据之间发送的间隔一般也比较长 4、一直不断地接收大量数据比如单片机需要一直接收串口数据 5、接收数据后透传出去 6、接收数据保存起来等待上层应用访问 以上几种情况分别如何处理呢 以串口为例 首先不管是哪种情况只要是底层接收数据就一定要使用缓冲技术为什么呢 这是因为底层数据接收的速度很快而我们处理数据的速度没那么快如果只是简单的一两个语句来处理比如给变量赋个值做个简单的判断没什么问题如果语句多了比如printf也有可能来不及处理关于这点可以参考这篇文章 基于串口的BLE模组CC2640R2使用总结_路溪非溪的博客-CSDN博客 那么这些情况的缓冲有何区别呢 1、接受定长数据相对简单使用普通串口接收或者DMA都可以 2、接收不定长数据就需要使用串口中断空闲中断或者DMA空闲中断仍然参考 基于串口的BLE模组CC2640R2使用总结_路溪非溪的博客-CSDN博客 3、接收数据随机到来因为数据接收没那么快一次可能只接受一两帧数据所以不需要太大的缓冲区具体参考F103串口和DMA配合使用总结_路溪非溪的博客-CSDN博客 4、这个情况就需要相对大一些的缓冲区因为数据来得比较快可能还来不及处理就被覆盖了具体参考这篇文章F103串口和DMA配合使用总结_路溪非溪的博客-CSDN博客 5、接收数据后透传出去这个基本都是底层的传输所以接收缓冲后就可以发出去这个参考基于串口的BLE模组CC2640R2使用总结_路溪非溪的博客-CSDN博客 6、接收数据保存起来供上层使用这里就有个问题底层接收数据保存起来上层处理速度没那么快就需要考虑一些问题缓冲区设置多大合适呢多久处理一次呢 以上提到的就是缓冲区的用法用来解决快速的数据接收和慢速的数据处理之间不匹配的问题具体看这张图就能理解了 其实这里比较麻烦的也是比较常见的情况就是上面几种情况的综合 接受不定长数据不断接收数据帧保存起来供上层使用。 具体参考F103串口和DMA配合使用总结_路溪非溪的博客-CSDN博客 串口空闲中断DMA可以解决前两个问题再就是接收的数据需要放在一个缓冲区里面上层应用需要时就来拿这个数据。 考虑这种场景 电路中有连续的电压单片机通过AD采样数据注意这时候连续的数据就被离散化了只要采样率满足采样定理就能无失真地还原出原有信号的样子。 假如我们要采的是正弦信号的RMS值那么就是个恒定的直流量其中有一些波动是很正常的事情。此时数据接收后缓存起来缓存一些数据后做个均值滤波等等处理然后得到一个比较稳定的值再将这个值存在一个变量中此时这个变量其实刷新的速率也是很快的。到这里其实是底层的事情。 现在我上层需要将这些数据拿来显示在屏幕上如果来一个数据我们就显示一个数据那么就强迫上层跟着下层的速度首先跟不跟得上不说上层这么快显示数据没有什么必要增加数据发送的负担不说我们人眼也识别不过来如果底层1s刷新1000个点那我1秒去拿10个数据来显示也可以也就是在定时器中每隔100ms去拿一个数据最好调整下这个间隔以适配我们人眼的观察视觉而且如果不这样底层有时因为其他干扰数据发送时快时慢我们上层显示也会时快时慢如果定时去取值显示就不会受底层速度的干扰从而实现了底层快速和上层慢速的隔离各司其职用缓冲区作为“中介”。 就像这样拿数据显示 另外还有一点如果我发数据给串口屏太多太频繁可能会影响到同时发送的其他数据从而造成卡顿。 这里面有一点值得注意就是如果这样显示那不就是有很多数据没有拿到首先这里拿的是个RMS值理想上是个恒定值而且本来就是满足采样定理所采集到的离散值从连续到离散本来也有很多数据没采到但是不影响效果。 到底什么是缓冲技术呢  缓冲区可以说是计算机中的一个连接站用于连接计算机中高速、低速运行的部件。 作用缓冲通常用于临时存储数据以平衡不同速度的数据传输过程之间的差异。它可以用来解决数据传输速度不匹配的问题。 工作原理缓冲区是一个存储区域用于暂时保存数据待数据传输速度对齐后再将数据发送出去。在数据传输过程中如果数据接收速度较快数据会被存储在缓冲区中。 数据处理 缓冲区通常不会对数据进行处理或修改它只是临时存储数据的容器。 可以参考这个总结 缓冲是两种不同速度设备之间的传输信息时平滑传输过程的常用手段。 引入缓冲技术的原因 1、  为了进一步缓和CPU和I/O设备之间速度不匹配的矛盾。 2、  提高CPU与I/O设备之间的并行性。 3、  为了减少中断次数和CPU的中断处理时间。如果没有缓冲慢速I/O设备每传一个字节就要产生一个中断CPU必须处理该中断。如果用了缓冲技术则慢速的I/O设备将缓冲区填满时才向CPU发出中断从而减少了中断次数和CPU的中断处理时间。 4、  为了解决DMA或通道方式下数据传输的瓶颈问题。DMA或通道方式都适用于成批数据传输在无缓冲的情况下慢速I/O设备只能一个字节一个字节的传输信息这造成DMA方式或通道方式数据传输的瓶颈。缓冲区的设置适应了DMA或通道方式的成批数据传输方式解决了数据传输的瓶颈问题。 这里顺便提一下另外还有个概念叫缓存注意区分 作用 缓存用于存储已经计算过或获取过的数据以便在后续访问时能够更快地获取数据从而提高系统的响应速度。 工作原理 缓存会将经常访问的数据复制到更快的存储介质中如内存以便在后续访问时无需再从原始数据源获取。这样能够减少数据访问时间提高性能。 数据处理缓存中的数据通常可以根据需要进行处理以满足特定的访问要求。例如可以将数据库查询结果存储在缓存中以减少数据库访问频率。 实际应用Web浏览器使用缓存来存储已经访问过的网页以便下次访问同一网页时能够更快地加载。 两者主要区别如下 用途不同缓冲主要用于平衡数据传输速度差异而缓存主要用于提高数据访问速度。 数据处理缓冲不对数据进行处理只是暂时存储而缓存可以对数据进行处理以满足特定需求。 存储介质缓冲通常用于暂时存储数据存储在相同或类似的介质上而缓存通常将数据存储在更快的存储介质中如内存。 数据类型缓冲可以用于各种数据类型包括传输中的数据而缓存通常用于经常被访问的数据。 总之缓冲和缓存在数据处理中有着不同的作用和机制了解它们的区别有助于更好地理解在不同情况下如何使用它们来优化数据传输和访问性能。 环形缓冲区  可直接参考 【数据结构】环形缓冲区介绍原理讲解代码实现。内核__嵌入式__c语言数组
http://www.dnsts.com.cn/news/28919.html

相关文章:

  • 天津建设教育培训中心网站网版制作过程
  • 有没有什么网站专门帮人做问卷河南建设工程造价信息
  • 进贤县住房和城乡建设局网站长沙关键词优化首选
  • 本地网站模板修改网站开发大致需要哪些步骤
  • 东莞市品牌网站建设平台营销管理网站制作
  • 俄罗斯网站域名中国能源建设集团有限公司子公司
  • 专做水果店加盟的网站长沙公交优化
  • 金沙洲网站建设工作室怎样在网站做转向连接
  • 网站系统开发怎么做通过服务推广网站的案例
  • 大型建站公司是干嘛的线上营销有哪些
  • 河北网站开发联系电话中国最大的网站
  • 网站优化潍坊wordpress多语言站点
  • 阿里云做网站送服务器吗如何查看网站是否被k
  • 福田建设大型网站建设公司好吗百度网站的优缺点
  • 做微信小程序网站求一个自己做的网站链接
  • 新网站内部优化怎么做360推广登录
  • 网站怎么做自响应如何设计网站域名
  • 电脑网站与手机的区别是什么网站域名的意思
  • 牡丹江市建设银行门户网站如何做好营销型网站用户体验
  • 网站建设专业英文免费做 爱视频网站
  • 黄石做网站多少钱seo排名优化关键词
  • 许昌住房和城乡建设部网站江苏省城乡和住房建设厅网站
  • 网站建设属于那个科目潍坊建设局官方网站
  • 北京免费建网站wordpress主题分为多章节
  • 做宝玉石交易的网站有哪些汕头哪里学网站建设最好
  • 域名备案后怎样做网站wordpress获取新密码
  • 如何修改用织梦做的网站的模板一个服务器放多少网站
  • 成都网站建设 致尚淮安百度网站建设
  • 做网站 先备案么青岛网站互联网公司
  • 电子商务网站开发岗位网站规划是什么意思