首页 > 其他分享 >STM32嵌入式(二)

STM32嵌入式(二)

时间:2024-08-29 21:24:44浏览次数:14  
标签:高电平 原理图 总线 嵌入式 STM32 指令 寄存器 输入

第一节:MDK软件基本用法

大部分标签都有调试模式和普通模式的区别。

1.file:

2.edit:撤销,恢复,剪切,复制...

3.view:各种视图的显示和隐藏

4.project:项目管理相关

文件名带有*,表示文件已经修改但是没有保存。

第二节:STM32的固件库

打开参考手册:@STM32RBT6开发板提前下载包\DataSheet\STM32\STM32F10x中文参考手册.pdf

对设备功能的配置,底层就是对寄存器的配置。

8为单片机,全部都是使用寄存器进行配置,对开发人员要求比较高。

现在使用固件库,函数里面调用的寄存器进行配置。

官方固件库:

CMSIS(cortex microcontroller software interface standard),软件标准。

1.st公司LOGO文件

2.LIbraries :函数库文件。

3.project:示例工程和模板。

4.utilites:

5.stm32f10x_stdperiph_lib_um:帮助手册

第三节:内核结构与程序设计方法

经典系列:

ARM7:1994,32位处理器,三级流水线,冯诺依曼结构,

ARM9:1998年,哈佛结构,五级流水线,高性能低功耗,主要用于嵌入式产品。

ARM10:2000年,综合处理器,处理JAVA应用系统,6级流水线,主频325M,哈佛结构。

ARM11:2004年,新一代RISC精简指令集处理器,消费类电子。

CORTEX系列:

R:实时处理器,

A:应用处理器。手机芯片,处理数据量大,性能高。

M:微控制处理器,消费电子,性能要求中等。

架构、内核、MCU三者是什么关系?

盖房子:房子建筑风格,就是架构。加一个卫生间,浴室,游戏区,相当于内核,根据内核和设计风格,图纸,把房子盖起来,你得到房子就是MCU。

M3特点:

1.采用哈佛结构,32位指令集,和数据总线,寻址空间4G,存储器和寄存器都是32位。

哈佛结构:指令和数据分开存储,

冯诺依曼结构:指令和数据存储在一起。

总线:通用通讯的干线;

          地址总线:处理数据之前先找地址,内核通过地址总线寻找数据的位置。

          数据总线:读写数据。

          控制总线:进行指令收发工作。

4G寻址空间:2^32刚好是4G。

指令处理方式:顺序方式、重叠方式、流水线

顺序方式:从前往后依次执行。

重叠结构:执行某条指令的时候,同时执行其他某个指令。

流水线结构:

指令集:精简指令集RSIC  ,复杂指令集CISC

精简指令集:减少指令的总数,简化指令的功能,降低硬件的设计难度,是的指令能够单周期运行。单片机。

复杂指令集:增强原有的指令的功能,使用负责的新指令代替原先子程序的功能。x64 。

系统结构:

ICODE总线:总线传输指令的。代码是放在闪存flash,内核要读取指令,必须通过ICODE总线。

DCODE总线:数据总线,数据常量,变量存储到SRAM区域,数据可以通过改宗宪进行访问。

system总线:系统总线主要用于访问外设的寄存器,完成外设的寄存器编译。

总线矩阵:协调内核系统总线和DMA控制新总线之间访问仲裁。

DMA总线:大批量传送数据。

内部闪存FLASH:存储编写号的代码。

内部SRAM:相当内存·1条。

FSMC:(灵活的静态存储控制器Flexible static memory control),扩展内存。

AHB到APB桥:链接所有的外部设备。

      APB1:USB、DAC,PWR,IIC,TIM,USART,SPI,IWDG,CAN

     APB2:ADC1/2/3,GPIOA/B/C/D/E/F/G

第四节:STM32程序设计方法:

1.粗看硬件,确认有没有硬件模块去支持你的开发需求。《点亮LED》

2.细看原理图,路径;@@STM32RBT6开发板提前下载包\开发板原理图\Periph外围器件原理图和MCU最小系统原理图

外围器件原理图:找到模块的实现原理,管脚定义。然后打开最小系统原理图,找链接的管脚。

3.分析控制原理。得知,高电平,LED点亮,低电平,熄灭。

4.了解GPIO的控制模式配置?

GPIO配置:

1.一共7组。每一组有16个I/O。根据芯片实际情况使用I/O。

2.I/O(gernral purpose input/output port)通用输入输出端口。输入或输出数据。

模式8种:

输入:输入浮空(模拟信号的读取,读取高低电平不确定的信号)、输入上拉(默认管脚时高电平的场合)、输入下拉、模拟输入(模拟信号的读取)

输出:开漏输出(电平转换和线与功能)、推挽式输出(大功率驱动)、推挽式复用功能、开漏复用功能

结构框图:

数据输出:

VDD:正电源(+5V +3.3V)

VSS:负电源(0V  -2V)

保护二极管:主要用于面对高电压和过电流的时候,保护芯片。如果电压过高,高电压会通过上面的二极管,流向VDD,如果低电压,通过下面二极管,VSS流向外部。

P-Mos:当给与高电平是,PMOS导通,VDD通过MOS将高电平信号输出到IO口。NMOS导通时,I/O输出低电平。

输出数据寄存器:控制IO口电平状态,写1,高电平,写0低电平。同时BSRR端口位设置/清零寄存器可以通过影响ODR(输出数据寄存器),来简介设置IO口电平状态。

数据输入:

模拟输入:上拉和下拉电阻,不接入电路,此时信号经过内部导线,直接连到内部模拟信号外设中使用。

施密特触发器:整定波形,变成规范的数字信号。

输入数据寄存器:用于存储对应IO口的状态,高电平为1,低电平为0;

输入内部外设使用:

使用GPIO要提前开启时钟:

输入数据寄存器(GPIOx_IDR)在每个APB2时钟周期捕捉I/O引脚上的数据。

标签:高电平,原理图,总线,嵌入式,STM32,指令,寄存器,输入
From: https://blog.csdn.net/weixin_67660500/article/details/141688863

相关文章

  • 基于STM32F407ZGT6用BH1750在OLED显示屏上显示光照数据,根据光照强度控制小灯亮灭(路灯
    占空比:高电平占整个电平周期的持续时长,从而控制小灯的亮度,小灯亮度的控制需用定时器的输出比较功能。PWM部分可以参考这篇文章PWM——基于STM32F407ZGT6开发板-CSDN博客此外我们还需要了解IIC的工作原理1.pwm.c   #include"public.h"/*pwm控制led实现呼吸灯1.......
  • stm32 EXTI外部中断(标准库)(旋转编码器计次&对射式红外传感器计次)
    1.理论中断系统1.中断中断:在主程序运行过程中,出现了特定的中断触发条件(中断源),使得CPU暂停当前正在运行的程序,转而去处理中断程序,处理完成后又返回原来被暂停的位置继续运行2.中断优先级中断优先级:当有多个中断源同时申请中断时,CPU会根据中断源的轻重缓急进行裁决,优先响应......
  • 嵌入式面试题
    1、参数传递有几种方式             ——————————————————————————————————————————————————————————————————————C语言的malloc和C++中的new有什么区别?使用......
  • 关于关于STM32F103芯片RTC模块的一些注意事项
    1、首先是晶振的问题,只有外部低速晶振LSE支持VBAT供电时持续运行,LSI或者HSE均不行,所以若要求设备断电后,RTC时钟可以继续运行,一定要使用LSE晶振。2、关于LSE晶振的干扰问题,本次调试设备的过程中发现,LSE虽然正常起振,RTC也正常走时,但刚开机的时候会走的比较慢,之后逐渐稳定,通过抓取LS......
  • 我在高职教STM32——ADC电压采集与光敏电阻(3)
            大家好,我是老耿,高职青椒一枚,一直从事单片机、嵌入式、物联网等课程的教学。对于高职的学生层次,同行应该都懂的,老师在课堂上教学几乎是没什么成就感的。正是如此,才有了借助CSDN平台寻求认同感和成就感的想法。在这里,我准备陆续把自己花了很多心思设计的教学课件......
  • 我在高职教STM32——ADC电压采集与光敏电阻(4)
            大家好,我是老耿,高职青椒一枚,一直从事单片机、嵌入式、物联网等课程的教学。对于高职的学生层次,同行应该都懂的,老师在课堂上教学几乎是没什么成就感的。正是如此,才有了借助CSDN平台寻求认同感和成就感的想法。在这里,我准备陆续把自己花了很多心思设计的教学课......
  • 基于ST STM32G474的400W Microinverter之数位电源方案
    微型逆变器(Microinverter)是一种独立的太阳能模组,能将太阳能板产生的直流电(DC)转换为交流电(AC)。这种设备在模组阶段就能进行直流电转换和发电功率最佳化,所产生的电力以交流电形式传输,具备更高的安全性和扩充性。每个微型逆变器的输出可以合并回馈至电网或储能设备,特别适合面积较......
  • OLED显示屏详解(IIC协议0.96寸 STM32)
     目录 一、介绍 二、模块原理1.原理图2.工作原理:SSD1306显存与命令三、程序设计main.c文件oled.h文件oled.c文件四、实验效果 五、资料获取项目分享一、介绍        OLED是有机发光二极管,又称为有机电激光显示(OrganicElectroluminescenceDisplay......
  • 【STM32】IWDG独立看门狗与WWDG窗口看门狗
    本篇博客重点在于标准库函数的理解与使用,搭建一个框架便于快速开发目录WDG简介IWDGIWDG特性独立看门狗时钟键寄存器超时时间 IWDG代码WWDGWWDG特性窗口看门狗时钟超时时间WWDG时序WWDG代码 IWDG和WWDG对比 WDG简介WDG(Watchdog)看门狗,可以监控程序的运......
  • 嵌入式STM32单片机开发环境配置教学Win/Mac
    合集-环境配置(2)1.最全!嵌入式STM32单片机开发环境配置教学Win/Mac!!!08-282.最简最速!C++版OpenCV安装配置教程Win/Mac!!!08-28收起嵌入式STM32单片机开发环境配置教学Win/Mac·本教程支持Windows和Mac·Windows可选的开发软件为Keil、Clion、STM32CubeMX,可自由选择开发方式·M......