自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 【音频数据的flash读取与DAC播放】

一、Flash原理不同型号的 STM32,其 FLASH 容量也有所不同,最小的只有 16K 字节,最大的则达到了 1024K 字节。市面上 STM32F1 开发板使用的芯片是 STM32F103系列,其 FLASH 容量一般为 512K 字节,属于大容量芯片。Flash的编程原理都是只能将1写为0,而不能将0写为1,所以在进行Flash编程前,必须将对应的块擦除,即将该块的每一位都变为1,块内所有字节变为0xFF。STM32F1 的闪存(Flash)模块:主存储器、信息块、闪存存储器接口寄存器①主

2021-12-31 15:17:49 245

原创 【小陈睡不醒SD卡数据读取以及Altium Designer绘制stm32最小系统原理图及stm32+SD卡绘制】

一SD卡介绍1、SD卡SD存储卡(Secure Digital Memory Card)是一种基于半导体快闪存储器的新一代高速存储设备。SD存储卡的技术是从MMC卡(MultiMedia Card格式上发展而来,在兼容SD存储卡基础上发展了SDIO(SD Input/ Output)卡,此兼容性包括机械,电子,电力,信号和软件,通常将SD、SDIO卡俗称SD存储卡一张SD卡包括有存储单元、存储单元接口、电源检测、卡及接口控制器和接口驱动器5 个部分。存储单元是存储数据部件,存储单元通过存储单元接口与

2021-12-24 23:46:24 463

原创 变量存储重温与clion编辑器的学习与实践。

一、Clion介绍Clion 是一款专门开发 C 以及 C++ 所设计的跨平台的 IDE。它是以 IntelliJ 为基础设计的,包含了许多智能功能来提高开发人员的生产力。这种强大的 IDE 帮助开发人员在 Linux、OSX 和 Windows 上来开发 C/C++ ,同时它还能使用智能编辑器来提高代码质量、自动代码重构并且深度整合 Cmake 编译系统,从而提高开发人员的工作效率。CLion 支持 GCC、clang、MinGW、Cygwin 编译器以及 GDB 调试器。提供对 Cmake 支持:

2021-12-16 11:41:48 533

原创 小陈睡不醒UC/OS系统移植

STM32F103C8T6移植uCOS基于HAL库一、题目要求学习嵌入式实时操作系统(RTOS),以uc/OS-III为例,将其移植到stm32F103上,构建至少3个任务(task):其中两个task分别以1s和3s周期对LED等进行点亮-熄灭的控制;另外一个task以2s周期通过串口发送“hello uc/OS! 欢迎来到RTOS多任务环境!”。记录详细的移植过程。在上述实验中,在掌握Keil的仿真调试代码功能之外,也学习使用仪器对代码运行进行故障排查和功能调测。练习使用示波器去观察LED

2021-12-07 21:58:56 168

原创 【STM32+OLED屏显应用实例】

一,相关技术.1.1关于SPI协议SPI 协议是由摩托罗拉公司提出的通讯协议 (Serial Peripheral Interface) ,即串行外围设备接口,是一种高速全双工的通信总线。它被广泛地使用在 ADC 、 LCD 等设备与 MCU 间,要求通讯速率较高的场合。SPI物理层SPI协议层SPI 基本通讯过程MOSI 与 MISO 的信号只在 NSS 为低电平的时候才有效,在 SCK 的每个时钟周期 MOSI 和 MISO 传输一位数据。通讯的起始和停止信号在图 25-2 中的

2021-11-26 22:09:24 3764

原创 【无标题】

一、题目要求1、学习I2C总线通信协议,使用STM32F103完成基于I2C协议的AHT20温湿度传感器的数据采集,并将采集的温度-湿度值通过串口输出。具体任务:(1)解释什么是“软件I2C”和“硬件I2C”? (阅读野火配套教材的第23章“I2C–读写EEPROM”原理章节)(2)阅读AHT20数据手册,编程实现:每隔2秒钟采集一次温湿度数据,并通过串口发送到上位机。二、I2C总线通信协议1、I2C介绍什么是I2C协议I2C 通讯协议(Inter-Integrated Circuit)是由

2021-11-26 19:46:44 67

原创 【无标题】

标题串口传输文件及点阵汉字的字模读取与显示一、题目要求学习理解汉字的机内码、区位码编码规则和字形数据存储格式。在Ubuntu下用C/C++(或python) 调用opencv库编程显示一张图片,并打开一个名为"logo.txt"的文本文件(其中只有一行文本文件,包括名字和学号),按照名字和学号去读取汉字24*24点阵字形字库中对应字符的字形数据,将名字和学号叠加显示在此图片右下位置。二、汉字点阵原理1、什么是点阵?我们用之前的方法一个IO口只能控制一个led,如果需要用更少的IO口控制更多的led

2021-11-19 19:31:39 245

原创 2021-11-06

小陈睡不醒STM32中断与DMA通信编程作业一、实验要求学习stm32中断、DMA通信原理和编程方法。使用stm32tubemx和HAL库分别完成以下编程练习:一、实验要求学习stm32中断、DMA通信原理和编程方法。使用stm32tubemx和HAL库分别完成以下编程练习:用stm32F103核心板的GPIOA端一管脚接一个LED,GPIOB端口一引脚接一个开关(用杜邦线模拟代替)。采用中断模式编程,当开关接高电平时,LED亮灯;接低电平时,LED灭灯。采用串口中断方式重做上周的串口通信作业

2021-11-06 13:40:02 825

原创 小陈睡不醒串口通信小试牛刀

标题 stm32CubeMX+Keil使用HAL库点灯,并使用逻辑分析仪观察周期题目要求:安装 stm32CubeMX,配合Keil,分别尝试使用寄存器地址方式(汇编或C,不限) 和HAL库这两种方式,完成下列任务:1、重做上一个LED流水灯,即用GPIO端口完成3只LED红绿灯的周期闪烁。2、在没有示波器条件下,可以使用Keil的软件仿真逻辑分析仪功能观察管脚的时序波形,更方便动态跟踪调试和定位代码故障点。 请用此功能观察3个GPIO端口的输出波形,并分析其波形反映的时序状态正确与否,高低电平转换周

2021-10-29 19:02:00 411

原创 2021-10-23

小陈睡不醒点亮面包板LED灯作业一、题目简述以 STM32最小系统核心板STM32F103C8T6+面板板+3只红绿蓝LED 搭建电路,使用GPIOB、GPIOC、GPIOD这3个端口控制LED灯,轮流闪烁,间隔时长1秒。1)写出程序设计思路,包括GPIOx端口的各寄存器地址和详细参数;2)分别用汇编语言,C语言编程实现。二、简述:初始化GPIO,点亮LED灯外设的功能都是完全不同的,但初始化都是大同小异的。点灯是所有学单片机的人都应该学会的第一项技能,这样子才算入门。51单片机的点灯是,通

2021-10-23 22:13:36 450

原创 小陈睡不醒

stm32与cyuyan混合编程建立工程,创建两个文件之后进行debug单步运行总结建立工程,创建两个文件func.s文件 AREA MY_FUNCTION,CODE,READONLY EXPORT Init_1 ;//与在c文件中定义的Init_1函数关联起来; //高级语言中的声明和使用变量其实是对板子寄存器的使用,所以我们只需要直接使用寄存器即可Init_1 MOV R1,#0 ; //设R1寄存器为i MOV R2,#0 ; //设R2寄存器为j LOO

2021-10-11 23:34:57 92

原创 gcc生成静态库.a 和动态库.so小陈睡不醒

一。用Gcc生成静态库和动态库。.静态库在程序编译时会被连接到目标代码中,程序运行是不需要静态库的存在。.动态库在程序编译时不会被连接到目标代码中,而是在程序运行时载入的。两者区别:前者是编译连接的,后者是程序运行载入的。(一)hello实例使用库1.准备过程(1)创建一个目录(2)hello代码#ifndef HELLO_H#define HELLO_Hvoid hello(const char *name);#endif//HELLO_Hhello.h#ifndef

2021-10-08 20:25:52 362

原创 2021-09-30

keil环境下创建STM32汇编语言工程并分析HEX文件内容一、在keil环境下创建新项目1、新建工程2、添加源文件二、代码编写,编译与调试1.代码编写2.程序编译3.程序调试三、分析生成的HEX文件1.扩展线性地址记录2.数据部分3.文件尾四、总结一、在keil环境下创建新项目1、新建工程点击project–>New aVision Project创建新项目命名文件并保存选择芯片,这里我选择的是ATM32F103VE,然后点击OKCMSIS下选择CORE:Device下Startup(

2021-09-30 13:57:45 158

原创 小陈睡不醒嵌入式作业

(一)直接使用gcc编译c程序1.编写c程序#include"sub1.h"int main(){ int x=2,y=9; //定义x和y变量 printf("%.2f\n",x2x(x,y)); //输出处理后的值,保留两位小数 return 0;}编写sub1.h#ifndef __SUB1_H#define __SUB1_H#include<stdio.h>float x2x(int a,int b);

2021-09-14 20:05:56 86

空空如也

空空如也

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

TA关注的人

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