导航:首页 > 操作系统 > bootloader单片机

bootloader单片机

发布时间:2024-12-24 17:30:39

① 为什么51单片机不要写bootloader

因为51单片机运行的一般是前后台程序,程度一般比较小,而且单片机程序一般直接烧拆陪进程序存储器里,执行的时候直接从程序存储器里执行,无需旅丛将他们搬到RAM中去,旅镇蠢并且一般51单片机RAM都比较小,所以无需写BOOTLOADER.

② 关于单片机的BOOTLOADER 是怎么闹了

bootloader是单片机生产厂家固话在单片里面的引导程序。再你烧写单片机程序的时候,为什么能通过串口写进去,就是上电后运行的的是引导程序(51系列),里面的引导程序通过串口接收数据,把你写的文件写进单片机flash中。

③ 如何用bootloader调试pic单片机

在PIC系列单片机中,只有PIC18系列和PIC16F87X系列的单片机才有IAP功能,才能够使用BootLoader功能。下面只介绍PIC18的BootLoader,PIC16F87X的BootLoader与它类似。

1 BootLoader程序的工作原理

BootLoader是一段引导程序,在单片机上电/复位后在用户程序之前先运行。运行后判断当前是否需要进入升级状态。如果不需要升级,就直接运行 Flash中原有的程序;如果需要升级,首先擦除旧的程序,然后从串口接收用户程序,同时写入Flash中。接收数据时,需要进行校验,保证接收到的数据是正确的,避免将错误的程序写入到芯片中。

PIC18单片机只有一块Flash,可以在Flash的任何位置擦写(甚至可以将BootLoader自身擦除);而51单片机一般都是两块Flash,只能够从一块Flash上擦写另一块Flash,而不能擦写自身。

BootLoader程序原则上是可以放在整个程序空间中的任何位置的,但是为了简单方便、具有通用性和尽量减少对用户程序的影响,使用了从0x00开始的一段程序空间。

BootLoader程序可以多种方式获取数据,包括串口、并口、I2C、SPI、USB等;但是从实际使用来看,使用串口无疑是最方便的。

为了使得用户程序可以获得最大的程序空间,就需要BootLoader程序尽可能的简短。在这里,Microchip和HI-TECH都将 BootLoader程序设计为小于200H个字节(100H个字)。使用0x00~0x1FF这个区域还有一个重要原因是,这个地址的空间有特殊的写保护特性。

PIC18单片机虽然有多个中断源,但只支持两级中断,有两个中断向量,分别位于0x08和0x18;而 BootLoader程序占用了0x00~0x1FF的空间,这意味着需要重新定位中断向量,使新的中断向量指向用户的中断程序,这样才能保证正常运行用户程序的中断程序。

2 程序的使用方法

(1) HI-TECH的BootLoader程序

在HI-TECH的PICC18编译器的examples文件夹下,有一个Bootldr子文件夹,里面就是HI-TECH的BootLoader程序。这是一个完整的程序,可以直接进行编译,编译后的HEX可以用编程器下载到芯片中。

(2) 用户系统的要求

如果需要使用BootLoader,要求用户系统中有一个RS232串口可以和计算机进行通信。

(3) 程序的配置

下面是程序的主要参数,如果它们设置得不正确,会影响程序的使用。

VERB0:冗余模式,有更多的提示,但是会占用更多的程序空间,建议不用。
BOOT_TIMEOUT:等待超时的时间,0~9s(再长了也没有意义),默认为5s。
BAUD:串口通信的波特率,默认是9 600。
FOSC:用户系统的时钟频率,默认是4 MHz。
NINE:通信是否使用第9位数据位,默认不使用。
FILL_BYTE:程序空间擦除时使用的填充数据,默认值是0xFF。
PROG_START:用户程序的起始位置,默认是0x200。
其他的参数可以先不用管,在需要时再修改,它们不影响通信和下载。

(4) 程序的编译

有两种方法对BootLoader程序进行编译:

命令行方式。使用命令行时,典型的用法是:
picc18 -8f452 bootldr.c -o -zg -noerrata
上面的最后一个参数 -noerrata是PIC18Fxx2系列单片机需要的,若是其他型号,就不用加入;而参数 -18f452是指定单片机的型号,如果是其他型号,就修改为实际使用的型号。

② 使用MPLAB IDE。使用MPLAB IDE时,首先按照正常方式建立一个新的工程文件,选择工程文件目录,然后加入HI-TECH的Samples\Bootldr目录下文件 bootldr.c和bootldr.h。建立工程文件时,选择MCU的型号为实际使用的型号,选择C编译器为HI-TECH的PICC18编译器。

④ 什么是引导程序加载器为什么单片机上会有有什么用

实际上就是Bootloader,
1,自启动模式:在这种模式下,bootloader从目标机上的某个固态存储设备上将操作系统加载到RAM中运行,整个过程并没有用户的介入。

2,交互模式:在这种模式下,目标机上的bootloader将通过串口或网络等通行手段从开发主机(Host)上下载内核映像等到RAM中。可以被bootloader写到目标机上的固态存储煤质中,或者直接进入系统的引导。也可以通过串口接收用户的命令。

阅读全文

与bootloader单片机相关的资料

热点内容
抓包如何知道是不是加密接口 浏览:246
prebuild增加编译文件 浏览:955
遗憾值算法反复逸代 浏览:800
ps里一个文件夹怎么创建动作 浏览:682
直接能编译的语言 浏览:152
捷途app怎么样才可以控制车 浏览:509
androidmenu布局 浏览:887
苹果手机备忘录怎么视频加密不了 浏览:79
棋盘覆盖实验算法描述 浏览:6
怎么看移动硬盘加密 浏览:893
神舟装linux 浏览:81
系统命令程序 浏览:448
全世界通用解压方法 浏览:69
蚂蚁森林自动收能量源码 浏览:16
职业中专编程课程都学什么 浏览:249
甜橙生活app在哪里用 浏览:525
云计算服务器是怎么组成的 浏览:976
解压时发现文件损坏 浏览:797
linuxsortk 浏览:838
添加邮箱输入pop服务器地址 浏览:665