STM32f103c8t6小白学习笔记(一):从点灯开始——USB转TTL

在这里,我们使用USB转TTL CH340串口模块来烧写程序

步骤一:与stm32f103c8t6最小系统板接线:

      一共四根,PA9,PA10分别对应连接RXD,TXD (如下图),GND连GND ,3V3连32系统板的3.3V,跳线帽将5V和VCC相连(如上图),原因 from数据手册

步骤二:跳线帽:接法如上图

BOOT0置1,BOOT1置0 ,原因from参考手册

     因为我使用的是串口下载模式,下载程序时必须将T0拉高从系统存储区启动,里面有st出厂就烧录进去的isp程序。当程序下载完后,程序被搬运到了主闪存区(flash),所以需要将T0拉低再复位,从flash开始执行程序。

步骤三:写点灯程序

 上图是,我使用的stm32f103c8t6最小系统板,板载led的原理图。由图可知LED(D2)的信号端口是PC13,低电平点亮,高电平熄灭。

我们开始写程序

主程序:

int main (void)
{//主程序
	LED_Init();
	while(1)
   {
		GPIO_WriteBit(GPIOC,GPIO_Pin_13,Bit_RESET); //PC13口输出低电平0
		GPIO_WriteBit(GPIOC,GPIO_Pin_13,Bit_SET);   //PC13口输出高电平1
	}
}

LED初始化程序:

void LED_Init(void)
{ //LED灯的接口初始化
	GPIO_InitTypeDef  GPIO_InitStructure; 	
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);//使能GPIOC       
    GPIO_InitStructure.GPIO_Pin = 13;                   //选择端口号(0~15或all)                        
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;    //选择IO接口工作方式,推挽输出      
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;   //设置IO接口速度(2/10/50MHz)    
	GPIO_Init(LEDPORT, &GPIO_InitStructure);			
}

 

 

步骤四:上传程序,使用串口软件FlyMcu

上传完后,我们发现灯没有亮。此时,我们将跳线帽BOOT0置0,BOOT1置0(如下图所示)。接电后,发现灯亮

 

 

 

 

物联沃分享整理
物联沃-IOTWORD物联网 » STM32f103c8t6小白学习笔记(一):从点灯开始——USB转TTL

发表评论