一. 基本概念 1.IAP IAP是In Application Programming的首字母縮寫,IAP是用戶自己的程序在運(yùn)行過程中對User Flash的部分區(qū)域進(jìn)行燒寫,目的是為了在產(chǎn)品發(fā)布后可以方便地通過預(yù)留的通信口對產(chǎn)品中的固件程序進(jìn)行更新升級。 通常在用戶需要實(shí)現(xiàn)IAP功能時(shí),即用戶程序運(yùn)行中作自身的更新操作,需要在設(shè)計(jì)固件程序時(shí)編寫兩個(gè)項(xiàng)目代碼,第一個(gè)項(xiàng)目程序不執(zhí)行正常的功能操作,而只是通過某種通信管道(如USB、USART)接收程序或數(shù)據(jù),執(zhí)行對第二部分代碼的更新;第二個(gè)項(xiàng)目代碼才是真正的功能代碼。 2.Bootloader 在上述IAP的概念中,bootloader就是其第一個(gè)項(xiàng)目程序。bootloader主要實(shí)現(xiàn)的功能:從串口、USB等媒介接收數(shù)據(jù);存儲和搬運(yùn)數(shù)據(jù);程序跳轉(zhuǎn)等功能。 3.App程序 更多技術(shù)方面的交流可加q2232894713 對IAP概念中,對第二個(gè)項(xiàng)目代碼的一種稱呼。 4.Ymodem YModem協(xié)議是由XModem協(xié)議演變而來的,每包數(shù)據(jù)可以達(dá)到1024字節(jié),是一個(gè)非常高效的文件傳輸協(xié)議。
|