自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 STM32音频数据的Flash读取与DAC播放

本文主要内容:Flash地址空间的数据读取。stm32f103c8t6只有20KB 内存(RAM)供程序代码和数组变量存放,因此,针对内部Flash的总计64KB存储空间(地址从0x08000000开始),运行一次写入8KB数据,总计复位运行代码4次,将32KB数据写入Flash。并验证写入数据的正确性和读写速率。基于片内Flash的提示音播放程序。实验数据准备:用Adobe audition或goldwave等音频编辑软件录制“您好欢迎光临!”的几秒钟的声音(8khz采样、8bit量化编码的单.

2021-12-30 17:40:27 851

原创 基于STM32F103 完成对SD卡的数据读取(FAT文件模式)

本文主要讲述SD卡协议原理,用STM32F103 完成对SD卡的数据读取(FAT文件模式)目录一 基本知识1.1 SD卡简述1.2 SPI协议1.3 SD卡物理结构二 代码配置与修改2.1 源码下载2.2 硬件连线2.3 代码修改2.4 编译烧录2.5 结果展示三、可能的错误原因四、参考网站一 基本知识1.1 SD卡简述很多单片机系统都需要大容量存储设备,以存储数据。目前常用的有 U 盘,FLASH 芯片,SD 卡等。他们各有...

2021-12-21 16:34:02 747 1

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

本文主要内容:掌握电路原理图绘制。安装Altium Designer 18,学习使用Altium Designer绘制一个stm32最小系统的电路原理图,并在此基础上完成STM32+SD卡 的系统原理图设计。一、软件下载与安装网盘提取文件: 链接:百度网盘 请输入提取码 提取码:dcc9下载后解压Altium_Designer_Beta_18.1.7.iso 文件。双击打开 AltiumDesigner18Setup.exe 文件,开始安装。 安装步骤如下:...

2021-12-16 20:38:36 504

原创 Ubuntu系统、STM32下堆、栈、全局、局部等变量学习

本文主要内容:编写一个C程序,重温全局变量、局部变量、堆、栈等概念,在Ubuntu(x86)系统和STM32(Keil)中分别进行编程、验证(STM32 通过串口printf 信息到上位机串口助手) 。归纳出Ubuntu、stm32下的C程序中堆、栈、全局、局部等变量的分配地址,进行对比分析。一 概念学习1.1全局变量 & 局部变量全局变量在所有函数外部定义的变量称为全局变量(Global Variable),它的作用域默认是整个程序,也就是所有的源文件。局部变量定...

2021-12-15 18:41:59 1185

原创 基于clion与stm32cubemx——点亮LED

目录一 软件安装1.1下载clion1.1.1下载地址1.1.2安装教程2.安装arm-none-eabi-gcc3.安装openocd4. 安装MinGW5.添加系统环境变量二、配置Clion2.1 点击创建新工程2.2 进入后进入settings2.3 配置 toolchains2.4 配置cmake2.5 配置Embedded Development三、实现工程3.1生成stm32cubemx程序3.2 基本配置led流水灯...

2021-12-12 22:05:12 147

原创 基于STM32cubeMX将uc/OS-III移植到stm32F103上

目录一、获取uC/OS-III源码1. 到官网下载2.网盘下载二、源码导入文件整理2.1 新建文件夹与文件2.2导入源码三创建stm32cubeMX项目并调配3.1stm32cubeMX工程创立3.2 工程配置​四 代码修改4.1 修改startup文件​4.2 修改CONFIG/app_cfg.h4.3 修改CONFIG/includes.h4.4 修改BSP/bsp.c4.5 bsp.h4.6 CONFIG/lib_cf...

2021-12-03 22:23:13 590

原创 基于SPI协议 AHT20+OLED屏显

本文内容:理解OLED屏显和汉字点阵编码原理,使用STM32F103的SPI或IIC接口实现以下功能:1) 显示学号和姓名;2) 显示AHT20的温度和湿度;3) 上下或左右的滑动显示长字符

2021-11-21 23:14:11 4174

原创 《嵌入式》基于I2C协议的AHT20温湿度传感器的数据采集

本文将主要介绍解释什么是“软件I2C”和“硬件I2C”?使用STM32F103完成基于I2C协议的AHT20温湿度传感器的数据采集,并将采集的温度-湿度值通过串口输出目录一、I2C总线通信协议1.I2C协议定义2.I2C物理层3.协议层4.硬件I2C与软件I2C二、利用AHT20完成温湿度采集1.代码编写2.实物连线3.实验结果三、参考文章一、I2C总线通信协议1.I2C协议定义I2C 通讯协议(Inter-Integrated Circ..

2021-11-20 17:17:04 9186

原创 Ubuntu 图片上加载文字 (点阵汉字的字模读取与显示)

本文主要介绍汉字的机内码、区位码编码规则和字形数据存储格式及如何在Ubuntu下用C/C++调用opencv库编程显示一张图片,并打开一个名为"logo.txt"的文本文件(其中只有一行文本文件,包括你自己的名字和学号),按照名字和学号去读取汉字24*24点阵字形字库(压缩包中的文件HZKf2424.hz)中对应字符的字形数据,将名字和学号叠加显示在此图片右下位置目录一、汉字编码1.区位码2.机内码3.点阵字库1.利用区位码获取汉字2.利用汉字机内码获取汉字二、在图片.

2021-11-14 18:05:00 501

原创 两台电脑实现串口通信

本文主要介绍串口传输文件的练习。将两台笔记本电脑,借助 usb转rs232 模块和杜邦线,建立起串口连接。然后用串口助手等工具软件(带文件传输功能)将一台笔记本上的一个大文件(图片、视频和压缩包软件)传输到另外一台电脑,预算文件大小、波特率和传输时间三者之间的关系,并对比实际传输时间。目录一、实验准备1、材料准备二、实现串口通信三、时间对比一、实验准备1、材料准备两台笔记本电脑,两个USB转TTL模块,四条杜邦线,手机秒表2、连线两个串口线连接这两台电...

2021-11-14 15:48:01 5854

原创 STM32之DMA通信原理及编程实验

本文主要介绍DMS通信原理,STM32采用串口DMA方式,用115200bps或更高速率向上位机连续发送数据。目录一、DMA1 DMA简介2 DMA背景3 DMA特点4 DMA框图二、stm32tubemx创建DMA工程三、代码部分四、参考网站一、DMA1 DMA简介DMA,全称Direct Memory Access,即直接存储器访问。DMA 传输方式无需 CPU 直接 控制传输,也没有中断处理方式那样保留现场和恢复现场的过程,通过硬件为 RAM ..

2021-11-05 16:00:01 1689

原创 stm32中断,使用stm32tubemx和HAL库编程与串口通信

本文主要介绍中断原理及相关的编程方法,使用stm32tubemx和HAL库实现用stm32F103核心板的GPIOA端一管脚接一个LED,GPIOB端口一引脚接一个开关(用杜邦线模拟代替)。采用中断模式编程,当开关接高电平时,LED亮灯;接低电平时,LED灭灯。目录一、中断1.什么是中断2 中断的作用3 中断优先级二、CubeMX以中断方式点灯1 工程建立与环境配置2 管脚,时钟设置3 代码编写4 电路连接5 结果展示​三、STM32CUBE...

2021-11-05 14:47:39 425

原创 基于Keil的软件仿真逻辑分析仪功能观察管脚的时序波形

本实验主要讲解在没有示波器条件下,使用Keil的软件仿真逻辑分析仪功能观察管脚的时序波形。用此功能观察上一篇博客流水灯中3个GPIO端口的输出波形和串口输出波形,并分析其波形反映的时序状态正确与否,高低电平转换周期(LED闪烁周期)实际为多少。一、keil观察3个GPIO端口的输出波形1、仿真设置在使用仿真时,需要先进行Debug模式设置。点击魔法棒 进入debug界面经行修改Dialog.DLL下改为DARMSTM.DLL,Parameter下改为-pSTM32F103RC(你所希望..

2021-10-24 15:46:23 2912

原创 (嵌入式系统开发)stm32CubeMX环境配置,配合keil使用寄存器点灯

本篇文章主要介绍如何安装STM32CubeMX及STM32CubeMX配合keil完成1、做一个LED流水灯,用GPIO端口完成3只LED红绿灯的周期闪烁。2、完成一个STM32的USART串口通讯程序(查询方式即可,暂不要求采用中断方式),要求:1)设置波特率为115200,1位停止位,无校验位;2)STM32系统给上位机(win10)连续发送“hello windows!”。win10采用“串口助手”工具接收。一、STM32CubeMX的安装与环境装配1.STM32Cu..

2021-10-24 13:19:32 3803 1

原创 (嵌入式系统开发)stm32串口通信与RS-232

本篇主要叙述串口协议和RS-232标准,以及RS232电平与TTL电平的区别;了解"USB/TTL转232"模块(以CH340芯片模块为例)的工作原理。

2021-10-23 15:54:18 12933

原创 STM32F103寄存器方式点亮LED流水灯与GPIO简单讲解

前言:以本文章主要讲解以正点原子STM32mini板(STM32F103RC)+面板板+3只红绿蓝LED 搭建电路,使用GPIOB、GPIOC、GPIOD这3个端口控制LED灯,轮流闪烁。

2021-10-19 22:03:13 6844

原创 基于keil5下STM32的C与汇编语言混合编程

本文章主要介绍基于mdk5(keil5)下关于STM32的C与汇编语言混合编程。一、简介C与汇编语言混合编程 C语言是一个系统级的语言,是一个可以直接深入到硬件最底层操作的语言。在前边的部分博客中,我们提到过,对硬件的操作实际上是对硬件控制器中的寄存器或存储单元进行操作,而在ARM架构中,这些寄存器或存储单元一般是以内存映射的方式进行访问的。在C语言中,指针刚好提供了访问任意的内存地址的方式,因此从语言上是可以表达的。但实际情况呢? 实际上,在操作底层硬件时,C语言还是有其局限...

2021-10-12 10:26:06 2041

原创 基于Ubuntu18.04下openCV3.4.11的安装及使用实例

一、openCV3.4.11的安装1.下载openCV3.4.11安装包可以在Ubuntu18.04自带浏览器里面下载。网站我推荐国内快速下载地址https://www.bzblog.online/wordpress/index.php/2020/03/09/opencvdownload/下载完压缩包后把解压后的文件夹放入主目录2.使用 cmake 安装 opencv首先进入解压后的文件夹opencv-3.4.11 在终端界面输入cd opencv-3.4.1...

2021-10-07 19:51:46 237

原创 gcc编译工具集与其中各软件的用途与ELF文件格式分析

GCC不是一个人在战斗,GCC背后有一堆战友。本文的目的是简单的介绍一下GCC编译工具集中各软件的作用。一、GCC编译工具集1、GCC的组成:GCC(GNU C Compiler)是编译工具。本文所要介绍的将 C/C++语言编写的程序 转换成为处理器能够执行的二进制代码的过程即由编译器完成。Binutils: 一组二进制程序处理工具,包括:addr2line、ar、objcopy、objdump、as、ld、 ldd、readelf、 size 等。工具 作用 addr2..

2021-10-07 14:15:14 618

原创 用gcc生成静态库和动态库并比较其大小(基于ubuntu18.04环境下 vim gcc)

本篇将介绍基于Ubuntu18.04环境下用gcc生成静态库和动态库并比较其大小一、库的分类及区别1.分类1.1静态库(xxx.a) 静态库的代码在编译过程中已经被载入可执行程序,因此体积比较大。所以生成的可执行文件就不受库的影响了,即使库被删除了,程序依然可以成功运行。在程序编译时会被连接到目标代码中,程序运行是则不需要静态库的存在。1.2动态库(xxx.so) 动态库又名共享库。动态库(共享库)的代码在可执行程序运行时才载入内存,在编译过程中仅简单的引用,...

2021-10-07 12:10:32 1198

原创 基于MDK(Keil5)的STM32汇编程序

本次实验是基于keil 5

2021-09-28 11:08:53 2670

原创 基于Ubuntu18.04的C语言编程教程(gcc、vim、Makefile)

本文的目的是在于讲诉基于ubuntu18.04版本下如何利用gcc vim等命令进行基础的c语言程序编辑目录 (1)gcc、vim和必要软件包的安装 (2)1.GCC与必要软件包的安装在使用Ubuntu系统编写c语言程序时,先得安装GCC。安装GCC的命令是:sudo apt-get build-dep gcc大多数Ubuntu系统中已经安装好了GCC,但要想编译C语言文件还需要安装build-essentian这个软件包安装build-esse...

2021-09-12 13:46:26 1234

空空如也

空空如也

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

TA关注的人

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