STM32
文章平均质量分 76
STM32
吮指原味张
仙女堡老大护法(。・`ω´・)
展开
-
ARM到底是冯诺依曼结构还是哈佛结构
参考:ARM到底是冯诺依曼结构还是哈佛结构_朱有鹏老师1. 问题嵌入式的学习中ARM处理器是主题,这些年产业界除了PC和服务器市场外,以手机、pad、家电控制等为代表的嵌入式领域都被ARM几乎垄断了。所以学习嵌入式处理器,其实等同于学习ARM。ARM到底是冯诺依曼结构还是哈佛结构呢?这个问题困惑了很多人,包括我。我很明确的记得我在一本书上看到过:ARM是哈佛结构的。所以我一直记得这个结论,也没深思,在讲课时直接就把这个结论讲出来了。直到有同学看了课程产生疑问找我,我才去深入思考了这个问题,这其实转载 2021-06-24 15:13:13 · 4812 阅读 · 0 评论 -
已解决:Keil MDK5 使用St-Link出现“st-link usb communication error“
参考资料:Keil "st-link usb communication error"解决方法Keil "st-link usb communication error"解决方法1. 问题在Option for Target的Debug中,点击Settings,在弹出的界面内会显示"st-link usb communication error"报错,致使无法对单片机进行debug。2. 解决方案打开keil安装目录下的STLink路径:如D:\Keil_v5\ARM\STLink。运行原创 2021-06-06 10:06:51 · 11019 阅读 · 21 评论 -
STM32F4XX的GPIO的寄存器配置
GPIO相关配置寄存器STM32F407ZGT6一共有7组IO口,每组IO口有16个IO,一共16X7=112个IO,外加2个PH0和PH1,一共114个IO口。一个端口模式寄存器(GPIOx_MODER)一个端口输出类型寄存器(GPIOx_OTYPER)一个端口输出速度寄存器(GPIOx_OSPEEDR)一个端口上拉下拉寄存器(GPIOx_PUPDR)一个端口输入数据寄存器(GPIOx_IDR)一个端口输出数据寄存器(GPIOx_ODR)一个端口置位/复位寄存器(GPIOx_BSRR)原创 2020-12-07 17:01:28 · 1048 阅读 · 0 评论 -
Keil错误:last line of file ends without a newline原因及解决方法
1. 原因由于在main函数的“}”后,没有加回车。2. 解决方案只要在main函数的“}”后加回车键,此警告信息即可消除。原创 2020-12-07 00:51:33 · 7138 阅读 · 0 评论 -
在MDK5中新建STM32F4XX工程模板(基于固件库)
0. 库函数和寄存器的区别本质上是一样的。可以在库函数模板里面,直接操作寄存器,因为官方库相关头文件有寄存器定义。但是不能在寄存器模板调用库函数,因为没有引入库函数相关定义。了解寄存器基本原理的目的是为了让我们对STM32相关知识有比较深入的理解,这样在开发过程中方可得心应手,游刃有余。底层代码配置出了问题需要调试的话,必须对寄存器有一定的了解才能找到问题,因为调试代码,底层只能查看寄存器相关配置。1. 所用到的工具开发环境:MDK5固件库版本:V1.4(F4专用)固件库的下载地址:htt原创 2020-12-06 17:08:31 · 2996 阅读 · 3 评论 -
使用J-Link下载程序时出现the firmware of the connected J-Link does not support the following memory access
1. 问题电脑能够识别J-Link。但是,Load程序失败。并依次弹出报错信息。2. 问题根源应该是keil的版本新,而J-Link的版本旧导致的。3. 解决方案打开J-Link驱动的安装目录,找到JLinkARM.dll文件,复制此文件。打开keil5的安装目录,找到Segger文件,将J-Link驱动安装目录中的JLinkARM.dll文件粘贴并覆盖到这里。然后重新打开工程文件,下载程序,程序就能成功下载了。...原创 2020-12-06 11:18:08 · 7933 阅读 · 0 评论 -
基于STM32的CAN转USB模块的PCB设计
1. 项目的文件结构设计PCB项目时,文件结构主要分为四个模块第一个文件夹用来存放设计PCB时用到芯片的数据手册。第二个文件夹用来存放设计PCB时用到的参考设计,包括所用芯片最小系统电路图,各种规范手册,别人设计的PCB等。第三个文件夹用来存放原理图库和封装库。第四个文件夹用来存放AD的project文件,最好在每做一些修改时,就保存为一个版本。2. 原理图设计首先进行原理图设计。在此之前提一下,芯片的原理图库可以从立创商城下载,使用立创EDA的导出功能就能完成原理图库的下载。2.1原创 2020-11-25 17:26:57 · 3913 阅读 · 8 评论 -
STM32中使用J-Link仿真器选择JTAG模式和SWD模式的区别
1. J-LinkJ-Link是SEGGER公司为支持仿真ARM内核芯片推出的JTAG/SWD仿真器。配合IAR EWAR,ADS,KEIL,WINARM,RealView等集成开发环境支持所有ARM7/ARM9/ARM11,Cortex M0/M1/M3/M4, Cortex A5/A8/A9等内核芯片的仿真,与IAR,Keil等编译环境无缝连接,操作方便、连接方便、简单易学,是学习开发ARM最好最实用的开发工具。ARM芯片有两种调试模式,一种是JTAG,一种是SWD,二者在管脚上有复用。2. JT原创 2020-11-21 21:31:15 · 6418 阅读 · 0 评论 -
STM32F1XX的GPIO的寄存器配置
GPIO相关配置寄存器STM32F103ZET6一共有7组IO口,每组IO口有16个IO,每组IO口包含7个寄存器,一共可以控制一组GPIO的16个IO口。GPIOx_CRL :端口配置低寄存器GPIOx_CRH:端口配置高寄存器GPIOx_IDR:端口输入寄存器GPIOx_ODR:端口输出寄存器GPIOx_BSRR:端口位设置/清除寄存器GPIOx_BRR :端口位清除寄存器GPIOx_LCKR:端口配置锁存寄存器每个I/O端口位可以自由编程,然而I/O端口寄存器必须按32位字被访问原创 2020-08-14 13:53:24 · 1189 阅读 · 0 评论 -
STM32F1XX的GPIO的8种工作模式以及GPIO的寄存器简介
基础知识STM32F103ZET6一共有7组IO口,即GPIOA,GPIOB,GPIOC到GPIOG。每组IO口有16个IO,所以一共有112个IO。STM32的大部分引脚除了当GPIO使用外,还可以复用为外设功能引脚(比如串口)。下图为I/O端口位的基本结构最近在看数据手册的时候,发现在Cortex-M3里,对于GPIO的配置种类有8种之多:(1)GPIO_Mode_AIN 模拟输入(2)GPIO_Mode_IN_FLOATING 浮空输入(3)GPIO_Mode_IPD 下拉输入(4)原创 2020-08-13 17:40:13 · 11303 阅读 · 16 评论 -
对于条件编译 #ifndef __LED_H的理解
一、下划线“__”属于编程风格的内容,对程序没有影响。不用下划线也可以,用几个下划线也由个人习惯。二、其实本质是一个宏名。由此我们可以防止发生重复定义或声明。假设你的头文件名为led.h,根据习惯,我们声明一个宏__LED_H对应这个头文件,在头文件中开始的地方和结尾的地方加上对__LED_H的声明和判断,头文件led.h如下:#ifndef __LED_H#define __LED_H……(头文件内容) #endif 意思就是,如果led.h第一次被引用,那么__LED_H没有原创 2020-08-13 11:19:51 · 4867 阅读 · 0 评论 -
有关STM32的基础知识(以STM32F4系列为例)
1. STM32简介STM32是“意法半导体”生产的基于ARM内核的32位MCU系列内核为ARM公司为要求高性能、低成本、低功耗的嵌入式应用专门设计的Cortex-M内核。标准的ARM架构具有超前的体系结构简单易用,自由,低风险2. STM32和ARM的关系3. Cortex内核简介4. Cortex-M4内核简介4.1 先进的Cortex-M4内核4.2 更低的功耗4.3 更高级的外设5. STM32家族6. STM32命名规则7.原创 2020-08-06 00:06:35 · 2755 阅读 · 0 评论 -
Multisim14.0安装教程
1. 下载地址链接:https://pan.baidu.com/s/1j9PUf1k-p7uH4vI7rYXJTQ提取码:9j8a2. 安装步骤解压。打开“Multisim14.0”。鼠标右击“NI_Circuit_Design_Suite_14_0.exe”,选择“以管理员身份运行”。点击确定。选择文件的解压路径,最好不解压在C盘(安装完成删掉即可),然后点击“Unzip”。解压完成后,点击确定。点击“Install NI Circuit Design Suite 14.0”原创 2020-05-30 14:39:45 · 73683 阅读 · 27 评论 -
AltiumDesigner16安装教程
1. 下载链接链接:https://pan.baidu.com/s/1tBWlW7XeshD2ccC4vkI8bg提取码:sap22. 安装过程在解压目录中找到“Licenses”文件夹,并且打开,右击里面的“NB201601.alf”文件,点击“复制”。粘贴到软件安装的文件夹目录下。在开始菜单栏中找到“Altium Designer”软件,然后打开点击“Add standalone license file”, 在软件的安装目录下找到“NB201601.alf”文件,选择文件,点击“打开”。原创 2020-05-26 21:57:52 · 7731 阅读 · 0 评论 -
STM32F407-MDK5.27安装教程
1. 百度网盘地址链接:https://pan.baidu.com/s/12hwBBsnUNDyPvLpQCjvZLA提取码:t6rb2. 安装教程点击Next勾选I agree to all the term of the preceding License Agreement。点击Next。分别点击Core与Pack后面的Browse更改安装路径建议安装在除C盘以外的其它磁盘可以在D盘或者其它盘创建一个MDK文件夹。点击Next。任意填写用户信息。点击Next。安装。点原创 2020-05-25 22:24:16 · 2736 阅读 · 0 评论