GD32F103用Arduino编程
- 板子线路图
- Ardunino编程
- 程序编制
- 编译下载
板子线路图

 这个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
 


















