【FPGA】51的IP核烧进FPGA,配合keil生成的.hex文件调试
创始人
2024-04-04 14:45:00
0

IP核:89C51
FPGA芯片类型:EP4CE6E22CN8

FPGA_LED12 交替亮灭 灯

文章目录

    • 总体过程描述
    • 1、下载文件---移动位置
    • 2、创建project1
      • 注意:不这样选的话后面的`51IP核`可能会通过不了哦,会报引脚数目不对的错误
      • 2.1 添加文件
      • 2.2 重新设置顶层文件
      • 2.3 编译
      • 2.4 生成符号
    • project1中的工作告一段落
    • 3、创建project2
      • 3.1在新工程下创建原理图
      • 3.2 再次添加文件
      • 3.3 添加&宏功能模块_生成 符号
        • 3.3.1 宏功能模块_生成计数器
        • 3.3.2 宏功能模块_锁相环
        • 3.3.3 宏功能模块_ROM
          • a. 注意点 导入`.hex`文件 & ROM ID的设置
          • b. 生成`.hex`文件
        • 3.3.4 宏功能模块_RAM
      • 3.4 原理图连线
        • 3.4.1 左半部分
        • 3.4.2 右半部分
        • 3.4.3 下半部分
      • 整体原理图
      • 编译原理图工程
    • 4、配置引脚
      • 4.1 引脚仿真
    • 5、再次编译工程
    • 6、烧录原理图程序
        • 6.1 选择`.sof文件`
    • 7、烧录.hex 替换原来ROM中的文件 观察现象
  • 每天进步一点点 笔记仅供自学,用来回看复习,不一定适合你,如有错误请指出。

总体过程描述

先创建工程1 生成51IP核原理图符号,供工程2使用。再建另一个工程2 创建原理图,把所需要的符号都添加进来 或者 利用宏功能 生成添加。(除了51IP核,其余的都可以利用宏功能 生成添加)再将其烧录进FPGA,配合keil软件生成的.hex文件来调试。

1、下载文件—移动位置

把老师提供的资料中的mc8051文件夹下的vhdl文件夹在这里插入图片描述放在你自己新建的要用来烧录的my8051_test文件夹

其它文件我们本次是用不到的,不用管。

在这里插入图片描述

2、创建project1

这一步是 为了获取 51IP核的原理图符号
在这里插入图片描述

就是基本的新建工程嘛 【File】--【New Project ...】 基本操作啊
在这里插入图片描述

注意:不这样选的话后面的51IP核可能会通过不了哦,会报引脚数目不对的错误

2.1 添加文件

创建好了 是一个空的工程 点击【Assignments】--【setting】--【General】--找到右侧的【...】---找到你工程目录下刚刚添加的 vhdl文件夹--把文件添加进去

添加文件时候可以全选 【ctrl+A】 然后按住【ctrl】把带有cfg的文件 和 最底下的带有top的文件取消选择

在这里插入图片描述

2.2 重新设置顶层文件

找到mc8051_core.vhd 【右键】设置为顶层文件
在这里插入图片描述

2.3 编译

在这里插入图片描述
然后就是等待了

2.4 生成符号

在这里插入图片描述
生成完以后,你会发现在工程目录下多了一个.bsf文件

在这里插入图片描述

project1中的工作告一段落

3、创建project2

这一步是 为了获得单片机最小系统
在这里插入图片描述

就是基本的新建工程嘛 【File】--【New Project ...】 基本操作啊

在这里插入图片描述

此处的命名可以随意 别和上一个一样就行

在这里插入图片描述
这里的芯片选型要和自己FPGA开发板上的一样了,因为我们是要烧录这个工程生成的文件的,型号必须适配。
!!!这也是project1的初始创建的唯一不同的地方!!!
在这里插入图片描述

3.1在新工程下创建原理图

【File】--【New】 创建一个空白的图
在这里插入图片描述

3.2 再次添加文件

重复project1的步骤即可
在这里插入图片描述

3.3 添加&宏功能模块_生成 符号

点开这个会发现,已经存在mc8051_core 这个就是你 project1中生成的
,先把它放在原理图中吧,随便放一个位置就行
其它的还没有,因为还需要我们自己弄

在这里插入图片描述
在这里插入图片描述

3.3.1 宏功能模块_生成计数器

看着符号图应该就能做出来的吧 基本操作哦!
在这里插入图片描述

3.3.2 宏功能模块_锁相环

看着符号图应该就能做出来的吧 基本操作哦!
在这里插入图片描述

3.3.3 宏功能模块_ROM

看着符号图应该就能做出来的吧 基本操作哦!
在这里插入图片描述

a. 注意点 导入.hex文件 & ROM ID的设置

生成这个要添加数据文件--我们可以用keil软件生成 .hex文件,不加会生成不了!!!
在这里插入图片描述

b. 生成.hex文件

把下面这段代码赋值到keil软件中 编译就可以生成.hex文件
不过记得要设置好 才能生成 .hex文件
在这里插入图片描述

#include 	   //此文件中定义了51的一些特殊功能寄存器
#define  LED1 P1
#define  LED2 P2
void Delayms(unsigned int cnt);		//@11.0592MHzvoid main()
{ while(1){LED1  = 0x00; //控制D2口 低亮高灭Delayms(500); LED1  = 0xff; //置P1口为高电平Delayms(500); // 调用延时程序LED2  = 0x00; //置P2口为高电平 Delayms(500); // 调用延时程序LED2  = 0xff; //置P2口为高电平Delayms(500); // 调用延时程序}
}/*******延时函数*************/
void Delayms(unsigned int cnt)		//@11.0592MHz
{unsigned char i, j, k;while(cnt--){i = 11;j = 190;do{while (--j);} while (--i);}
}

3.3.4 宏功能模块_RAM

在这里插入图片描述

3.4 原理图连线

图有点大 直接截 截不清楚 分部分来吧

3.4.1 左半部分

在这里插入图片描述

3.4.2 右半部分

此处将MCU
P2_OUT[0]设置为LED2的口 对应我们写keil程序的P2
P1_OUT[0]设置为LED1的口对应我们写keil程序的P1 (我下面有代码)
在这里插入图片描述

在这里插入图片描述

3.4.3 下半部分

在这里插入图片描述

整体原理图

在这里插入图片描述

编译原理图工程

project1一样的操作。。。静静等待。。。。
在这里插入图片描述

4、配置引脚

可以根据原理图来配置 或者 看老师给的表格
在这里插入图片描述
!!!这样配置!!!
在这里插入图片描述
在这里插入图片描述

4.1 引脚仿真

看这样配IO 行不行
在这里插入图片描述

5、再次编译工程

project1一样的操作。。。静静等待。。。。

6、烧录原理图程序

在这里插入图片描述

6.1 选择.sof文件

在这里插入图片描述
在这里插入图片描述
烧录完以后可以看到 初始放进 ROM代码 产生的现象了

7、烧录.hex 替换原来ROM中的文件 观察现象

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


每天进步一点点 笔记仅供自学,用来回看复习,不一定适合你,如有错误请指出。

上一篇:联邦学习--记录

下一篇:《进程状态》

相关内容

热门资讯

银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWS管理控制台菜单和权限 要在AWS管理控制台中创建菜单和权限,您可以使用AWS Identity and Access Ma...