基于8051内核的实验—流水灯
2016-03-21 20:51
246 查看
实验步骤:
打开51内核的工程,为内核的进行配置引脚,这个过程根据开发板的原理图就进行,引脚包括:clk、复位、LED的驱动管脚。
分配好了之后,记得把没有用的管脚设置为输入三阻态。
(2)设置ROM程序存储模块的编号,目的是在将网表文件下载到FPGA后能够通过QuartusII软件访问ROM模块,能将.hex文件下载到FPGA中的ROM(其实FPGA中是没有ROM,ROM都是用RAM做的,只是在操作的时候把它当成ROM而已,所以就认为是ROM),这一步骤是方便以后在重新编译生成.hex文件时快速下载,不用重新综合整个工程(综合整个工程要大概二十多分钟)。
双击该ROM模块:
,在出现的窗口中点击Mem Init,然后进行如下的设置:
设置完成后点击Finish,完成后进行综合(综合时间比较长,这个时间就可以用来进行C编程)。
(3)进行C编程,这里采用Keil进行编程。(具体流程不详解)
这里实现的功能是LED灯的左右移动,代码如下:
void display()
{
unsigned char i,temp;
temp=0x01;
for(i=0;i<8;i++)
{
temp=0x01;
for(i=0;i<8;i++)//从左到右逐个点亮
{
LED=~temp;
temp<<=1;
delay_ms(500);
}
temp=0x80;
for(i=0;i<8;i++)//从左到右逐个点亮
{
LED=~temp;
temp>>=1;
delay_ms(500);
}
}
}
(4)当你编写好代码生成.hex后可能会想怎么下载到FPGA里面,不急!这里进行详细说明。还记得第二个步骤吗?做好了那个步骤,其实我们的工作已经完成了一半。
点击Tools,在出现的下拉菜单中点击In-System Memory Content Editor。如下图:
这是会出现以下窗口,
在下载好了之后,便可以将生成的.hex文件下载到ROM中。具体操作如下:
(该工具功能很强大,不仅可以下载文件到ROM中,还可以从ROM中读取数据生成文件。同时也可以对ROM写入和读取数据)。
然后在文件选择窗口中选择生成的.hex文件,然后点击导入。这里选择如下:
导入后,点击
便将.hex下载到ROM中。(是不是下载很快啊,比一般的单片机下载还快吧!)
打开51内核的工程,为内核的进行配置引脚,这个过程根据开发板的原理图就进行,引脚包括:clk、复位、LED的驱动管脚。
分配好了之后,记得把没有用的管脚设置为输入三阻态。
(2)设置ROM程序存储模块的编号,目的是在将网表文件下载到FPGA后能够通过QuartusII软件访问ROM模块,能将.hex文件下载到FPGA中的ROM(其实FPGA中是没有ROM,ROM都是用RAM做的,只是在操作的时候把它当成ROM而已,所以就认为是ROM),这一步骤是方便以后在重新编译生成.hex文件时快速下载,不用重新综合整个工程(综合整个工程要大概二十多分钟)。
双击该ROM模块:
,在出现的窗口中点击Mem Init,然后进行如下的设置:
设置完成后点击Finish,完成后进行综合(综合时间比较长,这个时间就可以用来进行C编程)。
(3)进行C编程,这里采用Keil进行编程。(具体流程不详解)
这里实现的功能是LED灯的左右移动,代码如下:
void display()
{
unsigned char i,temp;
temp=0x01;
for(i=0;i<8;i++)
{
temp=0x01;
for(i=0;i<8;i++)//从左到右逐个点亮
{
LED=~temp;
temp<<=1;
delay_ms(500);
}
temp=0x80;
for(i=0;i<8;i++)//从左到右逐个点亮
{
LED=~temp;
temp>>=1;
delay_ms(500);
}
}
}
(4)当你编写好代码生成.hex后可能会想怎么下载到FPGA里面,不急!这里进行详细说明。还记得第二个步骤吗?做好了那个步骤,其实我们的工作已经完成了一半。
点击Tools,在出现的下拉菜单中点击In-System Memory Content Editor。如下图:
这是会出现以下窗口,
在下载好了之后,便可以将生成的.hex文件下载到ROM中。具体操作如下:
(该工具功能很强大,不仅可以下载文件到ROM中,还可以从ROM中读取数据生成文件。同时也可以对ROM写入和读取数据)。
然后在文件选择窗口中选择生成的.hex文件,然后点击导入。这里选择如下:
导入后,点击
便将.hex下载到ROM中。(是不是下载很快啊,比一般的单片机下载还快吧!)
相关文章推荐
- iOS开发实用技巧—Objective-C中的各种遍历(迭代)方式
- ZOJ 1100 Mondriaan's Dream【状态压缩】【DP】【DFS】
- Windows系统下将MAC系统的可执行dmg文件转换为ISO文件 & 安装到虚拟机的MAC系统上
- iOS进程间通信之CFMessagePort/还有 url schema
- 1006 Problem F
- 深度学习资源汇总
- 使用Genymotion调试出现错误INSTALL_FAILED_CPU_ABI_INCOMPATI
- 《Linux内核设计与实现》课本第五章学习笔记——20135203齐岳
- 8051内核的使用
- android shape的使用
- 【Data Algorithms_Recipes for Scaling up with Hadoop and Spark】Chapter 8 Common Friends
- struts2的核心和工作原理
- HTTP必知必会
- 数据结构基础 字符串相似度与最长公共子序列
- MongoDB---之---可视化客户端
- 问题解决:不要轻易自己修改数据库的id
- hdoj 2063 过山车 【匈牙利算法&&最大图匹配】
- c#开发中遇到System.AccessViolationException
- UI进阶——XMPP即时通讯
- 蓝桥杯JAVA Fibonacci数列