什么是储存器映射?什么是寄存器映射?芯片辨别  1怎么看芯片丝印缺口正方向()正看丝印左边第一个脚为一脚写程序最终是操作寄存器,这里参考零死角玩转 STM32 第六章什么是寄存器章节外设:GPIO USART  12C SPI 等   Cortex-M3内核是主控器soc厂商 苹果 三星 ST在<STM32 中文参考手册>    存储器            
                
         
            
            
            
            目的:对运行于STM32的嵌入式代码程序进行加密编译环境:IAR Embedded System for ARM5.5一.STM32Flash组织STM32的Flash包括主存储器(HD版本,512KB)+信息块。信息块包括2KB的系统存储器(用于系统自举启动代码)和16字节的选项字节(8个字节数据+8个字节数据的反码)。 二、STM32读保护STM32读保护是通过设置RDP选            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-27 23:32:06
                            
                                0阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            IAP程序: 
  主要是设置 
 用户程序的起始地址 APPLICATION_ADDRESS,如0x08004000,通过外设把用户代码写入FLASH的用户区。满足条件后,跳转至用户区起始地址。 
 
  解释一下跳转部分代码: 
 
  /* Test if user code is programmed starting from address "APPLICATION_ADDRESS"            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-22 14:31:00
                            
                                245阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            在STM32中执行中断主要分三部分:1.配置NVIC_Config()函数 2.配置EXTI_Config()函数 3.编写中断服务函数 (注:本文章所用代码为中断按键代码,实现了按键进入中断从而控制LED亮灭)配置NVIC_Config()函数NVIC 是嵌套向量中断控制器,控制着整个芯片中断相关的功能,它跟内核紧密耦合,是内核里面的一个外设。NVIC_Config()函数代码如下:static            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-09-24 14:31:27
                            
                                241阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            文章排版不是很好,但是写的还是很有道理的。关于堆和栈已经是程序员的一个月经话题,大部分有是基于os层来聊的。  那么,在赤裸裸的单片机下的堆和栈是什么样的分布呢?以下是网摘: 刚接手STM32时,你只编写一个 int main()
{
    while(1);
} BUILD://Program Size: Code=340 RO-data=252 RW-data=0 ZI-data=1632&            
                
         
            
            
            
            STM32CubeMX 真的不要太好用由于工作内容的变动,我已经很久没有正经的玩过单片机了,近期又要用它做个小玩意了,还是选 stm32 吧,外设库开发不要太方便,哈哈哈先去 stm32 社区逛了逛,发现了一个新字眼 STM32CubeMX,简单看了下,大概明白是个 ST 公司新推出的一个配置工具,直接由图形界面简单配置下,生成初始化代码,并对外设做了进一步的抽象,让开发人员更只专注应用的开发,挺            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-19 19:44:29
                            
                                461阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
                今天突然来了兴致,想要把所学到的整理一下写成博客,计划一周至少一篇,想让自己养成总结知识的好习惯,也想要结识一些技术界的大牛。至于内容,想到什么写什么,今天是第一篇。因为要参加电赛,老师推荐stm32作为控制器,所以打算好好学习一下,而上周得知了ST公司的一款GUI ide,所以打算尝试一下。    此外,事先说明,因为本人经验有限,所以博客仅供参考            
                
         
            
            
            
              这个我实在网上找了好久找了一个可用的程序,大部分,你搜索编码器程序出来的都是电机的相关程序,而我要的是旋钮式的,PEC11-4020F-S0018型号的编码器。  这个代码写得挺完善的,就是没有写主函数,因此调用问题上,还是费了好些神才弄出来,关键它里面的一些定义,我很久没有些程序,都不清楚了,如:typedef struct tagspin
{
        RotateStatus            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-06 15:01:56
                            
                                70阅读
                            
                                                                             
                 
                
                             
         
            
            
            
              文章目录一、串口通信简介1.1 百度百科解释1.2 通信接口1.3 串口通信分类1.4 STM32串行通信的通信方式二、STM32的串口通信2.1 功能引脚2.2 数据寄存器2.3 控制器2.4 小数波特率生成三、总结  一、串口通信简介 1.1 百度百科解释来源百度百科 串行接口是一种可以将接收来自CPU的并行数据字符转换为连续的串行数据流发送出去,同时可将接收的串行数据流转换为并            
                
         
            
            
            
             本例程采用的芯片是STM32F103RET6,其中CAN通信部分硬件电路连接如下图所示,CAN_P和CAN_N分别连接到芯片的PA11和PA12引脚上,PCB布线时,尽量走差分等长线。 STM32CubeMX配置如下: 时钟及下载方式根据个人的实际情况进行选择。CAN参数配置如下:模式选择回环模式,并打开RX0中断(接收中断)。时钟配置如下: 主要配置就这            
                
         
            
            
            
            一、联网应用的发展趋势随着互联网技术的普及和物联网应用的兴起,各种设备和系统开始向互联网靠拢,实现互联互通。在这样的背景下,嵌入式系统的联网需求变得愈发迫切。传统的嵌入式系统往往只需实现单机功能,与外界通信的方式也大多是基于串口通信或者局域网通信,而现在越来越多的嵌入式系统需要实现与互联网的通信,实现远程监控、数据采集、远程升级等功能。因此,对于嵌入式开发者来说,如何在STM32等常见的嵌入式开发            
                
         
            
            
            
            所用工具:1、芯片:STM32F407ZET6/ STM32F103ZET62、STM32CubeMx软件3、IDE:MDK-Keil软件4、STM32F1xx/STM32F4xxHAL库 知识概括:通过本文您将学到:PWM工作原理STM32CubeMX创建PWM例程HAL库定时器PWM函数库PWM创建呼吸灯什么是PWM    脉冲宽度调制(PWM            
                
         
            
            
            
            STM32CubeMX 窗口及工具介绍1 前言1.1 STM32CubeMX1.2 准备工作2 STM32CubeMX 窗口介绍3 STM32PackCreator 工具介绍4 结束附录 相关教程 1 前言1.1 STM32CubeMX   图1 STM32CubeMX(点击图片进入 ST 官网 STM32CubeMX 介绍页面) 
 1.2 准备工作    系统版本: Windows 10 专            
                
         
            
            
            
            工欲善其事必先利其器,作为stm32开发程序员来说,一般情况都会使用keil或者IAR来进行编辑编译调试单片机设备,这两款IDE界面及代码智能补全不是很友好。作为宇宙最强IDE,visual studio可以通过安装visual gdb来调试嵌入式设备,可以通过安装蕃茄助手来实现代码智能提示。st公司也推出了官方的IDE:stm32cubemxIDE。集成了TrueSTUDIO            
                
         
            
            
            
            转载的STM32 ADC多通道采集 程序代码存在部分错误,但思路可用 另外这个函数库应该是V2.0或V1.8的 可作为学习参考用  并推荐网址: (库函数配置说明讲得详细)STM32 ADC多通道转换  描述:用ADC连续采集11路模拟信号,并由DMA传输到内存。ADC配置为扫描并且连续转换模式,ADC的时钟配置为12MHZ。在每次转换结束后,由DMA循环将转换的数据传输到内存中。ADC可以连续采            
                
         
            
            
            
            文章目录1. 所用硬件2. 生成工程2.1. 创建工程选择主控2.2. 系统配置2.3. 配置工程目录2.4. 配置用到的外设3. ADC配置(四选一)3.1. 单通道轮询3.2. 单通道中断3.3. 多通道轮询3.4. DMA模式 1. 所用硬件正点原子Mini板,主控 STM32F103RCT6.用到的外设:串口1(PA9、PA10)任意几个GPIO口(这里用PA1、PA2、PA3,对应AD            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-08-24 19:18:47
                            
                                367阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
             注意:MDK系列安装步骤差别不大,方法相通,本文以MDK5.27安装为例。MDK527软件下载a. 云盘下载:链接: https://pan.baidu.com/s/1Fb5tJzc7FzeXt_w6um38_w 提取码: s1b5b. 官网下载(建议下载最新版本):http://www2.keil.com/mdk5 MDK527安装教程双击打开MDK527,点击Next &            
                
         
            
            
            
            困扰我一天多时间的问题,RTC时间变慢!这个你肯定会说晶振有问题,起振电容不匹配等等!额其实我也这么认为!应用场景如下:低功耗项目需求,stm32L412CBUx芯片每次执行完动作后进入STOP模式,然后通过RTC闹钟唤醒再进行动作,这个顺序周而复始。但是每次动作记录下的数据时间却发现怪怪的,时间和手机标准时间慢了好多,运行20分钟慢了将近8分钟左右,那是多么恐怖!于是将其每次打印出来,果不出所料            
                
         
            
            
            
            在做最近的项目时,我发现一个这样的问题:对STM32中的IO进行配置(以对B系列下的PB10、PB13配置成输出模式为例),即使在配置参数一样的情况下,这两个IO输出能力还是有很大的差别。 情况一:如图焊接电路,两个IO口配置的是同样推挽模式,编写程序使得LED灯进行闪烁,我当时碰到的情况就是一个LED灯能够闪烁,另一个LED灯死活不闪。后来换成三极管驱动LED灯的方式,才解决这样的问题。由此可以            
                
         
            
            
            
            文章目录摘要一、简介1.GPIO简介2.LED3.按键4.蜂鸣器二、硬件电路设计1.LED电路2.按键电路2.蜂鸣器电路三、软件设计1.CubeMX配置2.CubeIDE代码3.结果显示四、总结五、附录 摘要本篇文章用STM32CubeMX和STM32CubeIDE软件编程,主控芯片为STM32F407ZGT6驱动LED、按键和蜂鸣器,通过按键来控制蜂鸣器和LED灯的状态。这三个外设都较为基础和