用户工具

站点工具


icore3_fpga_15

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
icore3_fpga_15 [2020/03/03 19:17]
zgf
icore3_fpga_15 [2022/03/18 15:43] (当前版本)
sean
行 2: 行 2:
 |技术支持电话|**0379-69926675-801**||| |技术支持电话|**0379-69926675-801**|||
 |技术支持邮件|Gingko@vip.163.com||| |技术支持邮件|Gingko@vip.163.com|||
-|技术论坛|http://​www.eeschool.org||| 
 ^  版本 ​ ^  日期 ​ ^  作者 ​ ^  修改内容 ​ ^ ^  版本 ​ ^  日期 ​ ^  作者 ​ ^  修改内容 ​ ^
 |  V1.0  |  2020-03-03 ​ |  gingko ​ |  初次建立 ​ |  |  V1.0  |  2020-03-03 ​ |  gingko ​ |  初次建立 ​ | 
  
 \\ \\
-===== 实验:基于UART的ARM和FPGA通信实验 =====+===== 实验十:基于UART的ARM和FPGA通信实验 =====
  
 ==== 一、实验目的与意义 ==== ==== 一、实验目的与意义 ====
行 40: 行 39:
   * 知道了发送流程,那么接收流程也就清楚了。检测接收端口电平,如果出现低电平,开始计数,计满2604个时钟周期之后,将持续接收的八位二进制数据保存,即为接收数据。这里要注意,时钟的上升沿要保持在数据稳定的区间,以保证接收数据的准确性。   * 知道了发送流程,那么接收流程也就清楚了。检测接收端口电平,如果出现低电平,开始计数,计满2604个时钟周期之后,将持续接收的八位二进制数据保存,即为接收数据。这里要注意,时钟的上升沿要保持在数据稳定的区间,以保证接收数据的准确性。
 ==== 四、代码讲解 ==== ==== 四、代码讲解 ====
- +
   * 明白串口传输的收发过程之后,就可以通过代码实现了。首先,接收和发送可以划分成独立的两个模块。其次,串口波特率有9600bps、19200bps、38400bps、57600bps、115200bps等不同的波特率。那么,还要加一个波特率控制模块。   * 明白串口传输的收发过程之后,就可以通过代码实现了。首先,接收和发送可以划分成独立的两个模块。其次,串口波特率有9600bps、19200bps、38400bps、57600bps、115200bps等不同的波特率。那么,还要加一个波特率控制模块。
   * 先讲一下波特率控制模块,这个模块本质上是对系统时钟做分频处理。通过计数,将25MHz的系统时钟分频成9600Hz、19200Hz等的周期信号。部分代码如下:   * 先讲一下波特率控制模块,这个模块本质上是对系统时钟做分频处理。通过计数,将25MHz的系统时钟分频成9600Hz、19200Hz等的周期信号。部分代码如下:
行 155: 行 154:
   * 3)将跳线帽插在USB UART;   * 3)将跳线帽插在USB UART;
   * 4)把iCore3(USB_UART)通过Micro USB线与计算机连接,为iCore3供电;   * 4)把iCore3(USB_UART)通过Micro USB线与计算机连接,为iCore3供电;
-  * 5)打开Commix串口精灵,找到对应的口打开;+  * 5)打开Commix串口精灵,找到对应的口打开;
   * 6)打开Quartus II开发环境,并打开实验工程; ​   * 6)打开Quartus II开发环境,并打开实验工程; ​
   * 7)烧写FPGA程序到iCore3上;   * 7)烧写FPGA程序到iCore3上;
icore3_fpga_15.1583234253.txt.gz · 最后更改: 2020/03/03 19:17 由 zgf