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文件

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

相关推荐
Python小老六3 小时前
冯诺依曼架构 vs 哈佛架构 对比
stm32·单片机·嵌入式硬件·架构
TEC_INO3 小时前
Hal库的使用
单片机·hal库
羽获飞3 小时前
从零开始学嵌入式之STM32——13.使用STM32自带硬件模块实现IIC协议通讯
单片机·嵌入式硬件
单片机设计星球4 小时前
51单片机的【智能婴儿床】仿真设计
单片机·嵌入式硬件·51单片机
weiyvyy4 小时前
机器人嵌入式开发者的成长路径-技能体系构建
人工智能·嵌入式硬件·机器人
dashizhi20155 小时前
禁止复制电脑文件、电脑机密数据禁止拷贝、禁止电脑文件复制到U盘和移动硬盘的方法
运维·网络·stm32·安全·电脑
San_a dreamer fish6 小时前
STM32开发入门基础篇知识要点
stm32·单片机·嵌入式硬件
济6176 小时前
ARM Linux 驱动开发篇--- Linux 并发与竞争实验(互斥体实现 LED 设备互斥访问)--- Ubuntu20.04互斥体实验
linux·stm32·嵌入式linux驱动开发
安庆平.Я6 小时前
STM32——FreeRTOS - 移植
stm32·单片机·嵌入式硬件
HIZYUAN7 小时前
AG32 MCU可以替代STM32+CPLD吗(一)
stm32·单片机·嵌入式硬件