在这里,我们使用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);
}
文章来源地址https://www.toymoban.com/news/detail-408995.html
步骤四:上传程序,使用串口软件FlyMcu
上传完后,我们发现灯没有亮。此时,我们将跳线帽BOOT0置0,BOOT1置0(如下图所示)。接电后,发现灯亮
文章来源:https://www.toymoban.com/news/detail-408995.html
到了这里,关于STM32f103c8t6小白学习笔记(一)从点灯开始之USB转TTL的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!