导航:首页 > 操作系统 > 程序如何写入STM32单片机

程序如何写入STM32单片机

发布时间:2022-05-22 21:20:50

㈠ 利用stm32的单片机完成下面的要求,程序该怎么写,用C语言

用两个定时器分别对两个LED灯闪烁,KEY1和KEY2要设置为外部中断输入,当进入中断时KEY1_DANG或KEY2_DANG指向下一个档位,并且发送串口。给你提供点思路。
void main()
{
while(1)
{
if(key1_dang==0x01)
中断定时1设置为0.2秒
if(key1_dang==0x02)
中断定时1设置为0.4秒
if(key1_dang==0x03)
中断定时1设置为0.6秒
if(key1_dang==0x04)
中断定时1设置为0.8秒
if(key1_dang==0x05)
中断定时1设置为1.0秒

if(key2_dang==0x01)
中断定时2设置为0.2秒
if(key2_dang==0x02)
中断定时2设置为0.4秒
if(key2_dang==0x03)
中断定时2设置为0.6秒
if(key2_dang==0x04)
中断定时2设置为0.8秒
if(key2_dang==0x05)
中断定时2设置为1.0秒
}

}

㈡ 用USB转TTL线怎么把程序烧写到stm32f103C8T6中

用USB转TTL线把程序烧写到stm32f103C8T6中:

1、TXD-接 PA10/USART1_RX

2、RXD-接 PA9/USART1_TX

3、3V3 GND 接供电,将BOOT0接3V3后再供电,即可进入下载模式。

写入程序成功后,将BOO0与BOOT1均置为0。

(2)程序如何写入STM32单片机扩展阅读:

程序烧写的分类以及注意事项:

MCU类可烧录IC

MCU类可烧录IC,目前市场上有很多单芯片控制器(SINGLE MCU)可以通过配套的烧录器进行一次或多次资料烧写。通常仅能烧录一次的MCU被叫做OTPMCU(英文即:ONE TIME PROGRAMBLE MCU),与之相对的是MTP MCU(英文是MULTI TIME PROGRAMBLE MCU)就是可多次烧录的MCU。

OTP MCU通常由生产者在产品装配前通过配套的烧录器一次性把资料烧入,该类IC一经烧录,烧入的资料将无法再次改变

MTP MCU,有别于OTP MCU,本类IC 通过配套的烧录器可以多次烧录,擦写,有的内建FLASHMCU甚至可以烧录不小于10万次。

存储类可烧录IC

存储类可烧录IC:门类众多,如EPROM、EEPROM、NOR FLASH、SPROM、NAND FLASH等等。

EPROM、NOR FLASH、EEPROM、SPROM主要用于存放我们的数据资料或程式,我们已经司空见惯了,跟生产NAND FLASH的厂家比起来可以说生产厂家几乎遍地都是,市面上有相当多的万用烧写器可以把资料烧写进这些IC。

NAND FLASH只有三星等几个生产厂家生产,目前广泛用于U盘、MP3、MP4、ELA和电子词典上。

㈢ 如何生成stm32单片机程序

1,下面以流水灯为例说明STM32CubeMX软件的使用。
2, 第一步,建立并保存工程。
3,启动STM32CubeMX软件,界面如图2所示。
4,点击New Project,在New Project对话框中选择Board Selector标签页,在这里有各种ST评估板可以选择,我们选择STM32F429I-DISCO,最后点击OK,如图3所示。这样就建立起了STM32F429I-DISCO评估板的工程,这个工程已经根据评估板设置好了,然后可以生成相应的代码。
5,为了演示如何使用STM32CubeMX软件,关闭刚刚建立的工程,从头建立一个新的工程。点击New Project,在New Project对话框中选择Mcu Selector标签页,然后在MCU Filter中依次选择STM32F4,STM32F429/439,在下面列表中选择STM32F429ZITx,最后点击OK,如图4所示。
6,新建立的工程界面如图5所示。

㈣ 如何把程序写入单片机

现在的单片机一般:

  1. 通过USB(需要装上配套驱动)模拟串口,将用KIEL编译后程序写到单片机;

  2. 也可直接用串口与PC相连,将用KIEL编译后程序写到单片机;

  3. 更多交流参考我空间文章发。

㈤ STC单片机的c代码可以移植到stm32上吗,要不要做什么修改

换芯片,改电路,底层肯定要重写的。
写程序有个好习惯还是很重要的。下面说一下移植方面的习惯,
提高移植性,最重要的手段就是隐藏硬件实现的细节,把逻辑与底层分开。
举个例子,LED闪一下亮一下,P1_0 = 0; 在51上就是一句话的事。就这一句,就有三个地方涉及硬件,(1)硬件上是P1.0接LED,(2)硬件上低电平亮,相应的是高电平灭,(3)硬件是用的51,用了51独有的位操作。
换个电路,或者换个芯片,这些都要重新改写。假设程序里面有十个地方需要亮灯,移植时就要改十个地方。把亮灯这件事定义成一个函数,或者叫方法,或者叫操作,把具体的操作细节隐藏起来,只表示出做了一件什么事情--亮灯。像这样,void LED_ON( void );在主程序里面,或者说在应用层的程序中调用LED_ON();就是亮灯,具体怎么亮灯,应用程序不管,也不能管,而是由单独的底层程序来做,也就是LED_ON这个函数的内容,是放在单独的一个文件中。用51,就写一个51下的底层,要移植,要用CM3就写一个CM3的底层,主程序可以不用改动,至少是尽量少改动。
为了提高移植性,尽量用标准的C写代码,涉及不同编译系统的实现细节,也要注意隐藏细节,前面的硬件细节,这个算是软件的细节吧。
比如sfr, sbit,interrupt这些,都是51独有的,换到不同的系统上,都需要重写。处理办法也是一样的,隐藏起来,放到单独的底层文件中。
基本上,做到这两步,程序的移植性会提高很多。
再举个小例子吧:

// app.c
#include "bsp.h" // 注意这里不要包含硬件有关的头文件,比如"reg51.h",不要包含在这里。
void main( void )
{
while(1)
{
if ( hasKey())
{
led_on();
delay(100);
led_off();
}
}

// bsp.h
typedef unsigned short uint16_t;
typedef bit bool;
void led_on( void );
void led_off( void );
void delay( uint16_t ms );
bool hasKey( void );
// bsp_for_51.c
#include "bsp.h"
#include "reg51.h"
sbit led = P1^0;
#define ON (0)
void led_on( void )
{
led = ON;
}

void led_off( void )
{
led = !ON;
}

void delay( uint16_t ms )
{
int i;
while( ms-- )
for( i=0; i<100; i++);
}
bool hasKey( void )
{
return ( P0 != 0xFF); // 测试是否有按键?
}

这个是51的系统,换成STM32,简单重写一下bsp.c,不需要改app.c,系统就可以移植过来。

㈥ 对于stm32单片机编写程序的方法有哪两种

寄存器开发方式
固件库开发方式
HAL库开发方式

㈦ keil怎么把程序烧录进stm32

keil 只是写程序的软件,写好程序保存为.c文件,然后添加该文件到源组,然后配置内存,然后编译,就变成.hex文件,然后用烧录软件把.hex文件下载进单片机。

㈧ visualGDB写好程序后,如何下载到单片机中(stm32),(avr)

在工程名称右键选择visualgdb,选项里的DEBUG可以选择安装J-LINK作为调试工具,用它可以单步调试、下载。

阅读全文

与程序如何写入STM32单片机相关的资料

热点内容
安阳少儿编程市场 浏览:496
云服务器建设原理 浏览:258
javajunit4for 浏览:845
华为服务器如何进阵列卡配置 浏览:435
apache服务器ip地址访问 浏览:718
如何买到安卓手机预装软件 浏览:537
冤罪百度云不要压缩 浏览:87
苏州云存储服务器 浏览:177
解压收纳原声 浏览:386
java注册验证 浏览:376
火花app怎么上推荐 浏览:981
什么app能游戏投屏到电视上 浏览:455
服务器托管到云端是什么意思 浏览:836
app保存草稿怎么用 浏览:808
安卓如何进入proumb 浏览:144
主机虚拟云服务器 浏览:619
删除分区加密的空间会不会恢复 浏览:706
京东app客户上门怎么看搜索量 浏览:741
怎么在农行app购买黄金 浏览:46
c型开发板和单片机 浏览:146