1、引言
随着信息化,智能化,网络化的发展,嵌入式系统技术也将获得广阔的发展空间。嵌入式技术全面展开,目前已成为通信和消费类产品的共同发展方向。在通信领域,数字技术正在全面取代模拟技术。在广播电视领域,美国已开始由模拟电视向数字电视转变,欧洲的DVB(数字电视广播)技术已在全球大多数国家推广。数字音频广播(DAB)也已进入商品化试播阶段。而软件、集成电路和新型元器件在产业发展中的作用日益重要。所有上述产品中,都离不开嵌入式系统技术。象前途无可计量的维纳斯计划生产机顶盒,核心技术就是采用32位以上芯片级的嵌入式技术。在个人领域中,嵌入式产品将主要是个人商用,作为个人移动的数据处理和通讯软件。本文提出了利用LPC2148的SD卡实现嵌入式系统升级的设计方案。
2、总体系统升级方案设计
厂家生产出产品后,用户购买回去使用,当设备出现了系统漏洞或者用户不满足现有功能而提出更多需求时,就要对系统升级或者维护系统功能。厂家只需将SD卡取回,把更新后的程序放入SD卡中,然后发放给用户,用户只需把SD卡插入终端设备。即可达到系统升级的目的。图1给出厂商与用户之间的交流流程图。图2给出整个系统设计流程图。
按图1所示,厂商与用户交流过程如下:
(1)厂商将一个类似Boot loader的程序通过ISP方式,将其下载到Flash中,如图2所示的位置。
(2)将升级程序放入SD卡中,随产品一起出厂。
(3)用户拿到SD卡后,将其插入SD卡槽,终端设备开始工作。
(4)用户使用一段时间后,若出现问题或者需要升级、维护时.只需将SD卡返回厂家即可。
(5)厂家将升级后的程序放入返回的SD卡中,再返回给用户.或者厂家直接再发放SD卡给用户,而无需用户返回SD卡。
(6)用户拿到SD卡后,将其直接插入终端设备卡后,则可达到升级的目的。
出厂前,通过ISP编程方式烧入一个类似于Boot loader的程序。该程序的实现大致分为3个步骤:
(1)SPI模式下的SD卡底层驱动;
(2)读出SD卡中的系统程序,并放入指定的Flash地址段中:
(3)跳转到指定的Flash地址段,执行升级后的系统。
在用户插入SD卡前,程序不断判断SD卡是否插入。用户插入SD卡后,程序首先驱动SD卡,使其能正常工作,然后读取SD卡中的升级程序,并将其放入指定的Flash地址段中。最后,跳转到指定段,开始工作。厂家可根据需要,任意安排升级程序放置的位置。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉