找回密码
 注册

扫一扫,访问微社区

四月份直播课程计划
查看: 41|回复: 0

何为单片机烧写?这三种方式你pick哪种?

[复制链接]
  • TA的每日心情
    奋斗
    2019-11-19 15:09
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2020-3-26 10:19 | 显示全部楼层 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    本帖最后由 fish1352 于 2020-3-26 10:21 编辑 * _) m4 C( \: s7 _, @
    $ {: T# D  u0 R8 S: z: l+ Z
    为什么叫烧写呢?
    " S0 d, s; K# b: r3 S. S# V早期一般是将调试好的单片机程序写入到 ROM、 EPROM 中,这种操作就像刻制光盘一样,实在高电压方式下写入,PROM 是一次性写入,存储内部发生变化,有些线路或元件就被烧断,不可再恢复,所以叫做烧写,EPROM 可以使用紫外线将原来写入的内容擦除,重新烧写,目前大量采用 EEPROM,是可以电擦写的存储器。
    7 i3 f1 l" z' j# \6 n% B# c& z9 M6 u, U; ]
    单片机启动时会直接运行这些芯片中的程序,完成既定的功能。
    8 C# q* @" u; R0 y* g
    ( a/ W+ l0 S/ y' H3 u5 I所谓烧写,其实就是对单片机中的 rom 进行擦写。现代工艺下,rom 已经可以进行多次擦写,但在早期,rom 只能一次性设计好,例如早期的 PLC,把二极管上的丝烧了后就永久编码出 1。而我们知道,单片机程序经编译连接后传给机器便是机器语言,简而言之就是一大堆 1 和 0。在少些过程中,我们将烧不烧一大堆 MOS 管和 BJT 的丝或连不连上通道来表示这些 1 和 0。1 V  R0 B5 Z5 ]5 b8 q) P9 X

    - v0 q* Q9 C; Z

    $ u! B. j4 _1 T2 o* _! o% H" r7 s " n) Y$ O+ X" O, t
    烧写的三种方式:
    ( I/ g0 T# r; J8 U8 e1. 把单片机当做一个 ROM 芯片,早期的单片机都是如此。将单片机放在通用编程上编程时,就像给 28C256 这样的 ROM 中写程序的过程一样。只是不同的单片机使用的端口,编程用的时序不一样。
    9 F  U: m0 j6 d . h$ b9 C; L) g5 |
    2. 像 AT89S52 或 AVR 单片机一样,在单片机上有 SPI 接口,这时用专用的下载线将程序烧写到单片机中。这时不同的是,单片机的 CPU 除了执行单片机本身的指令之外,还能执行对 ROM 进行操作的特殊指令,如 ROM 擦除、烧写和校验指令。在编程 ROM 时,下载线先通过传输这些指令给 CPU 执行 (擦除 ROM、读入数据、烧写 ROM、和校验 ROM),这样完成对单片机的 ROM 的烧写。此外,现在普遍使用的 JTAG 仿真器也是这样,单片机的 CPU 能执行 JTAG 的特殊指令,完成对 ROM 的烧写操作。
    1 x3 D6 E! f& j. q# P
    & H8 J4 t" E( U' Z3. 引导程序,即单片机中已经存在了一个烧写程序。启动单片机时首先运行这程序,程序判断端口状态,如果符合“要烧写 ROM”的状态存在,就从某个端口(串口、SPI 等等)读取数据,然后写入到单片机的 ROM 中。如果没有“要烧写 ROM”的状态,就转到用户的程序开始执行。像 AVR 单片机的 bootloader 方式、STC 的串口下载方式,还有其他单片机的串口编程等等都是这样。+ A$ e+ m9 c$ t9 E& i

    8 ^7 I: [( r+ W. R『本文转载自网络,版权归原作者所有,如有侵权请联系删除』
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号 )

    GMT+8, 2020-4-8 15:40 , Processed in 0.078125 second(s), 21 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19925233282

    快速回复 返回顶部 返回列表