自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 资源 (3)
  • 收藏
  • 关注

原创 STM32之DAC音频播放

本文内容:本文主要介绍如何用AU获取wav格式的正弦波以及截取到的音频,并通过stm32f103c8t6的DAC模块,转换为模拟音频,并用示波器观察波形。一、获取正弦信号点击左上角的文件,新建,音频文件采样率2000Hz,声道单声道,位深度16位点击效果,生成,音调设置如下点击文件,导出,文件格式设置如下完成二、截取音乐中的音频随便找一首音乐,点击截取一段音频右键,点击存储选取为点击更改,配置如下点击确定,完成打开软件WavToC,这是一个将WAV文件转化.

2021-12-29 18:26:25 5402 1

原创 STM32之flash的读写

本文内容:本实验主要介绍Flash地址空间的数据读取。一、创建STM32CUBEMX工程芯片选择F103C8配置定时器打开外部时钟配置时钟配置PC13为output对应板子上的LED设置堆栈大小为4K,导出二、KEIL下的配置将flash.c 和flash.h添加到工程中添加代码如下:#include "flash.h"uint8_t FlashWBuff [255];uint8_t FlashRBuff [255];![在这里插入图片描述](https:.

2021-12-29 17:56:22 1281 1

原创 STM32之完成对SD卡的数据写入

本文内容:本文主要掌握SD卡协议原理,用STM32F103完成对SD卡的数据读取。一、依托协议SD卡也是通过SPI协议进行通信,SPI协议在我之前的博客里有介绍过,这里不多做赘述。SPI协议博客:https://blog.csdn.net/m0_58414679/article/details/121411882?spm=1001.2014.3001.5501二、实验过程笔者目前的能力有限,还不能自己写出完整的SD卡读取程序,所以本实验主要是对现成的代码进行验证,工程放在网盘里了链接.

2021-12-20 11:40:11 5097 14

原创 Altium Designer的安装并绘制stm32最小系统的电路原理图

本文内容:本文主要介绍Altium Designer18的安装过程,并用此软件绘制STM32最小系统板原理图。

2021-12-19 19:07:23 1246 1

原创 ubuntu和stm32下的C程序的内存分配问题

本文内容:本文主要分析C程序中全局变量、局部变量、堆、栈等概念,在Ubuntu系统和STM32(Keil)中分别进行编程、验证(STM32通过串口printf 信息到上位机串口助手) 。归纳出Ubuntu、stm32下的C程序中堆、栈、全局、局部等变量的分配地址,进行对比分析。

2021-12-17 17:08:40 336

原创 Clion安装配置调用32cube实现点灯

本文内容:本文主要介绍CLion的一些安装与配置,并用此软件穿件STM32cubeMX工程实现LED的点亮。

2021-12-13 16:23:13 889

原创 STM32之移植uCOSIII(HAL库)

本文内容:本文以STM32F103C8T6为例进行uc/OS-III的移植,完成三个任务:其中两个task分别以1s和3s周期对LED等进行点亮-熄灭的控制;另外一个task以2s周期通过串口发送“hellouc/OS”。记录详细的移植过程。并使用逻辑仪(SaleaeLogic16)抓取LED输出电平。

2021-12-03 16:22:56 1515 1

原创 STM32之基于I2C的温湿度采集(AHT20)oled显示

本文内容:前面文章分别介绍了温湿度传感器AHT20,以及7针oled的显示,本文将二者结合,用oled显示传感器采集到的温度湿度。一、主要代码主函数#include "delay.h"#include "usart.h"#include "bsp_i2c.h"#include "sys.h"#include "oled.h"#include "gui.h"#include "test.h"int main(void){ delay_init(); /.

2021-11-19 10:54:50 3290

原创 STM32之在oled上实现文字滚动

本文内容:本文主要介绍怎么通过单片机控制7针的oled上实现文字滚动。一、oled与SPI简介(一)oled简介有机发光二极管(OrganicLight-Emitting Diode,OLED),又称为有机电激光显示、有机发光半导体(OrganicElectroluminescence Display,OLED),是指有机半导体材料和发光材料在电场驱动下,通过载流子注入和复合导致发光的现象。(二)SPI协议7针oled需要用到SPI协议SPI 协议是由摩托罗拉公司提出的通讯协议(Seri.

2021-11-18 22:58:57 6866

原创 STM32之基于I2C的温湿度采集(AHT20)

本文内容:本文主要介绍I2C协议,以及用I2C口连接温湿度传感器AHT20,并通过串口显示温湿度数据到上位机。一、何为I2C协议(一)定义I2C 通讯协议(Inter-Integrated Circuit)是由 Phiilps 公司开发的,由于它引脚少,硬件实现简单,可扩展性强,不需要USART、CAN 等通讯协议的外部收发设备,现在被广泛地使用在系统内多个集成电路(IC)间的通讯。(二)I2C物理层(1) 它是一个支持设备的总线。“总线”指多个设备共用的信号线。在一个 I2C 通讯总线中,.

2021-11-18 22:04:41 4497

原创 PC机之间串口通信传送文件

本文内容:本文主要介绍如何实现两电脑之间的串口通信。将两台笔记本电脑,借助 usb转TTL 模块和杜邦线,建立起串口连接。然后用串口助手等工具软件(带文件传输功能)将一台笔记本上的一个大文件(图片、视频和压缩包软件)传输到另外一台电脑,预算文件大小、波特率和传输时间三者之间的关系,并对比实际传输时间。一、材料准备两台笔记本电脑,两个USB转TTL模块,两条杜邦线,秒表二、操作过程及效果首先两个USB的RX和TX之间交叉相连,分别插到两台电脑的USB口上打开串口助手设置如下,打开文件并发送文.

2021-11-14 11:19:57 1086

原创 Ubuntu下的opencv:在图片上加汉字和数字

文章内容:本文主要介绍汉字的编码规则,并在ubuntu下调用opencv把汉字和数字叠加在图片上。一、汉字编码(一)区位码在国标 GD2312—80 中规定,所有的国标汉字及符号分配在一个 94 行、94 列的方阵中,方阵的每一行称为一个“区”,编号为 01 区到 94 区,每一列称为一个“位”,编号为01 位到 94 位,方阵中的每一个汉字和符号所在的区号和位号组合在一起形成的四个阿拉伯数字就是它们的“区位码”。区位码的前两位是它的区号,后两位是它的位号。用区位码就可以唯一地确定一个汉字或符号,.

2021-11-14 10:03:14 724

原创 Yolov5的安装配置及实现目标检测

本文内容:本文主要介绍anaconda下yolov5的安装配置方法,以及如何实现目标检测。目录一、yolov5的下载安装(一)环境配置(二)下载yolov5二、yolov5测试(一)图片测试(二)视频测试三、调用手机摄像头实现实时检测四、总结五、参考文章一、yolov5的下载安装(一)环境配置先在anaconda里加一个yolov5的环境输入指令:conda create -n yolov5python=3.8按y确认安装...

2021-11-01 09:18:38 1313 1

原创 STM32之DMA通信

本文内容:本文主要介绍如何用STM32CUBEMX创建DMA通信例程。一、DMA介绍DMA,全称Direct Memory Access,即直接存储器访问。DMA传输将数据从一个地址空间复制到另一个地址空间,提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。DMA用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须CPU的干预,通过DMA数据可以快速地移动。这就节省了CPU的资源来做其他操作。DMA框图二、创建DMA例程创建工程,选择芯片型号设置RCC,选.

2021-10-31 11:04:51 580

原创 STM32之中断的使用

本文内容:本文主要介绍STM32中的中断系统,并用中断进行点灯和串口通信。

2021-10-31 10:25:23 3291

原创 Anaconda环境下的opencv实现人脸检测

文章内容:本文主要介绍python3.9+Anaconda+pytorch+Jupyter+Opencv安装教程,以及opencv的图片加载以及人脸检测。一、anaconda的安装进入官网进行安装Anaconda | Individual Edition点击windows图标跳转到下载下载64位剩下的一路next就好安装完成二、pytorch的安装注:我们配置的环境需要驱动在440一样,版本低的需要更新一下点击下面的这个软件可以查看当...

2021-10-24 15:03:09 1502 1

原创 STM32之汇编语言的串口通信

本文内容:本文主要介绍STM32串口通信的基本原理,以及如何用汇编语言使单片机与电脑进行串口通信。目录一、USART简介二、汇编代码(一)工程创建(二)代码实现三、烧写运行结果四、总结五、参考文章一、USART简介通用同步异步收发器(Universal Synchronous Asynchronous Receiver and Transmitter)是一个串行通信设备,可以灵活地与外部设备进行全双工数据交换。串行通信一般是以帧格式传输数据,即是一帧一帧的传.

2021-10-24 09:36:30 1355

原创 STM32CubeMX——搭建环境、编译烧写

文章内容:本文主要介绍STM32CubeMX的安装方法,以及怎么用这个软件来生成一个流水灯工程文件。目录一、STM32CubeMX的环境搭建(一)安装STM32CubeMX(二)固件库的安装二、用STM32CubeMX生成工程文件(一)选择MCU和封装(二)配置时钟(三)配置调试模式(四)配置GPIO(五)代码生成三、填写main函数四、编译与仿真运行五、烧写与硬件实现六、总结七、参考文章一、STM32CubeMX的环境搭建(...

2021-10-22 13:45:39 1865 1

原创 Jupyter Notebook采坑:ModuleNotFoundError: No module named ‘torch‘

PyTorch成功后, 在Jupyter Notebook处遇一坑,困扰许久,终不解,幸遇一大佬文章,拜读后,豁然开朗,茅塞顿开,拨云见日,不发不快,愿此采坑记,点醒迷中人。若你也是改了半天未果,不妨看看这个。上图成功后,我们运行Jupyter Notebook,然后就出现了下图:首先打开anaconda在Applications on这里,将base调成pytorch虚拟环境然后点击jupyter下的launch,如果没安装则是install,安完再launc...

2021-10-16 22:51:44 2433 2

原创 32之寄存器点亮流水灯

本文内容:本文主要介绍寄存器的地址配置方式,以及调用寄存器的代码点亮一串流水灯。一、何为寄存器用官话来讲,寄存器是CPU内部用来存放数据的一些小型存储区域,用来暂时存放参与运算的数据和运算结果。简单的讲,如果将我们的计算机比作一栋大楼,而寄存器就是这栋大楼中的每一间房子,寄存器地址便可以看做是房子的门牌号,只不过这个门牌号有点特殊,是由01比特流构成的。二、寄存器地址配置三、 点亮流水灯四、总结五、参考文章...

2021-10-15 12:04:38 521

原创 Keil下STM32的C与汇编语言混合编程

本文内容:本文主要完成在c语言中调用汇编语言,汇编语言的改写以及调试跟踪寄存器的变化,并尝试在汇编语言中调用c语言。目录一、在c语言中调用汇编语言二、汇编语言的改写三、在汇编语言中调用c语言四、总结五、参考文章一、在c语言中调用汇编语言新建一个工程选择芯片型号,这里我选的是STM32F103VE配置如下建立c文件代码如下#include<stdio.h>extern void Init_1(void);i...

2021-10-10 14:46:20 280

原创 Ubuntu下的OpenCV

本文内容:本文主要讲述Ubuntu18.04下OpenCV3.4.11的安装方法和openmv的一些基础的使用。一、什么是opencv开源计算机视觉(OpenCV)是一个主要针对实时计算机视觉的编程函数库。OpenCV的应用领域包括:2D和3D功能工具包运动估计面部识别系统手势识别人机交互移动机器人动作理解物体识别分割和识别实体影像立体视觉:来自两个摄像机的深度感知运动中的结构(SFM)运动跟踪增强现实为了支持上述一些领域,OpenCV包括一个统计机器学习库,其中.

2021-10-08 16:57:18 371

原创 gcc下的静态库与动态库

本文内容:学习了解在gcc下生成和使用静态库和动态库,并进行比较认识到二者的相同点和不同点。一、何为静态库与动态库静态库在程序编译时会被连接到目标代码中,程序运行不需要静态库的存在。动态库在程序编译时不会被连接到目标代码中,而是程序运行时载入的。两者区别:前者是编译连接的,后者是程序运行载入的。二、库的生成与使用(一)文件准备(二)...

2021-10-06 22:13:16 326

原创 Keil环境下创建STM32汇编语言工程并分析HEX文件内容

本文内容:在Keil嵌入式开发环境下,完成一个基于STM32汇编程序的编写,并进行动态调试;观察最终生成 hex 文件的各段的大小,以及 hex 文件前 8 个字节内容,解释其含义。一、Keil下工程建立与文件添加1.新建工程点击Project——>New uVision Project创建新项目命名文件并保存选择芯片,这里我选的是STM32F103VE,然后点击OKCMSIS下选择CORE;Device下Startup(其中包含了启动文件),...

2021-09-25 17:44:08 1288

原创 Ubuntu系统下C语言的使用

本文是在Ubuntu系统上编译多个C程序来对比在Linux系统和Windows系统编写C程序的区别。涉及到的程序为main1.c、sub1.h;以下采用三种方式进行编译,第一种是直接使用gcc在命令行编译,第二种是在Windows系统进行编译, 第三种是使用Makefile文件编译。目录一、直接使用gcc在命令行编译二、在Windows系统进行编译三、使用Makefile文件编译四、总结一、直接使用gcc在命令行编译1.ubuntu下创建c语言hello world程.

2021-09-12 14:55:50 2816

温湿度传感器(AHT20)及7针oled屏显显示代码

温湿度传感器(AHT20)及7针oled屏显显示代码

2021-11-18

取字模软件PCtoLCD

取字模软件

2021-11-18

Ubuntu下的opencv:在图片上加汉字和文字 字库文件

汉字字库,有需要请自取

2021-11-14

空空如也

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

TA关注的人

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