Arduino为GD32芯片编程

板子线路图

在这里插入图片描述
这个STM32F103C8T6用国产的GD32来代替。

Ardunino编程

使用Arduino编程,在板子管理器中安装:
在这里插入图片描述
安装需要一些时间,在这里可以看到,STM32F1xx支持GD32F1xx系列的板子。

安装完成后在板子管理器中出现:
在这里插入图片描述
选择STM32F1板子。
我在其中选择STM32F103C系列的板子。

程序编制

/*  Timer Interrupt Example
 *  
 */

#define LED_PIN PC13
//#define LED_RATE 500000    // in microseconds; should give 0.5Hz toggles
#define LED_RATE 1        // 1000 μs = 1 ms
void handler_count1(void);

int iCnt01 = 0;
bool toggle = 0;
bool bDebug = false;

void handler_led(void)
{
    iCnt01++;
    if ( iCnt01 >= 100000 )
    {
        toggle = !toggle;        
        digitalWrite(LED_PIN, toggle);
        if ( bDebug )
          Serial1.println("Interrupt called!");
        iCnt01 = 0;
    }
} 

void setup() 
{
    Serial1.begin(115200);
    pinMode(LED_PIN, OUTPUT);
    while(!Serial1);
    delay(2000);
    Serial1.println("COM 1 Setup OK!");

    Timer2.setMode(TIMER_CH1, TIMER_OUTPUTCOMPARE);
    Timer2.setPeriod(LED_RATE); // in microseconds 0.5 second
    Timer2.setCompare(TIMER_CH1, 1);      // overflow might be small
    Timer2.attachInterrupt(TIMER_CH1, handler_led);
}

void loop() 
{
    if (Serial1.available())
    {
        int x = Serial1.read();
        if ( x == 'd')
        {
            bDebug = !bDebug;
            Serial1.print("bDebug = ");
            Serial1.println(bDebug, BIN);
        }
    }

}

我的编程设备采用了JLink V9.0,这里可能要在下载器的目录中安装Jlink.exe,Jlink_X64.DLL, JLink_ARM.DLL文件。我把文件安装在
stm32duino\tools\stm32tools\2022.9.26\win>目录下面。

编译下载

在Arduino的编程环境下是Upload。
下载完成,一切正常,我用的板子是GD32F103C8T6
在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值