1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
一、STM32
1. STM32是什么**
2. ARMv7架构。*** ARMv7架构定义了三大分工明确的系列:
STM32的用处取决于其内部资源,前面我们了解了STM32内部拥有非常多的通信接口。 比如:
(1)基本外设: -GPIO输入输出,中断,定时器,串口。 -理解了这四个外设,基本就入门了一款MCU。 (2)基本外设接口: -SPI,IIC,WDG, FSMC,ADC/DAC,SDIO等 -这些外设接口功能原理对每个芯片几乎都是一样。 对芯片而言就是多和少而已。 (3)高级功能: -UCOS,FATFS,EMWIN等。以及一些应用。 5. STM32最小系统组成(电路原理图) (1)电源电路 (2)复位电路 (3)晶振电路 (4)下载电路 (5)主控芯片 6. STM32的主控芯片。 包括核心主频,内存,闪存,工作模式,A、D数据转换,DMA,定时器,以及通信协议。 比如:
GPIO( general purpose intput output )是通用输入输出端口的简称,可以通过软件来控制其输入和输出。 STM32芯片的GPIO引脚与外部设备连接起来,从而实现与外部通讯、控制以及数据采集的功能。 9. 寄存器LED点灯 (连接好STM32、ST-Link,然后把程序写入STM32,再給电,就可以自动运行这个程序,点灯) 步骤: (1)看硬件原理图,找到LED1的引脚 — PC13 连接操作:对应着连就行啦,看文字对应来连,很简单。先把STM32的那一排连上,再对应着某个线,连接STLink的对应位置。 (2)看存储器map,找到RCC依赖的总线 — 3 memory and bus – APB2 (3)设置时钟 – RCC 0x40021000 + 0x18 使能时钟(给电) (4)设置GPIO模式寄存器 – GPIOC 0x40011000 + 0x04 设置输出模式 (5)设置GPIO输出寄存器 – GPIOC 0x40011000 + 0x0C 给高低电平 //设置时钟 -- RCC 0x40021000 + 0x18 使能时钟(给电) //设置GPIO模式寄存器 -- GPIOC 0x40011000 + 0x04 设置输出模式 //设置GPIO输出寄存器 -- GPIOC 0x40011000 + 0x0c 给高低电平 //自己去找寄存器,很low,很复杂,很麻烦的操作。 #define RCC_BASE *((int *)(0x40021000 + 0x18)) #define GPIOC_CON *((int *)(0x40011000 + 0x04)) #define GPIOC_DAT *((int *)(0x40011000 + 0x0c)) void delay(int n){ int i; while(n--){ for(i=0;i<1000;i++); } } int main(){ //设置APB2-GPIOC时钟(給电) RCC_BASE|=0x1<<4; //设置输出模式,推挽输出 //15,1111,往左移动20位,取反变为0000,左移20位左边的相与,这四位全变0 GPIOC_CON &= ~(0xf<<20); GPIOC_CON |= 0x1<<20;//24到20,就变为0001了。 //设置高低电平 while(1){ delay(1000); GPIOC_DAT |=0x1<<13;//给的是1,就是高电平。 delay(1000); GPIOC_DAT &= ~(0x1<<13);//给0,低电平,取反再相与。 } //while(1)防止程序跑飞 } 问题一:为什么STM32性能比51单片机高得多,但是功耗却比51低? 答:因为STM32默认所有的供电都是失效,所有的时钟都是停滞的 问题二:STM32与51的区别? STM32与51的区别就是:当我们要读引脚电平的时候,也就是作为输入,我们必须要先把引脚设置为输入功能,才可以读。当我们要控制引脚高低电平的时候,也就是作为输出,我们必须要先把引脚设置为输出功能,才可以设置 注意事项:注意裸机汇编代码最后的死循环while(1); 作用:防止程序跑飞 二、C语言基础 代码中可以直接修改STM32上面某个地址的二进制(代码最终会下载到STM32上,并在通电时自动运行) (1)位运算
int a = 100; int *p = &a; *((int *)0xbfec1e38) = 100; (3)结构体 (4)函数 三、蜂鸣器 无源蜂鸣器和有源蜂鸣器 有源蜂鸣器内含振荡源,只要一通电就发声,但发生频率固定,音色单一; 无源蜂鸣器内部不含振荡源,内部结构相当于电磁场扬声器,可以通过给它输出一定频率的信号发声。 接线步骤:
|
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1767 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1619 浏览 1 评论
1069 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
724 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1673 浏览 2 评论
1935浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
727浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
567浏览 3评论
592浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
551浏览 3评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-21 19:35 , Processed in 0.628223 second(s), Total 48, Slave 42 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号