自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 问答 (3)
  • 收藏
  • 关注

原创 STM32F103的DAC音频输出

目录一、DAC输出周期2khz的正弦波1.使用Audition输出一个周期2khz的正弦波2.使用UltraEdit得到相关数据3.使用notepad++添加相关内容4.添加数据5.波形观察二、DAC输出数字音频歌曲数据转换为模拟音频波形输出三、总结四、参考资料一、DAC输出周期2khz的正弦波1.使用Audition输出一个周期2khz的正弦波选择文件->新建->音频文件选择效果->生成->音调,并设置如下参数..

2021-12-31 20:08:06 2271

原创 STM32的Flash地址空间的数据读取

一、STM32内部FLASH地址简介在 STM32 芯片内部有一个 FLASH 存储器,它主要用于存储代码,我们在电脑上编写 好应用程序后,使用下载器把编译后的代码文件烧录到该内部 FLASH 中,由于 FLASH 存 储器的内容在掉电后不会丢失,芯片重新上电复位后,内核可从内部 FLASH 中加载代码并 运行,见图图 STM32 的内部框架图除了使用外部的工具(如下载器)读写内部 FLASH 外,STM32 芯片在运行的时候, 也能对自身的内部 FLASH 进行读写,因此,若内部 FLAS

2021-12-31 17:11:08 4353

原创 Altium Designer绘制stm32+SD卡原理图绘制

目录一、安装 Altium Designer1.安装包下载2.安装3.修改文件二、绘制stm32最小系统原理图1.新建工程2.添加元器件3.开始绘制三、绘制结果四、SD卡模块原理图绘制五、总结六、参考资料一、安装 Altium Designer1.安装包下载https://pan.baidu.com/share/init?surl=ghWFVpSHIVXVfiQko9htCQ提取码:luha2.安装解压缩 Altium_Designer

2021-12-25 16:49:23 886

原创 用STM32F103完成对SD卡的数据读取

一、SD卡简介1、SDIO简介SD 卡(Secure Digital Memory Card)在我们生活中已经非常普遍了,控制器对 SD 卡进行 读写通信操作一般有两种通信接口可选,一种是 SPI 接口,另外一种就是 SDIO 接口。 SDIO 全称是安全数字输入/输出接口,多媒体卡(MMC)、SD 卡、SD I/O 卡都有 SDIO 接口。 STM32F10x 系列控制器有一个 SDIO 主机接口,它可以与 MMC 卡、SD 卡、SD I/O 卡以及 CE-ATA 设备进行数据传输。MMC 卡可以

2021-12-24 15:22:24 2338 1

原创 基于Clion完成stm32F103点亮LED的程序

一、Clion安装配置(一)Clion下载下载 CLion:适用于 C 和 C++ 的智能跨平台 IDE(二)Clion安装1.打开安装包,点击next2.选择安装位置,点击next3.选中如下选项,点击next4.点击Install,开始安装5. 点击Finish,安装完成(三)安装配置 arm-none-eabi-gcc1.下载GNU Toolchain | GNU Arm Embedded ..

2021-12-17 15:20:55 551

原创 Ubuntu,stm32分析C语言经编译后的分区情况

目录一、内存分区介绍(一)C语言经编译后的分区情况(二)动&静分配内存(三)Text & Data & Bss(四)堆栈(Heap& Stack)二、Ubuntu,stm32开发编程输出信息分析(一)Ubuntu(二)stm32(三)对比分析三、总结四、参考资料一、内存分区介绍(一)C语言经编译后的分区情况一个由C/C++编译的程序占用的内存分为以下几个部分 :栈区(stack):由编译器自动分配释放,存放函数的参数

2021-12-15 00:54:45 265

原创 STM32的uc/OS系统移植

目录一、使用STM32CubeMX建立hal库1.配置RCC2.配置SYS3.设置串口USART14.设置PC13与PA3为GPIO_Output5.配置时钟6.设置项目二、 准备uCOSIII源码1.下载uCOSIII源码2.将以下文件复制到刚才新建工程的MDK-ARM文件夹下三、uCOSIII源码移植1.Keil打开工程,将uCOSIII的文件添加到工程2.导入文件路径3.为bsp.c和bsp.h添加代码4.修改main.c代码5.修...

2021-12-04 00:20:09 1521

原创 基于I2C/SPI总线的温湿度采集与OLED显示

目录一、stm32通过I2C实现温湿度(AHT20)采集(一)I2C 协议简介(二)I2C的两种方式——硬件I2C和软件I2C(三)编程实现:采集温湿度数据,并通过串口发送到上位机二、stm32通过OLED 屏显显示数据(一)SPI 协议简介(二)SPI 通讯设备之间的常用连接方式(三)SPI 基本通讯过程(四)显示的学号和姓名三、stm32通过OLED屏显显示温湿度(一)导入文件(二)显示温湿度四、stm32通过OLED屏显滚动显示数据(一)OLED

2021-11-26 14:41:59 1637

原创 点阵汉字的字模读取与显示

目录一、汉字编码1.区位码2. 机内码二、点阵字库结构1.点阵字库存储2. 16*16点阵字库3. 14*14与12*12点阵字库三、汉字点阵获取1.利用区位码获取汉字2.利用汉字机内码获取汉字四、实现五、运行结果六、总结七、参考资料一、汉字编码1.区位码在国标GD2312-80中规定,所有的国标汉字及符号分配在一个94行、94列的方阵中,方阵的每一行称为一个"区”,编号为01区到94区,每一列称为一个“位”,编号为01位到94位,方阵中.

2021-11-19 01:53:05 462

原创 串口传输文件

一、概述将两台笔记本电脑,借助usb转rs232模块和杜邦线,建立起串口连接。然后用串口助手等工具软件(带文件传输功能)将一台笔记本上的一个大文件(图片、视频和压缩包软件)传输到另外一台电脑,预算文件大小、波特率和传输时间三者之间的关系,并对比实际传输时间。二、连线用两个usb转rs232模块将两台电脑连接在一起,电源接电源,地接地,其中一个TXD接...

2021-11-18 13:39:03 410

原创 STM32中断与DMA通信编程

一、STM32中断控制LED灯(一)中断概念1.中断发生:当CPU在处理某一事件A时,发生了另一事件B,请求CPU迅速去处理2.中断处理:CPU暂停当前的工作,转去处理事件B3.中断返回:当CPU将事件B处理完毕后,再回到事件A中被暂停的地方继续处理事件A(二)中断优先级(三)中断响应过程步骤1:中断源发出中断请求步骤2:判断外理器是否允许中断,以及该中断源是否被屏蔽步骤3:中断优先级排队步骤 4:处理器暂停当前程序,保护断点地址和处理器的当前状态,根据中断类型...

2021-11-06 01:47:33 742

原创 串口通信小试牛刀

一、二、STM32的USART串口通信1.USART介绍通用同步异步收发器(USART)提供了一种灵活的方法与使用工业标准NRZ异步串行数据格式的 外部设备之间进行全双工数据交换。USART利用分数波特率发生器提供宽范围的波特率选择。 它支持同步单向通信和半双工单线通信,也支持LIN(局部互连网),智能卡协议和IrDA(红外数据 组织)SIR ENDEC规范,以及调制解调器(CTS/RTS)操作。它还允许多处理器通信。 使用多缓冲器配置的DMA方式,可以实现高速数据通信。2.USART框图

2021-10-28 00:46:13 336

原创 STM32F103寄存器方式点亮LED流水灯

一、STM32F103系列芯片的地址映射和寄存器映射原理1.地址映射和寄存器映射原理存储器本身不具有地址信息,它的地址是由芯片厂商或用户分配,给存储器分配地址的过程就称为存储器映射,具体见下图。如果给存储器再分配一个地址就叫存储器重映射。在存储器 Block2 这块区域,设计的是片上外设,它们以四个字节为一个单元,共 32bit,每一个单元对应不同的功能,当我们控制这些单元时就可以驱动外设工作。我们可以找到每个单元的起始地址,然后通过 C 语言指针的操作方式来访问这些单元,...

2021-10-24 17:38:02 1358 2

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

目录一、C语言调用汇编函数1.在KILE创建项目2.、程序代码3.编译4.调试运行二、将原汇编语言 Init_1函数的类型改为 int Init_1(init) ,此函数功能修改为 传入一个整型数x,函数运行后返回整型数 x+1001.程序代码2.编译3.调试运行三、在汇编函数中调用一个 C语言写的函数1.程序代码2.编译3.调试运行四、总结五、参考资料一、C语言调用汇编函数1.在KILE创建项目添加文件Func.s与main.c.

2021-10-10 19:45:41 437

原创 Ubuntu18.04下OpenCV3.4.11的使用

目录一、OpenCV安装1.下载网址2.安装过程二、打开图片进行特效显示1.创建文件夹并进入2.程序代码3.编译test1.cpp文件4.准备图片5.输出结果三、打开视频1.虚拟机获取摄像头权限2.程序代码3.准备视频4.编译test2.cpp文件5.输出结果四、录制视频1.程序代码2.编译 test3.cpp 文件3.输出结果​五、总结六、参考资料一、OpenCV安装1.下载网址OpenCV/opencv_c.

2021-10-09 15:03:04 260

原创 gcc不是一个人在战斗

目录一、gcc的一些“战友”二、gcc常用命令1.准备工作2.简单编译3.实际编译4.多个程序文件编译5.检错6.库文件连接7.查看ELF8.反汇编ELF三、总结四、参考资料一、gcc的一些“战友”addr21line 帮助调试器在调试过程中定位对应的源代码。 ar 用于创建静态链接库。 ld 用于链接。 as 用于汇编。 ldd 查看执行文件所用到的链接库。 size 查看执行文件中各部分的大小。 readelf 查看EL

2021-10-08 19:56:12 121

原创 gcc生成静态库.a和动态库.so

目录一、实例一1.准备过程2.静态库使用3.动态库使用4.静态库与动态库比较二、实例二1.程序代码及编译2.静态库使用3.动态库使用​三、实例三1.程序代码及编译2.静态库使用3.动态库使用4.静态库与动态库的生成文件的比较四、总结五、参考资料一、实例一1.准备过程(1)创建目录mkdir test1cd test1(2)程序代码hello.h#ifndef HELLO_H#define HELL...

2021-10-08 16:48:00 88

原创 基于MDK创建纯汇编语言的STM32工程

目录一、创建项目1.新建工程2.配置环境二、代码测试1.编写代码2.仿真器设置3.编译调试三、分析生成的HEX文件1.最终生成程序的各部分的大小2.分析Hex文件第一行内容四、总结五、参考文献一、创建项目1.新建工程点击菜单栏的Project,在弹出的窗口点击选项New uVision Project,创建新的工程,如下图所示:在弹出的窗口中设置项目工程的路径,名称,完成后保存,如下图所示:2.配置环境(1)选择设备...

2021-09-30 13:04:25 221

原创 不同方式编译c程序

目录一、题目要求二、在Ubuntu系统用gcc命令编译程序1.在终端输入以下代码新建源文件2.编写程序3.gcc编译运行三、在windows系统用vc6.0编译程序1.编写主程序main1.c2.编写头文件sub1.h3.编译运行得到如下结果:四、在Ubuntu系统下用makefile方式编程程序1.创建makefile文件2.编写makefile文件3.保存后在终端输入make执行,执行后再输入./main的得到结果如下图:五、总结...

2021-09-13 17:54:58 298

空空如也

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

TA关注的人

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