国产32位单片机CH32F103C8T6完美移植之点亮LED

CH32F103C8T6

没有对比就没有伤害----雷军

首先来看CH32F103C8T6与STM32F103C6T6片上资源对比(CH32F103C8T6与CH32F103R8T6资源相差不大,这里就以CH32F103R8T6系统框图代替了)。

从比较中可以看到CH32F103C8T6的片上资源的丰富程度已经超过了同类型的STM32F103C8T6。

代码移植

点亮LED

STM32F103


CH32F103

点亮led代码

#include "GPIO_Config.h"

/*********************************************************************
 * @fn      GPIO_Toggle_INIT
 *
 * @brief   Initializes GPIOC.13
 *
 * @return  none
 */
void GPIO_Toggle_INIT( void )
{
    GPIO_InitTypeDef  GPIO_InitStructure = {0};

    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_2MHz;
    GPIO_Init( GPIOC, &GPIO_InitStructure );
}

从移植代码来看毫无差别,知识外设文件名字不一样罢了

点灯效果

26FE9C43B688D19576A246AE8D28B223

STM32F103C8T6最小系统板是一款常用的单片机开发板,可以通过编程来控制板上的LED点亮。下面是点亮LED的基本步骤: 1. 首先需要准备好开发环境,包括安装好Keil或者其他编译器以及相应的ST-link驱动程序。 2. 在编译器中创建一个新工程,选择STM32F103C8T6单片机型号,并添加LED点亮所需的库文件。 3. 在代码中引用库文件,并进行相应的初始化设置。例如,设置GPIO口为输出模式,初始化LED引脚为高电平(或低电平,根据具体接法而定)。 4. 在主函数中编写LED点亮代码,即将对应的GPIO口设置为低电平(或高电平)即可点亮LED灯。 下面是一个简单的例子代码,仅供参考: ``` #include "stm32f10x.h" //头文件 int main(void) { GPIO_InitTypeDef GPIO_InitStructure; //定义GPIO结构体变量 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); //使能GPIOB时钟 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5; //设置GPIO口 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //设置GPIO为推挽输出 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //设置GPIO速度 GPIO_Init(GPIOB, &GPIO_InitStructure); //初始化GPIO while (1) //主循环 { GPIO_SetBits(GPIOB, GPIO_Pin_5); //点亮LED } } ``` 注意事项:以上代码中使用的是PB5引脚控制LED,具体控制哪个引脚需要根据自己的实际情况进行修改。另外,由于最小系统板上可能存在其他外设使用了与LED相同的引脚,因此在编写代码前需要先了解清楚板子上各个引脚的功能和使用情况。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值