软件开发实习E.doc
文本预览下载声明
《软件开发实习E》
题目:基于DE-2板uC/OS的操作系统的应用
设计组 姓名 成绩 组长 陈志智(200611701304) 组员 张楚民(200611701230) 组员 陈国正(200611701302) 组员 洪卓轩(200611701310) 组员 廖 威(200611701316) 组员 林森阳(200611701319)
系统分析
目的
1.熟悉掌握利用uC/OS-II操作系统在DE-2板上的开发流程;
2.利用uC/OS-II操作系统实现调用LCD、数码管和LED显示不同的内容。
组员分工
林森阳,洪卓轩 对该设计进行需求分析,完成需求分析文档 洪卓轩,廖威 对该设计进行概要设计,完成概要设计文档 张楚民,陈志智 对该设计进行详细设计,完成uc/os ii操作系统的移植到DE2板上 陈国正,张楚民 在uc/os ii的基础上进行编码 陈志智,陈国正 对该设计的最终实现进行测试
设计要求:
以NIOS II软核处理器为核心的嵌入式系统的硬件配置、硬件设计、硬件仿真,IDE环境的软件设计,软件调试等步骤进行嵌入式系统开发。在SOPC Builder上完成硬件环境配置,并下载到DE2板上,使用Niso-II编程环境对uC/OS-II操作系统进行调用,实现调用LCD、七段数码管和LED显示不同的内容。
架构设计
基于DE-2板uC/OS的操作系统的应用的硬件环境是在SOPC Builder中完成,其实现所需要的内部逻辑图如下所示:
硬件环境
主机: CPU:P4.18GHz以上
内 存:1GB或以上
开发板:DE2板
软件环境
操作系统:Windows XP
开发软件:Quartus II 8.1 (32-Bit) ;Nios II 8.1 IDE
系统设计
硬件设计
(1) 硬件设计通过使用SOPC以配置的方式实现。在SOPC Builder通过软件所提供的IP核来对DE2板上相应的硬件资源进行添加,所需要添加的IP如下所示:
CPU选用Niso II/s型内核,reset vector(重置向量)设置为:cif_flish; exception vector(异常向量)设置为:sdram.
SDRAM的数据总线宽度设置为16bit,其余设置不变。
Flish的地址宽度Address Width设置为22bit,数据宽度Data Width设置为8bit
Time为系统时间,也是必须的外设,period设定为20ms,
Tri_state_bridge三态桥,是Avalon交换结构与片外外设相连的桥梁,全
设置为默认状态。
Pio命名为:Led_pio,作为流水灯Led的输出信号,数据宽度设为8bit,而类型设定为只输出:Output port only.
LCD设置按照默认设置,命名为:lcd_display。
Seg7_lut_8设置为默认,命名为:seven_seg_pio
Nios2的sopc硬件配置如下图所示:
(2) 分频器是实现对系统频率的分解,从而获取硬件顺利工作所需要的频率,分频器的设计如下所示:
软件设计
1.中断初始化函数:
功能:主要用于完成中断注册
中断服务函数(ISR):handle_button_interrupts()
功能:对中断进行处理的函数。
1)捕获中断发生并复位以待下一次中断发生:
*edge_capture_ptr=IORD_ALTERA_AVALON_PIO_EDGE_CAP(KEY_PIO_BASE)
IOWR_ALTERA_AVALON_PIO_EDGE_CAP(KEY_PIO_BASE,0x0)
2)对中断进行响应:
采用switch语句对中断进行处理:
switch(edge_capture)
{ case 按键1:
中断处理;
break;
case 按键2:
中断处理;
break;
...........
}
}
2.uC/OS-II提供了任务管理的各种函数调用 for (i = 0; i2600; ++i){
if( count == 0xff )
{
count=0;
}
while(j100000)
j++;
count++;
/* Logic to make the LEDs c
显示全部