蓝猫淘气

[Training Camp_Basic Class] Microcontroller Learning Board Based on STM32F103C8T6

 
Overview

以STM32F103C8T6为MCU的一块最小系统板
1、电源部分通过USB接入的5v直流电然后加上RT9193-33GB线性稳压芯片降压到3.3V供MCU使用。
![图片.png]![图片.png]2、晶振部分使用了8M的无源晶振为MCU起振用。

3、程序下载部分本着最小系统板面积较小的原则,并未使用JTAG。而使用了SWD接法。同样速度较快也支持在线调试。
![图片.png]
4、软件测试程序
> #include "led.h"
#include "delay.h"
#include "key.h"
#include "sys.h"
int main(void)
{
u8 key;
delay_init();
LED_Init();
KEY_Init();
LED0=0;
while(1)
{
key =KEY_Scan(0);
if(key)
{ switch(t)
{
case KEY1_PRES:
LED1=!LED1;break;
case KEY0_PRES:
LED0=!LED0;
LED1=!LED1;break;
}
}else delay_ms(10);
}
}
> //key.h
#ifndef __KEY_H
#define __KEY_H
#include "sys.h"
#define KEY0 GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_8)
#define KEY1 GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_9)
#define KEY0_PRES 1
#define KEY1_PRES 2
void KEY_Init(void);
u8 KEY_Scan(u8);
#endif
//led.h
#include "led.h"
void LED_Init(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(GPIOB, &GPIO_InitStructure);
GPIO_SetBits(GPIOB,GPIO_Pin_13);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;
GPIO_Init(GPIOC, &GPIO_InitStructure);
GPIO_SetBits(GPIOC,GPIO_Pin_13);
}


![IMG_20200803_182225.jpg]
参考设计图片
×
 
 
Search Datasheet?

Supported by EEWorld Datasheet

Forum More
Update:2024-11-14 23:27:47

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号