stm32f103zet6 hello world

51最小系统板电路图???
stm32f103zet6 hello world
文章图片

来源

还不会做usb-串口一键下载电路的情况下 ,如何实践?
利用已有的淘宝上买的开发板(它带有串口程序一键下载电路),把单片机插在该开发板商,用keil 将程序烧录到该单片机中。
再将该单片机拔下来插到类似上图的自制板子上,这样就可以运行程序了。
STM32F103 串口下载程序 步骤:
1. 从串口下载并启动 1.1. 设置 从系统存储器启动, 串口下载: BOOT0: 1, BOOT1: 0 1.2. MCUISP.exe :
  • 不使用RTS和DTR,
  • 勾选"编程后执行",
  • 再点击 "开始编程" ,
    右边窗口显示"开始连接..." 即MCUISP.EXE进入等待.
1.3. 按复位键,
  • 按复位键后,单片机将按 步骤1.1 的设定 来启动, 并开始和 步骤1.2 的等待中的MCUISP.exe交互
    即从串口下载程序到系统存储器 并从系统存储器启动 (相当于从串口启动).
2. 此后如何再次运行 步骤1 写入的程序? 1.4步骤或2.1步骤. 注意此时(步骤1之后)程序已经被下载到FLASH, 但是设置依然是 从串口启动.
所以如果此时直接按复位键,是不会正常启动的,因为还需要MCUISP.exe按照 步骤1.2 那样配合才行.
步骤1.3 之后 如果期望运行刚刚下载到单片的程序,则步骤应该是:
  • 改设置为: BOOT0:1、 BOOT1:任意值 :即从FLASH启动,
  • 按复位键, 即是启动刚刚写好的程序的.
BOOT0, BOOT1 参见下图红框:
stm32f103zet6 hello world
文章图片

51单片机串口下载程序例子
1. stc89c52RC ok例子 stm32f103zet6 hello world
文章图片

stc-isp软件窗口中打印的日志如下:
正在检测目标单片机 ... 单片机型号: STC89C52RC/LE52RC 固件版本号: 6.6.4C当前芯片的硬件选项为: . 当前的时钟频率: 11.030MHz . 系统频率为12T(单倍速)模式 . 振荡器放大增益使能 . 当看门狗启动后,任何复位都可停止看门狗 . MCU内部的扩展RAM可用 . ALE脚的功能选择仍然为ALE功能脚 . P1.0和P1.1与下次下载无关 . 下次下载用户程序时,不擦除用户EEPROM区单片机型号: STC89C52RC/LE52RC 固件版本号: 6.6.4C正在重新握手 ... 成功[0.594"] 当前的波特率: 115200 正在擦除目标区域 ... 完成 ![0.312"] 正在下载用户代码 ... 完成 ![0.672"] 正在设置硬件选项 ... 完成 ![0.047"]更新后的硬件选项为: . 当前的时钟频率: 11.030MHz . 系统频率为12T(单倍速)模式 . 振荡器放大增益使能 . 当看门狗启动后,任何复位都可停止看门狗 . MCU内部的扩展RAM可用 . ALE脚的功能选择仍然为ALE功能脚 . P1.0和P1.1与下次下载无关 . 下次下载用户程序时,不擦除用户EEPROM区单片机型号: STC89C52RC/LE52RC 固件版本号: 6.6.4C操作成功 !(2021-12-06 00:09:34)

1.2 例子程序及开发ide 1.2.1 开发ide
【stm32f103zet6 hello world】keil5-c51
破解工具: 百度网盘 搜索: keil_keygen(2032).zip , 注意此文件可能带毒,要在vm中运行获得序列号即可。
1.2.2 例子程序
#include "reg52.h"sbit LED1=P1^0; void delay_tmp(){ int i ; for(i =0; i <10000; i++); } void main() { LED1=0; while(1) { delay_tmp(); //拿cpu空跑当延时 LED1=!LED1; } }

2. 自己做最小51单片机开发板思路
再买一个 步骤1 中的开发板, 确定其正常 , 对其做减法(用烙铁拆除所有无关部件),确保每一步后 其 依然正常,直到只剩下最小系统所需部件,即获得了最小51单片机开发板。

    推荐阅读