自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(0)
  • 资源 (11)
  • 收藏
  • 关注

空空如也

基于FPGA的数字电压表.rar

使用FPGA控制AD0809,设计一个量程为5V的数字电压表。采用3为数码管显示电压值,可以显示小数点后两位。文件包括源代码和仿真图。

2019-05-26

消息队列通信设计

实验报告七:(1)设计 InputTask、ComputeTask 和 OutputTask 三个任务,InputTask 任务负责从键盘接收两个整数 a 和 b 及操作符 op(+-*/),ComputeTask 负责计算 a(+-*/)b,OutputTask 任务负责输出计算结果。要求 InputTask 和 ComputeTask 间通信及 ComputeTask 和 OutputTask 间通信都用消息邮箱实现。提示:把 a、b 和 op 拼接成 1 个消息。 (2)设计 InputTask、ComputeTask 和 OutputTask 三个任务,InputTask 任务负责从键盘接收两个整数 a 和 b 及操作符 op(+-*/),ComputeTask 负责计算 a(+-*/)b,OutputTask 任务负责输出计算结果。要求 InputTask 和 ComputeTask 间通信用消息队列实现,ComputeTask 和 OutputTask 间通信用消息邮箱实现。提示:把 a、b 和 op 解析成 3 个消息。用到的主要函数:OSMboxCreate、 OSMboxPost、OSMboxPend、OSQCreate、OSQPostOSQPend

2018-03-16

任务的同步与互斥

实验报告五:(1)编程实现哲学家就餐问题。五个哲学家坐在圆桌前,每人一碗面条,每个哲学家两侧各有一支筷子,哲学家处于吃饭和思考两种状态,哲学家吃面条要用他两侧的两只筷子。 提 示:设计5个任务:Task0 、 Task1 、Task2 、Task3 、Task4 ,其优先级关系Task0>Task1>Task2>Task3>Task4。定义 5 个信号量 Sem0、 Sem1、 Sem2、 Sem3、 Sem4,每个任务 i 均作相同的工作:申请信号量 i, (i+1) mod 5;保持信号量;释放信号量(i+1) mod 5,i (2)编程实现生产者和消费者问题。一个有限共享缓冲池,缓冲池中的每个缓冲区可以存放一个产品。生产者不断生产产品并将产品放入缓冲区中,缓冲池满则不能放。消费者进程不断从缓冲区内取出产品并消费,缓冲池空则不能拿。要求生产者和消费者可以动态的增加和减少。

2018-03-16

优先级反转

实验报告四:(1)设计共有 3 个应用任务 TA0,TA1,TA2;优先级: TA0>TA1>TA2;TA0 和 TA2 互斥使用资 源 mutex,且 TA2 最先获得 mutex。用 OSSemCreate、OSSemPend、OSSemPost 显现优先级反转现 象。(2)用 OSMutexCreate、OSMutexPend、OSMutexPost 消除优先级反转现象。

2018-03-16

任务的创建、挂起与恢复

实验报告三:(1)设计 Task0、Task1 两个任务:任务 Task0 不断地挂起自己,再被任务 Task1 解挂,两个任务不断地切换执行,并输出两个任务在各个时刻的状态。Task0 的主要功能是显示 Task1 的状态,Task1 的主要功能是显示 Task0 的状态。整个应用的运行流程如图 1 所示,其描述如下:在 main 函数创建起始任务 TaskStart,其优先级为 0。TaskStart 任务主要完成创建 2 个应用任务 Task0、Task1,并挂起自己(不再被其它任务唤醒)。之后整个系统的运行流程如下:t1 时刻,Task0 开始执行,它运行到 t2 时刻挂起自己;t2 时刻,系统调度处于就绪状态的优先级最高任务 Task1 执行,它在 t3 时刻唤醒 Task0,后者由于优先级较高而抢占 CPU;Task0 执行到 t4 时刻又挂起自己,内核调度 Task1执行;Task1 运行至 t5 时刻再度唤醒 Task0; 注意:图中的栅格并不代表严格的时间刻度,而仅仅表现各任务启动和执行的相对先后关系。 (2)设计 MyTask、YouTask、KeyTask 三个任务:MyTask 任务输出 M;YouTask 任务输出 Y,并输出 MyTask 任务的状态;KeyTask 任务从键盘接收字符 Y 或 N,当接收 Y 时挂起 MyTask 任务,当接收 N 时恢复 MyTask 任务。 (3)设计 KeyTask 任务,当从键盘输入+号时动态创建任务,最多可以创建 10 个任务,这 10个任务都执行一个函数 MyTask,要求优先级是(PRIO_BASE+0,1,2,3,4,5,6,7,8,9),还要向不同的任务传递不同的参数(0,1,2,3,4,5,6,7,8,9)给 MyTask 函数,优先级为(PRIO_BASE+0,1,2,3,4,5,6,7,8,9)的任务分别输出数字(0,1,2,3,4,5,6,7,8,9)。当从键盘输入-号时动态的删除刚创建的一个任务,最多可删除 10 个任务。提示:多个任务可以执行一个函数。运行结果如下图所示。

2018-03-16

任务控制块及其链表

实验报告二:(2)设计函数OSInit()对全局变量进行初始化,定义一个数组OS_TCB OSTCBTbl[],创建单向链表OSTCBFreeList把数组OSTCBTbl的各个元素链接,生成一个空任务链表OSTCBFreeList; (3)设计函数OS_TCBInit(INT8U prio),对优先级prio的任务控制块TCB的成员赋值(OSTCBPrio),对数组OSTCBPrioTbl进行修改,生成双向链表OSTCBList,要求输入优先级,输出OSTCBFreeList和OSTCBList,观察两个链表的变化情况

2018-03-16

任务就绪表

嵌入式操作系统实验一:(1)编程对 OSUnMapTbl 数组进行初始化; (2)输入多个任务的优先级 prio,修改 OSRdyGrp、OSRdyTbl 的值并输出; (3)根据 OSRdyGrp、OSRdyTbl 的值,求最高优先级任务的优先级 OSPrioHighRdy 并输出;

2018-03-16

BP神经网络

实验报告四:设计合适的BP神经网络,解决函数逼近问题。要求根据问题选择合适的BP神经网络结构,对非线性函数—正弦函数进行逼近,并分析神经网络不同参数的影响。

2018-03-16

实验报告三

实验报告三:1、以8数码或15数码为例,用A*算法编写一个求解数码问题的程序。 2、画出A*算法求解框图。

2018-03-16

图搜索技术

选修课实验报告二:1.(必做)利用深度优先或广度优先搜索技术解决传道士和野人问题。 修道士和野人问题如下: 有三个传教士和三个野人一起来到河边准备渡河,河边有一条空船,且传教士和野人都会划船,但每次最多可供两人乘渡。河的任何一岸以及船上一旦出现野人人数超过传教士人数,野人就会把传教士吃掉。为完全地渡河,传教士应如何规划渡河方案?

2018-03-16

PROLOG语言实验一

选修课实验报告:1、编写一个描述亲属关系的PROLOG程序,然后再给予出一些事实数据,建立一个小型演绎数据库。2、编写一个路径查询程序,使其能输出图中所有路径。3、一个雇主在发出招聘广告之后,收到了大量的应聘申请。为了从中筛选出不量的候选人,该雇主采用下列判据:申请者必须会打字、开车,并且住在伦敦。

2018-03-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除