历史上的今天
返回首页

历史上的今天

今天是:2025年05月18日(星期日)

正在发生

2018年05月18日 | AVR的bootloader的设置

2018-05-18 来源:eefocus

一些注意事项:

1.熔丝位的烧写:BOOTRST要进行编程,这样单片机在复位后自动跳转到bootloader区执行bootloader的代码,然后要根据自己bootloader的大小设置boot区的的熔丝位:具体设置如下图,这里我选择的是1024大小(注意1代表为编程,0代表已编程):

  

 

 

2.设置引导区锁定位:为了保护bootloader不被应用程序修改或者擦除,所以要对其进行保护,Atmega提供了熔丝位的保护方式,具体设置如下图(我设置的为BLB0为11,BLB1为00):

 

3.Flash页的设定:因flash的擦除和写入是按照页来操作的,看手册上说是1页有128个字节,但实际调试时候发现需要一次写入256个字节才有效的,如果按照128来写入,会将第二个128的内容覆盖掉第一个128字节的内容,那就按照实际为准了。

4.Xmodem协议的注意事项:具体的xmodem不在本文叙述了,只说一下要注意的地方,校验和是可以选择的,我使用的是checksum(就是单纯的累加),也可以选择16为的CRC,这个是根据单片机第一次返回的响应字节来确定的,另外当包的序列号超过255时会重新从0开始而不是从1开始,首次传输是从1开始编号的,这个要注意一下。

5.文件格式文件:和网上好多人一样,遇到同样的文件,在bootloader将应用程序烧写到flash中后,发现没有执行应用程序,开始我也以为是跳转不成成功的问题,上网查了半天都没找到答案,都是问问题的L。没办法,靠自己了,一致纳闷,烧写到Flash中的程序和原始文件内容一模一样怎么就不能执行啊,后来偶然用烧写软件打开要烧写的固件,发现内容和我用16进制工具打开的并不一样,Oh my god,豁然想到了问题的关键,原来用ICC生成的hex文件是intel hex形式,Intel HEX文件是由一行行符合Intel HEX文件格式的文本所构成的ASCII文本文件。在Intel HEX文件中,每一行包含一个HEX记录。这些记录由对应机器语言码和/或常量数据的十六进制编码数字组成。Intel HEX文件通常用于传输将被存于ROM或者EPROM中的程序和数据。大多数EPROM编程器或模拟器使用Intel HEX文件。而实际存储到Flash中的数据是要从这个HEX文件中提取出来,然后在通过xmodem发送到单片机,不要直接发送ICC生成的HEX文件,转换的话可以自己写一个小工具或者上网搜类似功能的工具,为了省事,我找了一个叫hex2bin的工具做的转换。


推荐阅读

史海拾趣

FUJI公司的发展小趣事

在电子行业中,虽然直接名为“FUJI”的公司可能不是最为人所熟知的(注意:富士通实际上使用的是“Fujitsu”而非“FUJI”,但考虑到FUJI可能与富士电机等相关联,以下将基于这些相关公司进行阐述),但富士电机及其关联企业,如富士通和富士施乐,在电子行业的发展历程中都有着举足轻重的地位。以下是五个与这些公司相关的故事:

1. 富士电机的诞生与多元化发展

故事概述:富士电机控股公司(FUJI ELECTRIC HOLDINGS CO., LTD.)成立于1923年,是古河电器工业与德国西门子资本技术合作的产物。起初,公司以电气机器制造为主,后逐渐扩展到电机系统、电子设备和零售终端设备等多个领域。富士电机不仅在电机领域保持领先地位,还积极拓展至自动贩卖机等领域,并在该领域占据日本国内第一的市场份额。其发展历程展现了日本重电机制造商的多元化战略和全球视野。

2. 富士通的通讯与计算机技术崛起

故事概述:富士通(Fujitsu)的前身可以追溯到1875年成立的Furukawa Denko公司,后与西门子合作成立富士电机制造株式会社。富士通在通讯和计算机技术方面的崛起尤为显著。1935年,富士通信机制造公司成立,标志着富士通在通讯领域的正式起步。随后,公司不断推出创新产品,如FACOM系列计算机、第一台出口海外的计算机等,奠定了其在全球计算机市场的地位。富士通对通讯和计算机技术的持续投入和创新,使其成为电子行业的重要力量。

3. 富士施乐的打印机与复印技术革新

故事概述:富士施乐(Fuji Xerox)成立于1962年,是富士胶片和美国施乐合资成立的企业。自成立以来,富士施乐在打印机和复印技术方面取得了显著成就。公司不仅推出了多款具有创新性的打印和复印产品,还积极应对市场变化,不断调整业务结构。例如,在数字化浪潮中,富士施乐推出了多款支持网络打印和多功能一体的产品,满足了市场的新需求。其技术革新和市场策略调整,使富士施乐在打印和复印技术领域保持领先地位。

4. 富士通与FANUC的工业机器人合作

故事概述:富士通与FANUC的合作是电子行业与工业机器人技术结合的一个典型案例。FANUC作为富士通的子公司之一,自上世纪70年代成立以来,便致力于工业机器人的研发和生产。富士通与FANUC的紧密合作,不仅推动了工业机器人技术的快速发展,还促进了电子行业生产线的自动化和智能化升级。两家公司的合作成果广泛应用于汽车制造、电子组装等多个领域,为工业生产带来了革命性的变化。

5. 富士电机在绿色能源领域的探索

故事概述:随着全球对绿色能源和可持续发展的重视,富士电机也开始在绿色能源领域进行积极探索。公司不仅致力于高效能电机的研发和生产,还积极推动可再生能源技术的应用。例如,富士电机在太阳能和风能领域推出了多款创新产品和技术解决方案,为可再生能源的普及和应用做出了积极贡献。其绿色能源战略不仅符合全球发展趋势,也为公司未来的可持续发展奠定了坚实基础。

以上五个故事分别展现了富士电机及其关联企业在电子行业不同领域的发展历程和成就。这些公司凭借持续的技术创新和市场拓展,成为了电子行业的重要参与者和推动者。

安纳森(AnaSem)公司的发展小趣事

在电子行业中,产业链上下游之间的合作至关重要。安纳森深知这一点,因此始终致力于与产业链上下游的企业建立紧密的合作关系。通过与晶圆厂家、IC设计企业等合作伙伴的深入合作,安纳森不仅获得了稳定的原材料供应和技术支持,还共同研发出了多款具有市场竞争力的新产品。这种合作共赢的发展模式不仅提升了整个产业链的竞争力,也为安纳森的长远发展注入了源源不断的动力。

这五个故事只是安纳森在电子行业发展中可能经历的一部分,实际上,其发展历程可能更加复杂和丰富。无论如何,安纳森凭借其创新的技术、全球化的视野、环保的理念、对侵权问题的积极应对以及产业链合作的深化,已经成为了电子行业中一颗璀璨的明星。

Cal-Chip Electronics公司的发展小趣事

在XXXX年,Cal-Chip Electronics公司迎来了一次技术创新的重大突破。公司研发团队成功开发出了一款具有高效能、低功耗特点的新型芯片,这款芯片在行业内引起了广泛关注。凭借这一技术创新,公司迅速扩大了市场份额,并与多家知名企业建立了长期合作关系。这一突破不仅提升了公司的技术水平,也为公司的长远发展奠定了坚实基础。

Advanced Microelectronic Products Inc公司的发展小趣事

随着公司业务的不断发展,AMP公司意识到与国际伙伴合作的重要性。于是,公司积极寻求与国际知名企业的战略合作,通过技术交流和资源共享,共同开发新型电子产品。这些国际合作不仅提升了AMP公司的技术水平,还进一步提升了其品牌影响力和国际知名度。公司因此获得了更多海外市场的认可,实现了业务的全球化布局。

ASI [ASI Semiconductor, Inc]公司的发展小趣事

ASI Semiconductor, Inc.(以下简称ASI)的故事始于1979年,当时它在美国加利福尼亚州北好莱坞成立。作为一家初创企业,ASI专注于设计、供应和市场先进的高功率、脉冲射频晶体管和托盘。在早期,ASI以其独特的技术视角和市场需求洞察,迅速在行业中站稳了脚跟。通过与摩托罗拉、飞利浦等公司的合作,ASI开始为商用航空电子设备、雷达、医疗和工业应用提供高质量的射频功率晶体管。这种初步的成功为ASI日后的快速发展奠定了坚实的基础。

D1 International Inc公司的发展小趣事

作为一家有社会责任感的企业,D1 International Inc公司始终关注环境保护和可持续发展。公司在生产过程中采取环保措施,减少废弃物排放,同时积极推广绿色电子产品。此外,D1 International Inc公司还积极参与社会公益活动,回馈社会,为构建和谐社会贡献自己的力量。

问答坊 | AI 解惑

有没有人用过ATT77C101B这个指纹传感器的?

    这个传感器的使用有什么需要注意的地方,还有时序问题,更重要的是他有没有技术支持,怎么在网上根本找不到它的资料呢,难道用的人太少么…

查看全部问答>

S3C2440相关移植详细资料谁有?共享一下

   小弟初学ARM9,网上移植资料繁多,但多不大仔细..希望大侠们多多指导,谢谢共享(*^__^*) …

查看全部问答>

一道计算机原理题

读出一个共有10000个柱面,每柱面有4个道,每道有2048个扇区的磁盘需要多少时间?假设首先从0道的0扇区开始读出整个磁道,然后从1道的0扇区再读出整个磁道,并继续下去。旋转时间为10ms,相邻柱面间的寻道时间为1ms,最坏情况是20ms。柱面内换道的 ...…

查看全部问答>

请教一下,sigma 8622能否跑wince?

我想在 sigma8622上跑wince,不知行不行啊?…

查看全部问答>

C语言怎么实现多任务的?

用习惯了汇编的时间片轮,突然想起来,C怎么实现的呢? 要求不多高,假如按键,LED,数码管,红外解码要求同时处理 怎么解决这个问题的?继续在中断设标志然后片轮任务吗? 还是说有什么好的解决办法呢? 单片机而已,没有操作系统的任务调配。 ...…

查看全部问答>

应急灯原理图(使用MAX1924V和MAX8970A)

各位XDJM:   附件是我设计的应急灯原理图,请大家指点!…

查看全部问答>

stm32rtc晶振起振问题

做了一批板子,焊了几个 外部晶振32.768是6p的  刚开始可以起振  可是放了一段时间 就很难起振了  偶尔可以  外部接的10pf电容  什么问题呀这是  为什么一会好一会坏呢 while ...…

查看全部问答>

用DSP 28335编程序的时候,内存空间不足怎么办?

我用DSP编程序的时候,因为要进行矩阵运算,所以要建一个10000左右的float数组,但是总是报错,说page 1 的RAML4 空间不足。可是把RAML4的length增加,然后把RAML5-6的其实地址相应延后后,有会出现烧录后的warning提示,并且使用不能。经过试验,R ...…

查看全部问答>

LM3S811无法下载

最近用TI的EK-LM3S811的开发板,然后想用LM flash programmer 下载程序,但是总是没法下载,总是提示 unable to connect to target,不知各位有没遇到这个问题呢?…

查看全部问答>

【我与TI的结缘】+Ti MSP430

      第一次接触TI的430单片机是在大一暑假期间,由于实验室的学长参加TI的电子设计,申请了许多的MSP430G2553 launchpad的开发板,之后就给我们大一都发了已块,自此就开始学习MSP430单片机,launchpad的确是不错的开发板, ...…

查看全部问答>