STM32

(以下操作环境为Keil5和proteus8.9)

八种输入输出模式及他们的工作模式

分析如下

总线:总线提供了数据在不同组件(如处理器、内存、输入输出设备等)之间传输的路径,使数据能够快速、准确地在系统内流动。

输出控制内内置一个"非"器,GPIO或其他外部设备输入0,经过输出控制,由VDD输出给外部,为1.

模拟信号:由输入电压与3.3的比值,算出传感器感官占比,再判断是否达到触发值。

(存储器基地址在此处查找)

(偏移地址在此处查找)

端口配置位:0~7-----端口配置低寄存器

8~15------端口配置高寄存器

单片机入门:点亮一个led邓并闪烁

左上角创建project和main.c文件:

代码解释:

前三行定义了宏(系统自带,也直接调用其函数)以及基地址和偏移地址,用以存储器与外设的匹配(操作地址=操作内存空间=操作存储器)

RCC是系统复位和时钟控制的缩写(reset and clock control),APB2 是外设时钟使能寄存器(RCC_APB2ENR),默认为不工作状态,通过设置这个寄存器,可以开启或关闭某个外设的时钟供应,从而有效地控制外设的工作状态。当使能某个外设的时钟时,该外设可以正常工作,进行数据传输、处理等操作;当禁止时钟时,外设处于低功耗状态,减少系统的功耗消耗。

将"1"左移2位,IO端口A时钟使能 (I/O port A clock enable)

由软件置'1'或清'0'

0:IO端口A时钟关闭;

1:IO端口A时钟开启

每个GPI/O端口有两个32位配置寄存器(GPIOx_CRL,GPIOx_CRH),两个32位数据寄存器

(GPIOx_IDR和GPIOx_ODR),一个32位置位/复位寄存器(GPIOx_BSRR),一个16位复位寄存

器(GPIOx_BRR)和一个32位锁定寄存器(GPIOx_LCKR)。以上我们选择的是通用输入模式。

proteus仿真:

步骤:

打开proteus后点击左边方框内的P键,选择器件STM32F103c6和led灯(可选多种其他颜色)--->点击左边方框后图标选择"power"(接地线),依次连接起来

proteus内导入:右击选择编辑内容后选择编辑文件---Keil文件

点击左下角的绿色运行键后灯泡亮并闪烁

相关推荐
iCxhust2 小时前
8086/8088单板机VSCode集成自动下载功能(完善串口接收显示版)
ide·vscode·单片机·编辑器·微机原理·8088单板机·8086单板机
振南的单片机世界3 小时前
从数码管到点阵屏:动态扫描加595,3个IO驱动256个LED
stm32·单片机·嵌入式硬件
listhi5203 小时前
STC8 16通道模拟采集 + 4路串口 + 8路PWM 程序
stm32·单片机·嵌入式硬件
星夜夏空994 小时前
STM32单片机学习(4)——嵌入式概述
stm32·单片机·学习
Deitymoon4 小时前
STM32——OLED显示字符串
单片机·嵌入式硬件
LCG元4 小时前
STM32实战:基于STM32F407的FFT频谱分析(音频信号处理)
stm32·音视频·信号处理
Graceful_scenery5 小时前
龙芯2k0300 - 走马观碑组按键驱动移植
单片机·嵌入式硬件
d111111111d5 小时前
MQTT+STM32+ESP8266网络程序分层+韦老师
笔记·stm32·单片机·嵌入式硬件·学习·php
长安第一美人5 小时前
RT-Thread 工业屏驱动开发实战:UART 串口屏协议解析 + 数据实时刷新 + 设备驱动框架完整实现
驱动开发·嵌入式硬件·rt-thread·工业控制·uart通信·串口屏驱动
LDR0065 小时前
突破快充壁垒,赋能全场景体验——LDR6600 2C1A快充协议芯片重磅来袭
嵌入式硬件