嵌入式系统开发作业
文章平均质量分 82
被通信杀死的咸鱼一条
这个作者很懒,什么都没留下…
展开
-
STM32的PWM和DAC练习
STM32的PWM和DAC练习一、所需软件安装二、操作2.1 PWM2.2 DAC一、所需软件安装1、UltraEdit右键运行uedi32.exet即可使用,无需安装步骤。二、操作2.1 PWM1、打开野火配套的试验例程野火指南者103\A盘(资料盘)\1-程序源码_教程文档\1-[野火]《STM32库开发实战指南》(标准库源码)【优先学习】\32-TIM—通用定时器\2-TIM—通用定时器-4路PWM输出2、编译后烧录进stm32板中3、进行仿真配置4、点击全速运行,随后再原创 2021-01-03 16:52:04 · 617 阅读 · 1 评论 -
STM汇编程序设计
STM汇编程序设计一、STM32的三种Boot模式1.1 三种Boot模式简介1.2 三种Boot模式的差别1.3 实验验证二、基于MDK创建纯汇编语言的STM32工程2.1 动态调试汇编语言程序变量2.2 Hex文件观察三、汇编程序完成LED灯闪烁3.1 程序要求3.2 操作过程3.3 结果观察四、参考资料一、STM32的三种Boot模式1.1 三种Boot模式简介Main Flash memory(用户闪存)是STM32内置的Flash,一般我们使用JTAG或者SWD模式下载程序时,就是下载原创 2020-12-31 00:44:15 · 411 阅读 · 0 评论 -
STM32最小系统PCB图的绘制
STM32最小系统PCB图一、基础准备二、绘制PCB图三、生成专属logo参考资料一、基础准备1、之前实验中绘制好的stm32最小系统原理图2、生成专属logo所用的免费的PCB Logo Creator插件工具下载二、绘制PCB图2.1 在原理图绘制完成的基础上新建PCB工程三、生成专属logo本人logo原图如下:保存为单色位图:参考资料1、免费的PCB Logo Creator插件工具下载2、Altium Designer 速成(哔哩哔哩链接)...原创 2020-12-26 19:23:12 · 880 阅读 · 0 评论 -
基于I2C硬件协议的AHT20温湿度数据采集
typedef enum { I2C_ADR_W = 0x38, //sensor I2C address + write bit I2C_ADR_R = 0x39 //sensor I2C address + read bit} SHT2xI2cHeader;原创 2020-12-22 21:40:33 · 1581 阅读 · 1 评论 -
通过SPI总线实现OLED屏幕显示
通过SPI总线实现OLED屏幕显示一、任务要求二、实验过程三、结果展示四、参考资料一、任务要求练习通过SPI总线实现OLED屏幕显示要求至少实现以下功能之一:1、显示自己的学号和姓名; 2、显示AHT20的温度和湿度;3、上下或左右的滑动显示长字符,比如“Hello,欢迎来到重庆交通大学物联网205实训室!”二、实验过程2.1 在官网下载OLED官方提供的工程文件并打开所需工程2.2 根据提示连接开发板和OLED模块2.3 通过PCtoLCD软件生成名字“毛天慧”的字模2.4 找到原创 2020-12-21 23:04:40 · 2630 阅读 · 2 评论 -
Arduino IDE中进行STM32串口通信的开发
Arduino IDE中进行STM32串口通信的开发一、软件安装及所需库安装二、操作步骤三、结果四、参考资料一、软件安装及所需库安装1.1 软件安装官网下载连接安装过程没有什么需要注意的,只需一直点击下一步即可,中途会弹出三个需要安装的框,点击同意即可。1.2 stm32库安装在线安装离线安装二、操作步骤2.1 开发板选择2.2 根据芯片配置参数三、结果四、参考资料...原创 2020-12-13 18:33:59 · 343 阅读 · 0 评论 -
stduino IDE试用
stduino IDE试用一、简介二、使用三、与Arduino IDE对比参考资料一、简介Stduino IDE是一款面向32位处理器快速入门学习的集成开发平台,目前已经支持Arduino_Core_STM32框架,集聚快捷、高效、免费、开源、易得于一身,软件还集成了GDB调试功能。注意:stduino的安装不需要经历复杂的安装过程,解压缩后直接双击Stduino.exe即可运行。二、使用2.1 界面2.2 开发环境配置2.3 代码编写:与Arduino IDE串口通信的代码基本一致i原创 2020-12-13 17:44:25 · 1284 阅读 · 4 评论 -
基于标准库函数与基于HAL库函数的stm32编程方式的差异
基于标准库函数与基于HAL库函数的stm32编程方式的差异一、标准库二、HAL库参考资料一、标准库STM32有非常多的寄存器,而导致了开发困难,所以为此ST公司就为每款芯片都编写了一份库文件,也就是工程文件里stm32F1xx…之类的。在这些 .c .h文件中,包括一些常用量的宏定义,把一些外设也通过结构体变量封装起来,如GPIO口时钟等。所以我们只需要配置结构体变量成员就可以修改外设的配置寄存器,从而选择不同的功能。也是目前最多人使用的方式,也是学习STM32接触最多的一种开发方式,我也就不多阐述了。原创 2020-12-12 22:19:10 · 507 阅读 · 0 评论 -
ubuntu系统中编程重温C语言程序里全局变量、局部变量、堆、栈
重温C语言程序里全局变量、局部变量、堆、栈参考资料参考资料1、C/C++程序内存的各种变量存储区域和各个区域详解2、C语言中,局部变量、全局变量、静态变量、堆、栈的内存地址3、C语言中关键字volatile追根问底...原创 2020-12-03 23:20:35 · 121 阅读 · 0 评论 -
stm32系统进行编程验证变量地址空间
这里写目录标题参考资料参考资料1、【IoT】STM32 内存分配详解2、基于STM32分析栈、堆、全局区、常量区、代码区、RAM、ROM3、STM32 KEIL下的堆栈设置原创 2020-12-03 22:44:14 · 360 阅读 · 0 评论 -
STM32的USART串口通信
这里写目录标题一、二、STM32的USART窗口通讯程序2.1 要求2.2 过程参考资料一、二、STM32的USART窗口通讯程序2.1 要求1)设置波特率为115200,1位停止位,无校验位。2)STM32系统给上位机(win10)连续发送“hello windows!”,上位机接收程序可以使用“串口调试助手“,也可自己编程。3)当上位机给stm32发送“Stop,stm32”后,stm32停止发送。2.2 过程参考资料1、STM32串口通信USART学习笔记2、C/C++程序内存的各原创 2020-12-03 22:19:01 · 786 阅读 · 0 评论 -
STM32下完成基于FreeTROS的多程序任务
STM32下完成基于FreeTROS的多程序任务一、简介二、创建多任务三、烧录及运行四、运行结果五、参考资料一、简介FreeRTOS是一个迷你的实时操作系统内核。作为一个轻量级的操作系统,功能包括:任务管理、时间管理、信号量、消息队列、内存管理、记录功能、软件定时器、协程等,可基本满足较小系统的需要。由于RTOS需占用一定的系统资源(尤其是RAM资源),只有μC/OS-II、embOS、salvo、FreeRTOS等少数实时操作系统能在小RAM单片机上运行。相对μC/OS-II、embOS等商业操作系原创 2020-12-02 23:12:44 · 301 阅读 · 0 评论 -
基于寄存器与基于固件库的stm32差异
一、简介STM32标准外设库之前的版本也称固件函数库或简称固件库,是一个固件函数包,它由程序、数据结构和宏组成,包括了微控制器所有外设的性能特征。寄存器是中央处理器内的组成部分。寄存器是有限存贮容量的高速存贮部件,它们可用来暂存指令、数据和地址。二、对比*注:上图来源于《零死角玩转STM32—F103指南者》,详情参加参考资料部分。*三、总结使用固件库,目前比较多的例程是使用固件库编写的。官方的例子也都采用固件库方式。特点就是简单,易于理解,资料多。如果你没有CortexM系列内核的开发基原创 2020-12-02 14:22:24 · 1099 阅读 · 0 评论 -
Altium Designer绘制stm32原理图及PCB板
这里写目录标题一级目录二级目录参考资料一级目录二级目录参考资料Altium Designer实战教程 - 从零开始画一个stm32最小系统(原创)Altium Designer 1小时(貌似不够)速成原创 2020-11-08 03:31:40 · 3593 阅读 · 2 评论 -
利用Proteus和keil5仿真运行stm32程序
Proteus仿真运行stm32程序一、创建工程参考资料一、创建工程1.1点击创建新工程,输入工程名、安装路径。1.2 选择从选中的模板中创建原理图(DEFAULT)、选择不创建PCB布版设计。1.3.选择创建固件项目,其中:系列选择Cortex-M3,Controller选择STM32F103R6,点击下一步,然后创建成功。参考资料Proteus仿真STM32流水灯实验例程、详细步骤。实验keil和proteus所用文件工程百度网盘链接 提取码:0f7c...原创 2020-11-07 22:09:46 · 10027 阅读 · 1 评论 -
Ubuntu中可视化的代码跟踪调试
Ununtu中可视化的代码跟踪调试一、 常用软件二、安装三、汉化四、 安装插件五、配置调试和编译文件,launch.json和task.json六、编译七、单步调试一、 常用软件1、可视化前端 Kdbg。参考网址:UBUNTU20.04安装KDBG3.0.12、可视化前端 Insight。有点older,不推荐。参考网址:Insight的使用方法(gdb的最优前端)3、基于跨平台多类型代码编辑器VScode。 强烈推荐。参考网址:在ubuntu18.04版本安装vscode在ubuntu中原创 2020-11-07 15:57:14 · 635 阅读 · 0 评论 -
Ubuntu下OpenCV的安装及使用
Ubuntu下OpenCV的安装及使用一、OpenCV的安装二、OpenCV的使用参考资料一、OpenCV的安装二、OpenCV的使用参考资料原创 2020-10-31 00:25:45 · 1901 阅读 · 0 评论 -
Ubuntu下的GDB调试
Ubuntu下的GDB调试一、GDB简介二、GDB命令三、GDB调试操作4、GDB段错误调试5、参考资料一、GDB简介GDB : GNU Debugger,是GNU工程为GNU操作系统开发的 调试器,但它的使用不局限于GNU操作系统, GDB可以运行 在UNIX、Linux甚至Microsoft Windows。GDB可以调试C、C++、Objective-C、Pascal、Ada等语言编 写的程序;被调试的程序可以跟GDB运行于同一台电脑,也可 运行于不同电脑。二、GDB命令• file 装入原创 2020-10-29 20:38:02 · 326 阅读 · 0 评论 -
Linux中gcc及库的知识及操作
Ubuntu下gcc库操作一、在 Linux 中创建静态库和动态库1、编辑生成程序 hello.h、hello.c 和 main.c2、将 hello.c 编译成.o 文件3、由.o 文件创建静态库。4、在程序中使用静态库5、由.o 文件创建动态库文件。6、在程序中使用动态库二、Linux静态库.a与.so库文件的生成与使用1、先创建一个作业目录,保存本次练习的文件2、然后用 vim文本编辑器编辑生成所需要的四个文件3、静态库.a 文件的生成与使用4、共享库.so 文件的生成与使用三、Linux gcc常用原创 2020-10-16 22:11:07 · 686 阅读 · 0 评论 -
STM32的简单程序的编译及利用Proteus 的51程序设计和仿真
ARM开发环境入门这里写目录标题ARM开发环境入门一级目录二级目录三级目录一级目录二级目录三级目录原创 2020-10-08 10:53:04 · 413 阅读 · 0 评论 -
Ubuntu系统下C语言程序练习
嵌入式系统开发作业一 在Ubuntu系统下用C语言编写一个简单的输出 hello word的程序,并编译有、运行之;请编写一个主程序文件 main1.c 和一个子程序文件 sub1.c。要求:子程序sub1.c 包含一个算术运算函数 float x2x(int a,int b),此函数功能为对两个输入整型参数做某个运算,将结果做浮点数返回;主程序main1.c,定义并赋值两整型变量,然后调用函数 x2x,将x2x的返回结果printf出来。1) 请在ubuntu系统用gcc 命令行方式原创 2020-09-26 01:37:18 · 1219 阅读 · 2 评论