stm32f103c8t6点灯程序
时间: 2023-08-24 10:06:06 浏览: 114
下面是一个简单的STM32F103C8T6点灯程序,使用了标准库函数。
```
#include "stm32f10x.h"
#include "delay.h"
int main(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOC, &GPIO_InitStructure);
while(1)
{
GPIO_SetBits(GPIOC, GPIO_Pin_13);
delay_ms(1000);
GPIO_ResetBits(GPIOC, GPIO_Pin_13);
delay_ms(1000);
}
}
```
需要注意的几点:
1. 使用了延时函数,需要添加delay.h和delay.c两个文件。
2. LED连接在PC13引脚上。
3. 使用了标准库函数,需要在工程属性中选择正确的芯片型号,并添加正确的库文件。
相关问题
写1个STM32F103C8T6点灯程序
可以的,以下是一个简单的STM32F103C8T6点灯程序:
#include "stm32f10x.h"
int main(void)
{
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); //使能GPIOC时钟
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13; //设置GPIOC的Pin13
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //设置为推挽输出
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //设置GPIO速度为50MHz
GPIO_Init(GPIOC, &GPIO_InitStructure); //初始化GPIOC
while(1)
{
GPIO_SetBits(GPIOC, GPIO_Pin_13); //点亮LED
Delay(100); //延时1秒
GPIO_ResetBits(GPIOC, GPIO_Pin_13); //熄灭LED
Delay(100); //延时1秒
}
}
void Delay(__IO uint32_t nCount)
{
for(; nCount != ; nCount--);
}
希望对你有所帮助!
stm32f103c8t6点灯程序显示完整代码
您可以使用以下代码来在STM32F103C8T6核心板上实现点灯程序:
```c
#include "stm32f10x.h"
void delay() {
for (int i = 0; i < 1000000; i++) {
// 延时函数,通过循环实现延时
}
}
int main(void) {
// 初始化GPIO
GPIO_InitTypeDef GPIO_InitStruct;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); // 使能GPIOC时钟
GPIO_InitStruct.GPIO_Pin = GPIO_Pin_13; // 设置GPIOC的引脚13为输出
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz; // 设置GPIOC的速度为50MHz
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP; // 设置GPIOC的输出模式为推挽输出
GPIO_Init(GPIOC, &GPIO_InitStruct); // 初始化GPIOC
while (1) {
GPIO_SetBits(GPIOC, GPIO_Pin_13); // 点亮LED(GPIOC的引脚13)
delay(); // 延时
GPIO_ResetBits(GPIOC, GPIO_Pin_13); // 熄灭LED
delay(); // 延时
}
}
```
这段代码使用了STM32的库函数来控制GPIO,具体的操作是将GPIOC的引脚13设置为输出,并循环地点亮和熄灭LED,以实现LED的闪烁效果。您可以将这段代码复制到您的开发环境中进行编译和下载,然后将核心板连接到电源,即可看到LED的闪烁效果。请注意,这段代码需要在适当的开发环境中进行编译和下载,并且需要正确配置开发环境的路径和连接方式。<span class="em">1</span><span class="em">2</span>
#### 引用[.reference_title]
- *1* [单片机STM32基于面包板进行学习STM32开发,可以参考里面的各个外设模块的接线图,进行相应的硬件电路连接](https://download.csdn.net/download/m0_61712829/88244504)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* [STM32F103C8T6核心板测试程序(PC13闪烁)](https://download.csdn.net/download/qq_40730747/86402647)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文