- 博客(8)
- 资源 (1)
- 收藏
- 关注
原创 嵌入式作业-------FlashRom和SD卡
FLASH是一种EEPROM(电可擦除可编程只读存储器)的类型,具备带电可擦除可编程的特性。本文主要讨论的是STM32微控制器内部的Flash存储器,它主要用于存储用户程序代码和必要的配置信息。SD卡固态硬盘芯片内存存储单元存储代码等非易失性:即使在断电的情况下,数据也能被保留,适合存储程序代码和关键配置信息。快速访问:FLASH具有较快的读取速度,便于快速访问数据。较长寿命:一般的FLASH可以承受约十万次的擦除和写入操作。
2024-12-29 16:34:10
984
原创 嵌入式作业——多任务程序设计
uC/OS-III是由Micrium公司开发的一款实时操作系统(RTOS),于2008年正式对外发布。Micrium公司由Jean Labrosse创立,专注于为嵌入式系统提供全面的软件解决方案,产品线涵盖实时操作系统、TCP/IP协议栈、USB协议栈等多个领域。这一次任务在keil里添加了很多文件,很容易照成遗漏或者重复,所以在文件添加过程中一定要仔细,一不小心就出错了,代码编译不报错,但不能运行,回去检查会花费很多时间,注意一下很大可能是参数配置的问题。
2024-12-22 19:04:37
1094
原创 嵌入式作业—温湿度采集与OLED显示
I2C(Inter-Integrated Circuit)通信协议,由Philips公司开发,因其仅需少量引脚、硬件实现简便、强大的可扩展性以及无需外部收发器等特性,被广泛应用于集成电路(IC)间的系统内通信。在计算机科学领域,复杂问题常通过分层方法简化,类似地,I2C协议也可以分为物理层和协议层来理解。通过分层结构,I2C协议能够实现高效且可靠的设备间通信,简化了设计过程并提高了系统的灵活性和可维护性。简而言之,物理层决定了我们使用何种方式进行交流,而协议层则规定了我们交流时使用的语言。
2024-12-15 10:36:35
659
原创 嵌入式实验—STM32串口通信
在本次实验中,我们探索了通过串口传输文件的过程,即将一个大型文件(如图片、视频或压缩包)从一台笔记本电脑传输到另一台电脑。我们发现,实际传输时间超出了预期,这可能是由于传输过程中的延迟或错误导致的。为了确保文件传输的稳定性,我们必须正确连接电源线和GND地线,因为这是串口通信正常进行的基础。实验中,我们采用了三种不同的方法来控制上位机通过串口发送数据:传统的串口通信、中断驱动的串口通信以及DMA(直接内存访问)驱动的串口通信。
2024-12-13 17:54:27
742
原创 嵌入式实验---定时器与PWM
定时器,作为电子领域中的基础组件,其主要用途是实现定时控制并提供高精度的时间管理。它能够在预设的时间点自动执行关键任务,包括但不限于数据的发送、传感器数据的收集、输入信号的监测以及产生周期性信号。定时器的这种多功能性,使其在工业自动化、医疗设备、通信技术等多个行业中扮演着关键角色,成为实现复杂电子系统功能的核心部件。其在现代电子系统中的重要性不言而喻,是确保系统精确运行和高效操作的基石。
2024-12-11 23:36:38
724
原创 嵌入式基础——基于HAL库和中断的LED流水灯
中断是处理器在执行程序过程中,由于内部或外部事件的触发,暂时中断当前程序,转而去处理这一事件的过程。处理完成后,处理器返回到原来被打断的地方继续执行原程序。中断的意义中断允许CPU更高效地处理突发事件,如定时器溢出、按键输入、串口数据到达等,而不是通过不断轮询来检测这些事件。中断优先级中断具有不同的优先级,当两个中断同时发生时,高优先级的中断会优先得到处理。中断嵌套高优先级的中断可以打断低优先级中断的处理,这就是中断嵌套。中断执行流程。
2024-12-01 21:56:01
906
原创 嵌入式基础—-基于寄存器地址&标准外设库的LED流水灯
本文深入探讨了STM32微控制器的基础知识和开发流程,涵盖了从基础概念到实际应用的多个方面。通过Keil开发环境的实践操作,文章展示了如何通过直接操作寄存器和使用标准库两种方法来实现STM32的GPIO控制,以点亮流水灯为例,让读者对STM32的开发有了直观的认识。尽管寄存器级别的开发能够提供更高的灵活性和效率,但它需要开发者对硬件有深入的理解,这使得标准库方式因其易用性和抽象化而更受青睐。
2024-11-20 23:32:02
861
原创 嵌入式系统程序设计基础——使用ubuntu和Windows上编译运行C语言程序
在完成这些任务的过程中,我深刻体会到了跨平台开发的魅力和挑战。。在Ubuntu系统下,我通过编写和编译C语言程序,加深了对编程语言和编译工具的理解。特别是在编写包含主程序和子程序的项目时,我学会了如何组织代码和使用gcc进行编译。此外,在Windows系统下使用熟悉的编译工具进行编译和运行,让我认识到了不同开发环境下工具的多样性和灵活性。最后,通过使用Makefile来管理项目构建过程,我体会到了自动化构建工具在大型项目中的重要性,它不仅提高了构建效率,还减少了人为错误。
2024-11-12 22:12:56
866
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人