如何用c语言编写stm32的程序吗,c语言的程序怎么烧进stm32里?

STM32是可编程器件,用C语言和汇编都可以,由于C语言可读性强、移植方便,现在用C语言编程成为主流,C语言编号的hex需要下载到单片机中,单片机才能执行,这个过程叫做程序的烧录或者下载,需要专用工具的支持。对STM32而言,有三种方法可以烧录程序,分别介绍。

1.使用JTAG接口烧录程序(用JLINK实现)

JTAG是一种标准的程序烧写接口,许多比较高端的芯片都支持该接口,该接口有10针,14针,20针等,但是用到的引脚有六个,分别为:TCK,TMS,TDI,TDO等,另外两根线是TRST和RESET。接口如下所示。

151532761_1_20190108052134396

对于STM32而言,上图中的几个上拉电阻可以省略不用,STM32在手册上已经描述了单片机对应的引脚内部有上拉电阻,这种方式可以通过JLINK来实现烧写。该方式可以实现在线调试,提高了查找问题的效率。

2.SWD烧录方式

SWD方式主要用到两根线:SWDIO和SWCLK,该接口一般和JTAG接口共用,接口电路如下所示:

151532761_2_20190108052134474

这种烧录方式可以通过JLINK、STLINK等工具实现。该方式可以实现在线调试,大大方便了查找问题的效率,而且节省单片机引脚,接口小,节省PCB空间。

3.ISP模式/UART模式

STM32单片机可以通过UART串口引脚下载程序,这种方式使用的是单片机的串口,即TXD和RXD两根线,所使用的工具是USB/TTL,如下图是实现自动ISP下载的电路图。

151532761_3_20190108052134552

上图看起来复杂,其实USB/TTL芯片不用画在电路板上,使用额外的工具即可,在连接的时候要使用交叉连接,而且还要选择单片机的启动方式,即BOOT0和BOOT1的状态。该方式下载程序虽然方便,但是无法实现在线调试。与前两种方式相比,该种方式比较适合量产。

通过以上三种方式即可实现将C语言程序烧写进STM32里,从而让单片机执行程序代码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值