- 博客(8)
- 收藏
- 关注
原创 实验4- FlashRom和SD卡
本次实验聚焦于 stm32f103c8t6 芯片的 Flash 地址空间数据读取相关操作。鉴于该芯片仅有 20KB 的 RAM 用于存放程序代码与数组变量,于是把目光投向了内部 Flash 的 64KB 存储空间(起始地址为 0x08000000)。实验过程采取分批次写入的策略,每次写入 8KB 数据,历经 8 次复位运行代码,达成 64KB 数据完整写入 Flash 的目标。在此之后,着重验证写入数据的准确性以及读写速率,以此衡量数据存储的可靠性与读写性能。
2024-12-29 18:09:57
1071
原创 实验-多任务程序设计
本次学习实践围绕嵌入式实时操作系统 uc/OS - III 展开,核心任务是将其成功移植到 stm32F103 开发板上,并构建多个功能性任务。uc/OS - III 作为一款功能强大的实时操作系统,掌握它的移植流程有助于深入理解嵌入式系统的多任务并发处理机制。在移植过程中,需要针对 stm32F103 的硬件特性,细致配置诸如中断、时钟、内存管理等底层模块,从而为操作系统搭建稳定的运行环境。任务构建环节是此次实践的关键部分,创建了三个不同周期执行的任务。
2024-12-23 22:22:30
712
原创 实验3-温湿度采集与OLED显示
OLED即有机发光二极管(Organic Light-Emitting Diode),又称为有机电激光显示,OLED 由于同时具备自发光,不需背光源、对比度高、厚度薄、视角广、反应速度快、可用于挠曲性面板、使用温度范围广、构造及制程较简单等优异之特性,被认为是下一代的平面显示器新兴应用技术,LCD 都需要背光,而 OLED 不需要,因为它是自发光的。这样同样的显示,OLED 效果要来得好一些,以目前的技术,OLED 的尺寸还难以大型化,但是分辨率确可以做到很高。
2024-12-15 20:54:17
815
原创 实验-定时器与PWM
第一部分:定时器实现多任务并发之前的实验中,延时功能依赖循环或delay/Hal_delay函数,这种方法效率低,且在延时期间CPU处于阻塞状态,无法处理其他任务。本次实验通过定时器Timer实现了精准的定时中断,相当于为CPU设置了一个闹钟。CPU可以处理其他任务,当定时时间到达时,中断服务程序会执行相应的操作。我设置了一个5秒定时器(例如TIM2),每隔5秒通过串口发送“hello windows!同时设置了一个2秒定时器(例如TIM3),控制LED周期性闪烁。这实现了两个周期性任务的并发运行。
2024-12-11 14:14:48
1159
原创 实验-STM32串口通信
(一)理论知识层面串口协议与标准详细了解了串口协议的基本架构和数据传输规则,RS - 232 标准作为经典的串口通信标准,其电平范围、电气特性以及连接规范等知识为实际操作提供了重要依据。明确了 RS232 电平与 TTL 电平在电压范围上的差异,RS232 采用负逻辑,其电平范围较宽,适用于长距离传输但需要专门的转换芯片与设备连接;而 TTL 电平则是正逻辑,常用于芯片间短距离通信,这使得在构建串口连接时能根据需求合理选择合适的电平转换模块。
2024-12-09 20:32:04
1140
原创 实验2 -基于HAL库和中断的LED流水灯
1.安装JDK和MDKjdk和mdk先前已经安装,不再描述2.安装STM32CubeMX安装完毕1.使用HAL库创建工程文件(1)打开下载好的CubeMx,点击左上角的File文件选择“New Project”,创建工程在弹出的界面中,下拉列表输入芯片名称“STM32F103C8T6”,右下角选中后,点击“Start Project”(2)然后配置“.sys”,下拉debug模式 ,选中"Serial Wire"Timebase Source选择“SysTick”,接着配置“.R
2024-12-01 21:31:50
781
原创 实验1---基于寄存器地址&标准外设库的LED流水灯
通过本次围绕 STM32F103C8T6 芯片开展的实验,完成了两项具有递进性的实验任务,深入探索了利用该芯片控制 LED 灯实现轮流闪烁效果的不同方法以及相关开发流程与调试技巧。在实验任务 1 中,采用 C 语言寄存器方式对 GPIO 端口进行操作,从最基础的层面深入了解了芯片的硬件架构与寄存器配置逻辑。
2024-11-20 22:23:45
878
原创 作业1-嵌入式系统程序设计基础
请修改系统参数,选择国内镜像软件源仓库,以提高软件安装速度(注意Ubuntu不同版本的对应不同名称,如Ubuntu22.04是jammy,Ubuntu20.04是focal,Ubuntu18.04是bionic,Ubuntu16.04是xenial)。请编写一个主程序文件 main1.c 和一个子程序文件 sub1.c, 要求:子程序sub1.c 包含一个算术运算函数 float x2x(int a,int b),此函数功能为对两个输入整型参数做某个运算,将结果做浮点数返回;
2024-11-13 12:27:16
188
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人