1.使用單個(gè)光端口通信來更新固件的方法,包括:
在單個(gè)光端口接收到由發(fā)送器傳輸?shù)墓碳聠?dòng)碼時(shí)檢測(cè)電池的電壓,所述單個(gè)光端口既能夠傳輸數(shù)據(jù)又能夠接收數(shù)據(jù);
如果所檢測(cè)的電池的電壓等于或大于預(yù)定參考電壓,則通過所述單個(gè)光端口向所述發(fā)送器傳輸固件相關(guān)信息;
接收由所述發(fā)送器所傳輸?shù)呐c更新模式相對(duì)應(yīng)的更新數(shù)據(jù),所述更新模式根據(jù)所述固件相關(guān)信息來確定;
將所接收的更新數(shù)據(jù)存儲(chǔ)在存儲(chǔ)設(shè)備的預(yù)定存儲(chǔ)區(qū)域中;
如果所存儲(chǔ)的更新數(shù)據(jù)是第一模式中的更新數(shù)據(jù),則存儲(chǔ)與先前版本固件有關(guān)的回退信息并且使用所述更新數(shù)據(jù)執(zhí)行到新版本固件的更新,在所述第一模式中固件能夠被還原;以及
如果所存儲(chǔ)的更新數(shù)據(jù)是第二模式中的更新數(shù)據(jù),則使用所述更新數(shù)據(jù)來更新所述先前版本固件的預(yù)定數(shù)據(jù),在所述第二模式中所述先前版本固件的預(yù)定數(shù)據(jù)被更新。
2.如權(quán)利要求1所述的方法,其中:
所述更新數(shù)據(jù)包括更新模式信息、總的包大小和有效校驗(yàn)碼;以及
所述存儲(chǔ)包括:
通過所述有效校驗(yàn)碼來校驗(yàn)所述更新數(shù)據(jù)的有效性;以及
如果所述更新數(shù)據(jù)有效,則將所述更新數(shù)據(jù)存儲(chǔ)在所述預(yù)定存儲(chǔ)區(qū)域中。
3.如權(quán)利要求2所述的方法,還包括:當(dāng)在校驗(yàn)所述有效性期間出現(xiàn)錯(cuò)誤或者所述更新數(shù)據(jù)無效時(shí),增加錯(cuò)誤數(shù)據(jù)的數(shù)量;以及如果增加的錯(cuò)誤數(shù)據(jù)的數(shù)量等于或小于預(yù)定指定的錯(cuò)誤數(shù)量,則向所述發(fā)送器傳輸包錯(cuò)誤和請(qǐng)求重傳更新數(shù)據(jù)的重傳請(qǐng)求碼。
4.如權(quán)利要求1所述的方法,其中:
所述固件相關(guān)信息包括所述先前版本固件的版本信息以及在其中能夠存儲(chǔ)數(shù)據(jù)的空區(qū)域的大??;以及
所述更新模式由所述先前版本固件的版本信息和所述空區(qū)域的大小來確定。
5.如權(quán)利要求1所述的方法,其中,在所述單個(gè)光端口切換至接收模式之后,當(dāng)所述發(fā)送器向連接至所述單個(gè)光端口的LED輻射與所述固件更新啟動(dòng)碼和所述更新數(shù)據(jù)相對(duì)應(yīng)的光時(shí),依照通過輻射光在發(fā)光二極管(LED)中生成的光生電動(dòng)勢(shì)的電壓而接收所述固件更新啟動(dòng)碼和所述更新數(shù)據(jù)。
6.如權(quán)利要求1所述的方法,其中,依照載波式和閃爍式中的一個(gè)來接收所述固件更新啟動(dòng)碼和所述更新數(shù)據(jù),所述載波式使用輸入至預(yù)定載波的高區(qū)與低區(qū)之間的時(shí)間比,所述閃爍式使用多個(gè)時(shí)間之間的區(qū)之間的時(shí)間比,在所述的多個(gè)時(shí)間處連接至所述單個(gè)光端口的發(fā)光二極管(LED)接收由所述發(fā)送器輻射的光。
7.能夠使用單個(gè)光端口通信來更新固件的微控制器(MCU),包括:
電池電壓檢測(cè)電路,配置成在通過單個(gè)光端口接收到由發(fā)送器傳輸?shù)墓碳聠?dòng)碼時(shí)檢測(cè)電池的電壓,所述單個(gè)光端口既能夠傳輸數(shù)據(jù)又能夠接收數(shù)據(jù);
信息傳輸電路,配置成如果所檢測(cè)的電池的電壓等于或高于預(yù)定參考電壓,則通過所述單個(gè)光端口向所述發(fā)送器傳輸固件相關(guān)信息;
存儲(chǔ)單元,配置成:
接收由所述發(fā)送器所傳輸?shù)呐c更新模式相對(duì)應(yīng)的更新數(shù)據(jù),所述更新模式根據(jù)所述固件相關(guān)信息來確定;以及
將所接收的更新數(shù)據(jù)存儲(chǔ)在預(yù)定存儲(chǔ)區(qū)域中;以及
固件更新控制電路,配置成:
如果所存儲(chǔ)的更新數(shù)據(jù)是第一模式中的更新數(shù)據(jù),則存儲(chǔ)與先前版本固件有關(guān)的回退信息并且使用所述更新數(shù)據(jù)執(zhí)行到新版本固件的更新,在所述第一模式中固件能夠被還原;以及
如果所存儲(chǔ)的更新數(shù)據(jù)是第二模式中的更新數(shù)據(jù),則使用所述更新數(shù)據(jù)更新所述先前版本固件的預(yù)定數(shù)據(jù),在所述第二模式中所述先前版本固件的預(yù)定數(shù)據(jù)被更新。
8.如權(quán)利要求7所述的MCU,其中:
所述更新數(shù)據(jù)包括更新模式信息、總的包大小和有效校驗(yàn)碼;以及
所述固件更新控制電路還配置成:
通過所述有效校驗(yàn)碼來校驗(yàn)所述更新數(shù)據(jù)的有效性;以及
如果所述更新數(shù)據(jù)有效,則將所述更新數(shù)據(jù)存儲(chǔ)在所述預(yù)定存儲(chǔ)區(qū)域中。
9.如權(quán)利要求8所述的MCU,其中,所述固件更新控制電路還配置成:
當(dāng)在校驗(yàn)所述有效性期間出現(xiàn)錯(cuò)誤或者所述更新數(shù)據(jù)無效時(shí),增加錯(cuò)誤數(shù)據(jù)的數(shù)量;以及
如果增加的錯(cuò)誤數(shù)據(jù)的數(shù)量等于或小于預(yù)定指定的錯(cuò)誤數(shù)量,則向所述發(fā)送器傳輸包錯(cuò)誤和請(qǐng)求重傳更新數(shù)據(jù)的重傳請(qǐng)求碼。
10.如權(quán)利要求7所述的MCU,其中:
所述固件相關(guān)信息包括所述先前版本固件的版本信息以及在其中能夠存儲(chǔ)數(shù)據(jù)的空區(qū)域的大??;以及
所述更新模式由所述先前版本固件的版本信息以及所述空區(qū)域的大小來確定。
11.如權(quán)利要求7所述的MCU,還包括數(shù)據(jù)接收器電路,配置成:在所述單個(gè)光端口切換成接收模式之后,當(dāng)所述發(fā)送器向連接至所述單個(gè)光端口的LED輻射與所述固件更新啟動(dòng)碼和所述更新數(shù)據(jù)相對(duì)應(yīng)的光時(shí),依照通過輻射光在發(fā)光二極管(LED)中生成的光生電動(dòng)勢(shì)的電壓而接收所述固件更新啟動(dòng)碼和所述更新數(shù)據(jù)。
12.如權(quán)利要求7所述的MCU,還包括數(shù)據(jù)接收器電路,配置成:依照載波式和閃爍式中的一個(gè)來接收所述固件更新啟動(dòng)碼和所述更新數(shù)據(jù),所述載波式使用輸入到預(yù)定載波的高區(qū)與低區(qū)之間的時(shí)間比,所述閃爍式使用多個(gè)時(shí)間之間的區(qū)之間的時(shí)間比,在所述的多個(gè)時(shí)間處連接至所述單個(gè)光端口的發(fā)光二極管(LED)接收所述發(fā)送器輻射的光。