• 发文章

  • 发资料

  • 发帖

  • 提问

  • 发视频

创作活动
0
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
返回

电子发烧友 电子发烧友

  • 全文搜索
    • 全文搜索
    • 标题搜索
  • 全部时间
    • 全部时间
    • 1小时内
    • 1天内
    • 1周内
    • 1个月内
  • 默认排序
    • 默认排序
    • 按时间排序
大家还在搜
  • 数据采集光盘实例第六章至第十二

    数据采集光盘实例第六章至第十二

    2012-06-28 21:17

  • 第十二期 数据存储(生成10组温湿度数据)

    第十二期了解生成数据的方法

    2018-09-23 14:20

  • 第十二届中国国际中小企业博览会智能制造与装备展

    `  第十二届中国国际中小企业博览会智能制造与装备展  地点:广州国际采购中心(广州·琶洲展馆)  时间:2015年10月15日—18日  第十二届中国国际中小企业博览会介绍  第十二届中国国际

    2015-09-16 17:08

  • 「正点原子Linux连载」第十二章官方SDK移植试验

    ,获取更多资料:正点原子第十二章官方SDK移植试验 在上一章中,我们参考ST官方给STM32编写的stm32f10x.h来自行编写I.MX6U的寄存器定义文件。自己编写这些寄存器定义不仅费时费力,没有

    2019-12-20 15:22

  • 【连载】【星光闪电STM32F407开发板】第十二章 RTC实验

    第十二章 RTC实验12.1 实验目的本实验旨在掌握STM32的实时时钟RTC的使用,利用其测量日期时间,数据手册请参看第16章。12.2 实验简介STM32 的实时时钟(RTC)是一个独立的定时器

    2018-11-11 16:01

  • 【STC单片机学习】第十二课 单片机的电机 相关资料推荐

    步进电机编程实践2第二部分章节介绍1.12.1.直流电机 本节讲述电机的分类,直流电机的工作原理、驱动方法,并且使用电源直接驱动、使用电机驱动芯片驱动2种方式来驱动电机工作。1.12.2.步进电机理论1 本节首先介绍什么是步进电机,然后讲了步进电机的...

    2021-06-29 09:23

  • 【MSP430趣谈】MSP430第十二讲之ADC(上)

    本帖最后由 michael_llh 于 2016-8-13 09:20 编辑 MSP430教程之十二ADC(上) 首先我们需要明白一个问题是什么是ADC,中文翻译过来就是模数转换器,从他

    2016-02-01 21:52

  • 【零基础学习STM32】第十二讲:通用定时器——定时点亮LED

    本帖最后由 kkhkbb 于 2018-4-11 18:22 编辑 一、 概述1、 TIM3简介iCore3使用的STM32F407IGT6芯片的具有10个通用定时器,分别为TIM2-TIM5

    2018-04-11 11:51

  • 【MSP430趣谈】MSP430第十二讲之ADC(下)

    `MSP430教程之十二ADC(下)上次我们讲了相关的ADC知识,那么这次我们将这些知识实际应用于我们的实际使用中。同样的建立工程和添加库的步骤我们就不在说明了,两份文档,数据手册和我们的库文件

    2016-02-20 16:28

  • 【FPGA开源教程连载】第十二章 串口接收模块设计与验证

    串口接收模块设计与验证实验目的:1.串口接收模块设计与验证2.使用ISSP进行调试与验证设计的数据接收模块实验平台:芯航线FPGA核心板实验原理: 在上一讲介绍了串口发送模块的设计思想,其UART发送端发送一个字节数据时序图如图12-1所示。图12-1 发送一字节数据时序图这一讲介绍串口接收模块的设计与实现。当对于数据线的每一位进行采样,一般情况下每一位数据的中间点是最稳定的,因此一般应用中,采集中间时刻时的电平即认为是此位数据的电平,如图12-2所示。图12-2 串口接收时序图但是在工业应用中,现场往往有非常强的电磁干扰,只采样一次就作为该数据的电平判定,是不保险的,有可能恰好采集到***扰的信号而导致结果出错,因此需要使用多次采样求概率的方式进行。因此这里提出以下为改进型的单bit数据接收方式示意图,如图12-3。图12-3 改进型串口接收方式示意图在图12-3中,将每一位数据又平均分成了16小段,对于Bit_x这一位数据,考虑到数据在刚刚发生变化和即将发生变化的这一时期,数据极有可能不稳定的(用红色标出的两段),在这两个时间段采集数据,很有可能得到错误的结果,因此判定这两段时间的电平无效,采集时直接忽略。而中间这一时间段(用绿色标出),数据本身是比较稳定的,一般都代表了正确的结果。也就是前面提到的中间测量方式,但是也不排除该段数据受强电磁干扰而出现错误的电平脉冲,因此对这一段电平,进行多次采样,并求高低电平发生的概率,6次采集结果中,取出现次数多的电平作为采样结果。例如,采样6次的结果分别为1/1/1/1/0/1/,则取电平结果为1,若为0/0/1/0/0/0,,则取电平结果为0,当6次采样结果中1和0各占一半(各3次),则可判断当前通信线路环境非常恶劣,数据不具有可靠性,不进行处理。这样串口接收模块主要就需要包含起始位检测模块、波特率产生模块以及数据接收模块。实验步骤:基于以上原理,串口接收模块整体框图如图12-5所示,其接口列表如表12-1所示。图12-5 串口接收模块整体框图表12-1 模块接口列表经过以上的分析,建立工程子文件夹后,新建一个以名为uart_byte_rx的工程保存在prj下,并在本工程目录的rtl文件夹下新建verilog file文件并以uart_byte_rx.v保存。由上面的分析可以得出如下的信号列表。这里输入数据相对于系统时钟是个异步信号,因此也需要对其进行同步,这就与按键的输入部分一样,不再详述。串口接收模块主要构成之一即为波特率时钟生成模块。这里根据上面提到的过采样方式,实际的采样频率是波特率的16倍,因此存在计数值与波特率之间的关系如表12-3所示,其中系统时钟周期为System_clk_period,这里为20ns。表12-2 采样时钟计算 不同波特率对应采样时钟分频计数值的选择如下。这里依旧使用了一个选择器,来实现本部分功能。现在产生采样时钟,即波特率时钟的16倍。采样时钟计数器,计数器清零条件之一bps_cnt == 8'd159 即一个字节接收完毕,(bps_cnt == 8'd12 &&(START_BIT > 2))是实现起始位检测是否出错,详细在后面会解释。以图12-3起始位为例,实现数据接收,中间时间段的bps_cnt值分别为6、7、8、9、10、11,然后直接累加本位数据。然后下一位需要进行计算时的值即为bps_cnt加16,也就是22、23、24、25、26、27,也直接累加本位数据。以此类推可以得到其他位的数据。 现解释为何在上面清零条件之一为(bps_cnt == 8'd12 && (START_BIT > 2)),理想情况下(真正的起始位)也就是当bps_cnt计数值为12时,START_BIT的计算值应该为0。如果此时START_BIT的计算值大于2,也就代表着在6次采样中有一半或以上状态为高电平,这样我们认为真正的起始位尚未到来,不进行数据采集。若不加此操作,进入了一种假采样会使后面的数据接收错误,或者即使接收了也不是真实的数据。一次采样结束后再将数据一次性传输出去。在原理部分介绍一位数据采集结果中,取出现次数多的电平作为采样结果。6次采样认为大于等于4的数据才是真实数据,这样判断我们可以写为 ,也可以写为, 也可以直接令其等于当前位的第二位数据。011/010/100/101这几个数据分别为3/2/4/5,可以发现只需判断第二位即可。进行分析和综合直至没有错误以及警告。为了测试仿真编写测试激励文件,新建uart_byte_rx_tb.v文件保存到testbench文件夹下,这里产生数据的激励使用上一讲的发送数据来做,因此激励文件只需在上一节的激励文件中,修改端口信息、例化本模块以及将发送模块输出的Rs232_Tx连接到接收模块上的Rs232_Rx即可。修改后的激励文件如下:设置好仿真脚本后进行功能仿真,可以看到如图12-6所示的波形文件,每当一个字节发送结束后,数据输出data_byte_r均会更新输出一次。下图中由于Rs232_Rx仅声明了没有调用,因此无数据显示,可以直接删除。图12-6 单byte数据接收仿真波形图为了使用ISSP进行调试与验证设计的数据接收模块,这里使用的是ISSP的探针功能,与上一讲使用的源不同。其主要配置如图12-7所示,并加入到工程中。图12-7 ISSP主要参数配置在本工程目录的rtl文件夹下新建verilogfile文件在此文件下输入以下内容并以uart_rx_top.v保存,并设置为顶层文件。这里例化了数据接收模块以及ISSP工具。 只有接收成功后才采集数据,也符合实际使用情况。分配引脚后全编译无误后下载工程到开发板中。在Quartus II中点击Tools—In-System Source and ProbesEditor启动ISSP,手动选择下载器后,并将数据格式改为设计中的hex格式,持续触发模式。打开串口助手波特率设置为9600、没有校验位、8位数据位以及1bit停止位。图12-8 串口助手设置界面图12-9ISSP工具设置界面 在串口助手上先后输入aa、38后在ISSP使用界面可以看到Data会随之对应变化。即设计无误。图12-10串口助手发送数据图12-11-1探针接收到数据图12-11-2探针接收到数据小梅哥芯航线电子工作室关于学习资料,小梅哥系列所有能够开放的资料和更新(包括视频教程,程序代码,教程文档,工具软件,开发板资料)都会发布在我的云分享。(记得订阅)链接:http://yun.baidu.com/share/home?uk=402885837&view=share#category/type=0

    2016-12-31 16:35