完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
一、LED模块电路
所使用的的LED模块为共阳极 LED模块电路图 二、STM32启动文件 对于启动文件这部分我们主要总结它的功能,不详细讲解里面的代码,其功能如下: 1、初始化堆栈指针SP; 2、初始化程序计数器指针PC; 3、设置堆、栈的大小; 4、设置中断向量表的入口地址; 5、配置外部SRAM作为数据存储器(这个由用户配置,一般的开发板可没有外部SRAM) ; 6、调用SystemInit () 函数配置STM32的系统时钟。设置C库的分支入口“_main”(最终用来调用main函数); 启动文件startup_stm32f10x_hd.s在安装目录中有,可以手动查找,添加到工程目录中。启动文件都是用汇编语言编写的。 三、编写点亮一个LED程序 我们所要实现的功能是:点亮第一个LED,即D1指示灯亮要操作STM32寄存器,我们就需要使用C语言对其封装,这部分程序我们都放在stm32f10x.h中。 由电路图可知LED1连接的是PC0端口,我们要将PC0端口置零,则导通,LED灯亮起 首先找到GPIO是挂载到那一条总线上,即Block2总线,所有的片内外设都在Block2上面 #define PERIPH_BASE ((unsigned int)0x40000000) #define APB2PERIPH_BASE (PERIPH_BASE +0x00010000) #define GPIOC_BASE (APB2PERIPH_BASE + 0x1000) #define GPIOC_CRL *(unsigned int*)(GPIOC_BASE+0x00) #define GPIOC_CRH *(unsigned int*)(GPIOC_BASE+0x04) #define GPIOC_IDR *(unsigned int*)(GPIOC_BASE+0x08) #define GPIOC_ODR *(unsigned int*)(GPIOC_BASE+0x0C) #define GPIOC_BSRR *(unsigned int*)(GPIOC_BASE+0x10) #define GPIOC_BRR *(unsigned int*)(GPTOC_BASE+0x14) #define GPIOC_LCKR *(uunsigned int*)(GPIOC_BASE+0x18) #define AHBPERIPH_BASE (PERIPH_BASE + 0x20000) #define RCC_BASE (AHBPERIPH_BASE + 0x1000) #define RCC_APB2ENR *(unsigned int*)(RCC_BASE+0x18) 在对任何外设进行操作前,一定要开启对应外设的时钟,只有开启了时钟,才能对外设进行设置。 如果编码时,Keil5写注释汉字显示为??,可以百度https://jingyan.baidu.com/article/7082dc1c281faee40a89bda1.html进行更改设置 #include "stm32f10x.h" void SystemInit() { } int main() { //1.开启GPIOC的端口时钟 RCC_APB2ENR |=1<<4;//或运算是为了防止对其它位的干扰 //2.设置工作模式 //推挽输出 GPIOC_CRL&=~(unsigned)(0x0f<<(4*0));//4*0表示第0个管脚,第一个管脚就是4*1,每四位控制一个引脚 GPIOC_CRL|=(0x03<<(4*0));//设置输出模式为50MHz //3.设置引脚输出为0,点亮LED GPIOC_BSRR=(0x1<<(16+0)); while(1) { } } 注意在输出中可以查看编译文件的大小: |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1617 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1543 浏览 1 评论
977 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
683 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1595 浏览 2 评论
1863浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
644浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
515浏览 3评论
531浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
504浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 08:41 , Processed in 0.922161 second(s), Total 49, Slave 42 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号