Advertisement

基于STM32F103的嵌入式课程设计——UCOSII实验1-2:任务创建、删除、挂起与恢复.rar

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:None


简介:
本资源为《基于STM32F103的嵌入式课程设计》系列中的第二部分,重点讲解了在UCOSII操作系统中进行任务的创建、删除、挂起及恢复操作。适合学习RTOS原理和实践的学生使用。 实验现象:在start_task函数中创建了三个任务,分别是led_task、beep_task和key_task。其中,led_task负责使LED0和LED1每隔500毫秒翻转一次;beep_task会在没有接收到删除请求的情况下周期性地鸣叫蜂鸣器;而key_task则进行按键扫描操作。 当按下KEY_RIGHT键时,会挂起led_task任务,此时LED0和LED1停止闪烁。如果再次按下KEY_LEFT键,则在led_task被挂起的状态下将其恢复并重新开始闪烁。按压KEY_UP键将删除beep_task任务,蜂鸣器因此不再发出声音;而当按下KEY_DOWN键时,会重新创建beep_task任务。 测试顺序如下:首先下载代码后可以看到LED0和LED1在不断闪烁,并且蜂鸣器也在周期性地发声。接着按压KEY_RIGHT按键挂起led_task任务,此时观察到LED停止闪烁。随后再次按压KEY_LEFT键恢复了被挂起的led_task,使LED重新开始闪烁;然后按下KEY_UP键删除beep_task任务,导致蜂鸣器不再发出声音;最后当按下KEY_DOWN时会看到蜂鸣器重新发声,因为这时已经重建了beep_task任务。

全部评论 (0)

还没有任何评论哟~
客服
客服
  • STM32F103——UCOSII1-2.rar
    优质
    本资源为《基于STM32F103的嵌入式课程设计》系列中的第二部分,重点讲解了在UCOSII操作系统中进行任务的创建、删除、挂起及恢复操作。适合学习RTOS原理和实践的学生使用。 实验现象:在start_task函数中创建了三个任务,分别是led_task、beep_task和key_task。其中,led_task负责使LED0和LED1每隔500毫秒翻转一次;beep_task会在没有接收到删除请求的情况下周期性地鸣叫蜂鸣器;而key_task则进行按键扫描操作。 当按下KEY_RIGHT键时,会挂起led_task任务,此时LED0和LED1停止闪烁。如果再次按下KEY_LEFT键,则在led_task被挂起的状态下将其恢复并重新开始闪烁。按压KEY_UP键将删除beep_task任务,蜂鸣器因此不再发出声音;而当按下KEY_DOWN键时,会重新创建beep_task任务。 测试顺序如下:首先下载代码后可以看到LED0和LED1在不断闪烁,并且蜂鸣器也在周期性地发声。接着按压KEY_RIGHT按键挂起led_task任务,此时观察到LED停止闪烁。随后再次按压KEY_LEFT键恢复了被挂起的led_task,使LED重新开始闪烁;然后按下KEY_UP键删除beep_task任务,导致蜂鸣器不再发出声音;最后当按下KEY_DOWN时会看到蜂鸣器重新发声,因为这时已经重建了beep_task任务。
  • STM32F103C8T6 FreeRTOS本工(含外部中断).rar
    优质
    本资源包含基于STM32F103C8T6微控制器的FreeRTOS操作系统入门级项目,演示了五个任务的创建、挂起及恢复操作,并结合外部中断的应用。适合初学者学习RTOS多任务调度和中断处理机制。 对于STM32F103C8T6 FreeRTOS基础工程,在参考正点原子例程的基础上进行修改时,请调整configTOTAL_HEAP_SIZE的值。我在此设置为17K,但随着项目规模扩大,可能需要进一步调整此参数以适应需求变化。
  • FreeRTOS中动态
    优质
    本实验旨在通过FreeRTOS操作系统实践任务的动态创建与删除技术,深入理解实时系统中资源管理的核心机制。 FreeRTOS学习笔记——FreeRTOS任务创建和删除实验(动态方法)博客中的代码示例展示了如何使用动态内存分配的方法来创建和删除FreeRTOS的任务。这些代码帮助读者更好地理解和实践FreeRTOS的基本操作,特别是在资源管理方面提供了宝贵的实践经验。
  • FreeRTOS在TM4C中及控制小灯演示
    优质
    本教程详细介绍了如何在TM4C微控制器上使用FreeRTOS操作系统进行多任务编程,包括任务创建、挂起和恢复等操作,并通过控制LED灯的示例程序来展示其应用。 实现按键控制LED灯闪烁功能需要通过编程来检测按键的状态,并根据按键的输入改变LED灯的状态。这通常涉及到硬件电路的设计以及相应的软件程序编写。在硬件方面,你需要将一个按钮连接到微控制器的一个引脚上,同时另一个引脚连接到LED灯。软件部分则包括设置正确的GPIO(通用输入输出)配置、读取按键状态并据此控制LED的亮灭。 这样的项目可以应用于多种场合,比如简易的家庭自动化系统中的开关功能实现或是教学实验中演示基本的I/O操作原理等场景。
  • STM32F103C8T6 FreeRTOS础项目:3(动态方).rar
    优质
    本项目为基于STM32F103C8T6芯片和FreeRTOS操作系统的实践教程,重点介绍如何使用动态内存分配技术来创建及管理三个任务,并演示任务的删除过程。适合初学者了解RTOS基础编程技巧。 STM32F103C8T6 FreeRTOS基础工程基于正点原子例程进行修改,请调整configTOTAL_HEAP_SIZE的值为17K。随着项目复杂度增加,可能需要进一步调整此参数。
  • STM32F103C8T6 FreeRTOS础项目:4(静态方).rar
    优质
    本资源包含使用STM32F103C8T6微控制器和FreeRTOS操作系统实现的任务创建与删除的基础项目。采用静态内存分配技术,适合初学者了解FreeRTOS的多任务处理机制。 STM32F103C8T6 FreeRTOS基础工程基于正点原子例程进行修改,请调整configTOTAL_HEAP_SIZE的值为17K。随着项目复杂度增加,可能需要进一步调整此设置。
  • STM32F103照相机
    优质
    本课程设计基于STM32F103微控制器,专注于开发和实现与照相机接口相关的硬件控制及图像采集功能,适用于初学者探索嵌入式系统应用。 该资源是基于STM32开发的照相机实验项目,包含所有代码。开机后先检测字库,然后检查SD卡根目录是否存在名为PHOTO的文件夹;如果不存在,则创建该文件夹;若创建失败,则提示拍照功能不可用。找到SD卡上的PHOTO文件夹之后,初始化OV7725摄像头模块,在成功初始化后,屏幕上会持续显示OV7725拍摄的画面。 按下KEY0按键时开始拍照操作,此时DS1灯亮起。如果照片保存成功,蜂鸣器发出“滴”的一声提示,并且DS1灯熄灭。而DS0用于指示程序运行状态。
  • STM32F103——网络通信试
    优质
    本项目为基于STM32F103微控制器的嵌入式系统课程设计,重点在于实现网络通信功能。通过软件编程和硬件调试,学生将掌握TCP/IP协议栈的应用及串口通信技术,提高实践操作能力。 开机后,程序初始化LWIP的过程包括:初始化DM9000、申请内存、开启DHCP服务以及添加并打开网卡。接下来系统会等待 DHCP获取IP地址成功。一旦DHCP获取成功,在LCD屏幕上将显示获得的IP地址;如果DHCP失败,则使用静态 IP(固定为192.168.1.30)。随后,Web Server服务启动,并进入主循环状态,此时可以按按键选择需要测试的功能:KEY0用于TCP服务器功能测试、KEY1用于TCP客户端功能测试、KEY2则用于UDP测试。
  • STM32F103人手写识别
    优质
    本简介介绍了一门关于STM32F103微控制器的嵌入式系统课程中的一个创新实验——人手写识别的设计。该实验旨在通过硬件电路搭建和软件编程,实现对手写数字或字母的有效识别与处理,为学生提供实践操作经验并加深对嵌入式系统的理解。 该资源为基于STM32F103开发的手写识别系统,并包含所有代码。实验现象如下:开机后先初始化手写识别器,然后检测字库,之后进入等待输入状态。此时,在LCD上的手写区书写数字或字符时,每次书写结束后会自动进入识别状态并进行识别,将结果输出在LCD模块上(同时通过串口打印)。可以通过按KEY0键切换模式(四种模式均可测试),按下KEY_UP键可以进行触摸屏校准(如果发现触摸屏不准,请执行此操作)。DS0用于指示程序的运行状态。