ടെക്സസ് ഇൻസ്ട്രുമെന്റ്സ് CC254x 2.4GHz ബ്ലൂടൂത്ത് സിസ്റ്റം ഓൺ ചിപ്പ്

ടെക്സസ് ഇൻസ്ട്രുമെന്റ്സ് CC254x 2.4GHz ബ്ലൂടൂത്ത് സിസ്റ്റം ഓൺ ചിപ്പ്

ഉദ്ദേശം

TI BLE സ്റ്റാക്കിനൊപ്പം പ്രവർത്തിക്കുന്ന ഒരു ഡെവലപ്പറെ പ്രൊപ്രൈറ്ററി TI OAD പ്രോ വിജയകരമായി നടപ്പിലാക്കാൻ പ്രാപ്തമാക്കുക എന്നതാണ് ഈ ഡോക്യുമെന്റിന്റെ ഉദ്ദേശ്യം.file ഏതൊരു ഉപകരണത്തിലെയും പ്രവർത്തനംampCC254x SOC ഉപയോഗിക്കുന്ന പ്രൊപ്രൈറ്ററി ആപ്ലിക്കേഷൻ.

ഫംഗ്ഷണൽ ഓവർview

ഒരു പ്രോഗ്രാമിംഗ് ഹെഡർ വഴി ഫിസിക്കൽ ആക്‌സസിന്റെ ചെലവില്ലാതെ വിന്യസിച്ചിരിക്കുന്ന ഉപകരണങ്ങളിൽ കോഡ് അപ്‌ഡേറ്റ് ചെയ്യുന്നതിനുള്ള മൂല്യം വർദ്ധിപ്പിക്കുന്ന പരിഹാരമായി നൽകിയിരിക്കുന്ന ഒരു വിപുലീകൃത സ്റ്റാക്ക് സവിശേഷതയാണ് OAD. OAD എന്നത് ഒരു ക്ലയന്റ്-സെർവർ മെക്കാനിസമാണ്, അതിൽ ഒരു ഉപകരണം OAD ഇമേജ് സെർവറായും (OAD മാനേജർ) മറ്റേ ഉപകരണം OAD ഇമേജ് ക്ലയന്റായും (OAD ലക്ഷ്യം) പ്രവർത്തിക്കുന്നു.

അനുമാനങ്ങൾ

  1. BIM ഒരിക്കലും അപ്ഡേറ്റ് ചെയ്യേണ്ടതില്ല.

നിർവചനങ്ങൾ, ചുരുക്കെഴുത്തുകൾ, ചുരുക്കെഴുത്തുകൾ

കാലാവധി നിർവ്വചനം
API ആപ്ലിക്കേഷൻ പ്രോഗ്രാമിംഗ് ഇൻ്റർഫേസ്
BIM ബൂട്ട് ഇമേജ് മാനേജർ – റീസെറ്റ് ഇന്ററപ്റ്റ് വെക്റ്റർ സ്വീകരിക്കുകയും ഏത് സാധുവായ ഇമേജ് (ഇമേജ്-എ അല്ലെങ്കിൽ ഇമേജ്-ബി) പ്രവർത്തിപ്പിക്കണമെന്ന് കൈകാര്യം ചെയ്യുകയും ചെയ്യുന്ന ബൂട്ട് കോഡ്.
DL ഡൗൺലോഡ്-ലോഡ് ചെയ്തത് - OAD നടപടിക്രമം വഴി ഡൗൺലോഡ് ചെയ്‌ത് അസ്ഥിരമല്ലാത്ത RC-ഇമേജ് ഏരിയയിൽ സംഭരിച്ചിരിക്കുന്ന ഒരു RC-ഇമേജ് കാൻഡിഡേറ്റ്.
ഇൻസ്റ്റാൾ_ഡിഐആർ ഇൻസ്റ്റാൾ ചെയ്ത പതിപ്പിന് പ്രത്യേകമായുള്ള പ്രോട്ടോക്കോൾ സ്റ്റാക്ക് കോഡിന്റെ ഇൻസ്റ്റലേഷൻ ഡയറക്ടറി പാത്ത്, പക്ഷേ ഇതുപോലെ ഒന്ന്:
C:\Texas Instruments\BLE-CC254x-1.2.1
ഐ.എസ്.ആർ. ഇന്ററപ്റ്റ് സർവീസ് റൂട്ടീൻ - ഏതെങ്കിലും പ്രവർത്തനക്ഷമമാക്കിയ ഇന്ററപ്റ്റ് ലഭിക്കുമ്പോൾ സിപിയു ഭൗതികമായി അതിലേക്ക് ചാടുന്ന കോഡ്. അങ്ങനെ ഈ കോഡിന്റെ എക്സിക്യൂഷൻ പശ്ചാത്തല കോഡിന്റെ സാധാരണ എക്സിക്യൂഷനെ തടസ്സപ്പെടുത്തുന്നു.
ഐവിഇസി ഇന്ററപ്റ്റ് വെക്റ്ററുകൾ - ISR-കൾക്കായി CPU ഭൗതികമായി വെക്റ്ററുകൾ ഉപയോഗിക്കുന്ന ISR ജമ്പ് നിർദ്ദേശങ്ങളുടെ പട്ടിക.
എൽ.പി.ആർ.എഫ് ലോ പവർ RF - TI-യിലെ ഒരു ബിസിനസ് യൂണിറ്റ്.
NV അസ്ഥിരമല്ലാത്ത സംഭരണം
OSAL ഓപ്പറേറ്റിംഗ് സിസ്റ്റം അബ്‌സ്ട്രാക്ഷൻ ലെയർ
OA ഓവർ-ദി-എയർ - ഒരു പാക്കറ്റ് സ്നിഫർ ഉപയോഗിച്ച് കാണാൻ കഴിയുന്ന ഒരു RF ട്രാൻസ്മിഷൻ.
ഒ.ബി.എൽ OAD ബൂട്ട് ലോഡർ – റീസെറ്റ് ഇന്ററപ്റ്റ് വെക്റ്റർ സ്വീകരിച്ച് നിലവിലുള്ള ഒരു സാധുവായ RC-ഇമേജ് പ്രവർത്തിപ്പിക്കുന്നതോ ഒരു DL-ഇമേജ് ഇൻസ്റ്റന്റിയേറ്റ് ചെയ്യുന്നതോ ആയ ബൂട്ട് കോഡ്.
OAD ഓവർ-ദി-എയർ ഡൗൺലോഡ് – ഒരു പ്രൊപ്രൈറ്ററി പ്രോfile ഒരു OAD- പ്രാപ്തിയുള്ള ഉപകരണത്തിലേക്ക് ഒരു കാൻഡിഡേറ്റ് RC ഇമേജ് ഓവർ-ദി-എയർ ട്രാൻസ്മിറ്റ് ചെയ്യുന്നതിനായി TI നൽകിയതാണ്.
PM പവർ-മോഡ് - വൈദ്യുതി ഉപഭോഗം കുറയ്ക്കുന്നതിനുള്ള കുറഞ്ഞ പവർ അല്ലെങ്കിൽ സ്ലീപ്പ് മോഡ്.
SOC ചിപ്പിലുള്ള സിസ്റ്റം
എസ്.എൻ.വി ലളിതമായ നോൺ-വോൾട്ടൈൽ മെമ്മറി മാനേജർ.
TI ടെക്സസ് ഇൻസ്ട്രുമെൻ്റ്സ് ഇൻകോർപ്പറേറ്റഡ്

റഫറൻസുകൾ

  1. BLE സ്റ്റാക്ക് ഫങ്ഷണൽ സ്പെസിഫിക്കേഷൻ v1_2, ആവശ്യകതകൾ TBD, 2-1, 2-3, 2-4
  2. ANSI C കോഡിംഗ് സ്റ്റാൻഡേർഡ് (F8W-2005-0002).

റിവിഷൻ ചരിത്രം

തീയതി ഡോക്യുമെൻ്റ് റിവിഷൻ പ്രാബല്യത്തിലുള്ള വിഭാഗങ്ങൾ മാറ്റങ്ങളുടെ സംഗ്രഹം
06/12/2012 0.1 എല്ലാം പുതിയ പ്രമാണം.
10/20/2012 0.2 എല്ലാം OBL ഭാഗങ്ങൾ നീക്കം ചെയ്തു.
11/27/2012 0.3 എല്ലാം എഡിറ്റ് ചെയ്ത GATT ആർക്കിടെക്ചർ.
1/31/2013 1.0 എല്ലാം അന്തിമ തിരുത്തലുകൾ.

ഡിസൈൻ നിയന്ത്രണങ്ങൾ

ബാഹ്യ നിയന്ത്രണങ്ങൾ / സവിശേഷതകൾ

ലഭ്യമായ ഇന്റേണൽ മെമ്മറിയുടെ പകുതിയിൽ ആപ്ലിക്കേഷൻ ഇമേജ് ഉൾക്കൊള്ളാൻ കഴിയുന്നില്ലെങ്കിൽ, ആർ‌സി-ഇമേജ് സംഭരിക്കുന്നതിന് ബാഹ്യ എൻ‌വി മെമ്മറി നൽകണം; ഇത് നടപ്പിലാക്കുന്നതിനുള്ള മാർഗ്ഗങ്ങൾ ഈ പ്രമാണത്തിന്റെ പരിധിക്കപ്പുറമാണ്.

ആന്തരിക നിയന്ത്രണങ്ങൾ / ആവശ്യകതകൾ

OAD ഇമേജ് പൂർണ്ണവും സമഗ്രവുമായ ഒരു BLE സ്റ്റാക്ക് ആപ്ലിക്കേഷൻ ആയിരിക്കണം (അതായത് സ്റ്റബ് ആപ്ലിക്കേഷൻ ലെയർ മാത്രം അയയ്ക്കുന്നത് പിന്തുണയ്ക്കുന്നില്ല).

OAD ഡിസൈൻ

OAD സിസ്റ്റം അവസാനിച്ചുview

ചിത്രം 1-ൽ ചിത്രീകരിച്ചിരിക്കുന്ന OAD സിസ്റ്റത്തിൽ രണ്ട് ഉപകരണങ്ങൾ ഉൾപ്പെടുന്നു: OAD ടാർഗെറ്റ്, OAD മാനേജർ. OAD ടാർഗെറ്റിൽ മൂന്ന് ഇമേജ് ഏരിയകൾ അടങ്ങിയിരിക്കുന്നു: ബൂട്ട് കോഡ് (ബൂട്ട് ഇമേജ് മാനേജർ), രണ്ട് വ്യത്യസ്ത ആപ്ലിക്കേഷൻ ഇമേജ് ഏരിയകൾ. നോൺ-റിലോക്കേറ്റബിൾ 0 റീസെറ്റ് ഇന്ററപ്റ്റ് വെക്റ്ററിനെ ഇന്റർസെപ്റ്റ് ചെയ്യുന്നതിന് ബൂട്ട് കോഡ് പേജ് 8051 ഉൾക്കൊള്ളണം. പ്രോഗ്രാം ഇമേജുകൾക്കൊന്നും അവസാന പേജായ ലോക്ക്-ബിറ്റ്സ് പേജ് ഉൾക്കൊള്ളാൻ കഴിയില്ല, കാരണം അത് പ്രോഗ്രാമാമാറ്റിക്കായി എഴുതാനോ മായ്ക്കാനോ കഴിയില്ല.
ഇമേജ് എ, ​​ഇമേജ് ബി എന്നീ രണ്ട് ആപ്ലിക്കേഷൻ ഇമേജുകളും ബാങ്ക് 0 ലെ ബാങ്ക് ചെയ്യാത്ത കോഡിന്റെ ഒരു ഭാഗം ഉൾക്കൊള്ളണം. ഇത് താഴെ വിവരിച്ചിരിക്കുന്നു. ഓവർ-ദി-എയർ അയയ്ക്കുന്ന ചിത്രവും OAD പ്രക്രിയ നിർവഹിക്കുന്ന ഒരു ആപ്ലിക്കേഷനും OAD മാനേജറിൽ അടങ്ങിയിരിക്കുന്നു.
ചിത്രം 1: സംക്ഷിപ്ത വിവരണംview OAD സിസ്റ്റത്തിന്റെ
OAD സിസ്റ്റം അവസാനിച്ചുview

OAD ലക്ഷ്യം കഴിഞ്ഞുview

ബൂട്ട് ഇമേജ് മാനേജർ (BIM) ഉപയോഗിച്ച് OAD നടപ്പിലാക്കുമ്പോൾ സിസ്റ്റം സന്ദർഭം താഴെയുള്ള ചിത്രം കാണിക്കുന്നു. BIM ഡിസൈൻ രണ്ട് സാധുവായ ഇമേജുകൾ പ്രവർത്തിപ്പിക്കാൻ തയ്യാറായിരിക്കാനുള്ള വഴക്കം നൽകുന്നു, അവ ഏത് ഇമേജ് പ്രവർത്തിപ്പിക്കണമെന്ന് പിംഗ്-പോംഗ് ചെയ്യാൻ കഴിയും. രണ്ട് ഇമേജുകൾക്കും മറ്റൊന്നിന്റെ OAD എക്സിക്യൂട്ട് ചെയ്യാൻ കഴിയും. വളരെ വലിയ അന്തിമ ആപ്ലിക്കേഷൻ ഇമേജ് ലഭിക്കുന്നതിന് വളരെ ചെറുതും സ്ഥിരമായി സ്ഥിരമായി താമസിക്കുന്നതുമായ "OAD-മാത്രം ഇമേജ്" ഉണ്ടായിരിക്കാനുള്ള സാധ്യതയും BIM അനുവദിക്കുന്നു. രണ്ട് ഇമേജുകൾക്കും മറ്റൊന്നിന്റെ OAD എക്സിക്യൂട്ട് ചെയ്യാൻ കഴിയുമ്പോൾ, ഇമേജ്-ബി പ്രവർത്തിപ്പിക്കുമ്പോൾ ഉപയോക്താവ് ഇമേജ്-എയുടെ ഡൗൺലോഡ് ശ്രദ്ധാപൂർവ്വം നിർമ്മിക്കുകയും കൈകാര്യം ചെയ്യുകയും വേണം, തിരിച്ചും, ഇവിടെ ഇമേജ്-എയും ഇമേജ്-ബിയും വ്യക്തമായി നിർമ്മിച്ച് വ്യത്യസ്തമായി പ്രവർത്തിപ്പിക്കാൻ ലിങ്ക് ചെയ്തിരിക്കുന്നു. മറ്റ് ഗുണങ്ങൾtagBLE-സ്റ്റാക്കും OAD ടാർഗെറ്റ് പ്രോയും മാത്രം നടപ്പിലാക്കുന്ന സ്ഥിര താമസക്കാരനായ ഇമേജ്-എ ഉണ്ടായിരിക്കുന്നതിന്റെ e.file അന്തിമ ഉപഭോക്താവിന്റെ ഇമേജ്-ബിയിൽ OAD ടാർഗെറ്റ് പ്രോ ഉൾപ്പെടുത്തേണ്ടതില്ല എന്നതാണ്file ഫ്ലാഷ് വലുപ്പം സംരക്ഷിക്കുന്നു, ഇമേജ്-എയ്ക്ക് INTVEC പേജും ലോക്ക് ബിറ്റ് പേജും ഉൾക്കൊള്ളാൻ കഴിയുന്നിടത്ത്, കൂടുതൽ ഫ്ലാഷ് വലുപ്പം ലാഭിക്കുന്നു. അവസാനമായി, പുതിയ ഇമേജ്-ബി അപ്‌ഡേറ്റുകളുടെ OAD നടപ്പിലാക്കാൻ മാത്രം ആവശ്യമായ BLE സ്റ്റാക്ക് ഫംഗ്ഷണാലിറ്റിയുടെ ഏറ്റവും കുറഞ്ഞ ഉപസെറ്റ് ഉപയോഗിച്ച് ഇമേജ്-എ നിർമ്മിക്കാൻ കഴിഞ്ഞേക്കും, അങ്ങനെ ഇമേജ് ബിയിലേക്കുള്ള സ്ഥലം കൂടുതൽ വർദ്ധിപ്പിക്കുന്നു.
ചിത്രം 2: ഒരു BIM ഉപയോഗിച്ചുള്ള OAD ടാർഗെറ്റ് സന്ദർഭ ഡയഗ്രം.
OAD ലക്ഷ്യം കഴിഞ്ഞുview

പ്രവർത്തന വിവരണം

പ്രവർത്തിക്കാൻ തയ്യാറായ ഇമേജ് നിർണ്ണയിക്കുന്നതിനുള്ള (പ്രിഫറൻഷ്യൽ ക്രമത്തിൽ) ഒരു പരാജയ-സുരക്ഷിത സംവിധാനം നൽകുന്നതിന്, പേജ് 0-ൽ സ്ഥിരമായി താമസിക്കുന്ന ബൂട്ട് കോഡ് ഉണ്ടായിരിക്കണമെന്ന് OAD പരിഹാരം ആവശ്യപ്പെടുന്നു. ഇമേജ്-എയും/അല്ലെങ്കിൽ ഇമേജ്-ബിയും പ്രൊപ്രൈറ്ററി TI OAD ടാർഗെറ്റ് പ്രോ നടപ്പിലാക്കണം.file.

ഒരു ഇമേജ് സാധുതയുള്ളതാണോ എന്ന് പരിശോധിക്കുന്നതിനായി, CRC, CRC-ഷാഡോ എന്നറിയപ്പെടുന്ന ഒരു പ്രത്യേക 4-ബൈറ്റ് ഏരിയ പരിശോധിക്കപ്പെടും. 2-ബൈറ്റ് CRC, 2-ബൈറ്റ് CRC ഷാഡോയുമായി പൊരുത്തപ്പെടുന്നെങ്കിൽ, ചിത്രം ഉടനടി പ്രവർത്തിപ്പിക്കാൻ കമ്മീഷൻ ചെയ്യപ്പെടും. CRC പൂജ്യമല്ലെങ്കിൽ, 0xFFFF ന്റെ മായ്ച്ചുകളഞ്ഞ ഫ്ലാഷ് മൂല്യമല്ലെങ്കിൽ, CRC-ഷാഡോ 0xFFFF ന്റെ മായ്ച്ചുകളഞ്ഞ ഫ്ലാഷ് മൂല്യമാണെങ്കിൽ, മുഴുവൻ ഇമേജിലും CRC കണക്കാക്കാം (ഈ 4-ബൈറ്റ് ഏരിയ ഉൾപ്പെടുത്താതെ) കൂടാതെ ചിത്രം ഇൻസ്റ്റന്റൈസ് ചെയ്യണോ അതോ അടുത്ത റീസെറ്റിൽ ഇമേജ് പ്രവർത്തിപ്പിക്കാൻ തയ്യാറാണെന്ന് കമ്മീഷൻ ചെയ്യണോ എന്ന് നിർണ്ണയിക്കാൻ ഫലം സാധുവായ CRC യുമായി താരതമ്യം ചെയ്യാം.

ബൂട്ട് ഇമേജ് മാനേജർ (BIM)

8051 ഇന്ററപ്റ്റ് വെക്റ്ററുകളുടെ സ്ഥിരമായ സ്ഥിരം ലക്ഷ്യമെന്ന നിലയിൽ, റീസെറ്റ് വെക്റ്ററിനെ തടസ്സപ്പെടുത്തുന്നതിനും ഹാർഡ്‌വെയറിനെ സുരക്ഷിതമായ അവസ്ഥയിലേക്ക് മാറ്റുന്നതിനും ഇമേജ്-ബിയുടെയും/അല്ലെങ്കിൽ ഇമേജ്-എയുടെയും/അല്ലെങ്കിൽ നിയുക്ത ലെഡ്ജർ പേജിലെ എൻട്രികളുടെയും സ്റ്റാറ്റസ് അടിസ്ഥാനമാക്കി ഏറ്റവും ഉചിതമായ നടപടി സ്വീകരിക്കുന്നതിനും BIM ഒരു പരാജയ-സുരക്ഷിത സംവിധാനം നൽകുന്നു.

സാധാരണയായി, ഇമേജ്-ബി ആദ്യം റൺ ചെയ്യാനുള്ള സന്നദ്ധത പരിശോധിക്കും, തുടർന്ന് ഇമേജ്-എ പരിശോധിക്കും, എന്നാൽ ലെഡ്ജർ പേജിലെ ഒരു എൻട്രി അല്ലെങ്കിൽ ഒരു GPIO-യുടെ ക്രമീകരണം അനുസരിച്ച് ഈ ക്രമം മാറ്റാൻ കഴിയും. ഇഷ്ടപ്പെട്ട ചിത്രം റൺ ചെയ്യാൻ തയ്യാറല്ലെങ്കിൽ, മറ്റ് ചിത്രം പരിശോധിക്കുക. രണ്ട് ചിത്രങ്ങളും റൺ ചെയ്യാൻ തയ്യാറല്ലെങ്കിൽ, BIM ഡിസൈനിൽ ഇമേജ് ഇൻസ്റ്റന്റേഷൻ സംവിധാനം ഇല്ല, അതിനാൽ ഹാർഡ്‌വെയർ സുരക്ഷിതവും കുറഞ്ഞ പവർ സ്റ്റേറ്റിലേക്ക് മാറ്റി PM3 നൽകുക.

ബൂട്ട് ഇമേജ് മാനേജർ ISR ലേറ്റൻസി

ഒപ്റ്റിമൈസ് ചെയ്ത അസംബ്ലി കോഡും ഫാസ്റ്റ് ആക്‌സസ് IDATA ഏരിയ മെമ്മറിയും ഉപയോഗിച്ചാണ് BIM-ന്റെ IVEC-റിലേ ലോജിക് നടപ്പിലാക്കിയിരിക്കുന്നതെങ്കിലും, ഇന്ററപ്റ്റ് വെക്‌ടർ ഇമേജ്-എ INTVEC ടേബിളിലേക്ക് ഫോർവേഡ് ചെയ്യണോ അതോ ഇമേജ്-ബി INTVEC ടേബിളിലേക്ക് ഫോർവേഡ് ചെയ്യണോ എന്ന് ഓരോ ISR-ന്റെയും ഓരോ സംഭവത്തിലും BIM തിരഞ്ഞെടുക്കണം. ഇന്ററപ്റ്റിന് ഈ അധിക ചെലവ് 20-MHz-ൽ 32 സൈക്കിളുകൾ അല്ലെങ്കിൽ 625 നാനോ-സെക്കൻഡ് ആണ്.

ഡൗൺലോഡ്-കോഡ് ചിത്രം

ഇത് OAD മാനേജരുടെ ഫ്ലാഷിലേക്ക് സീരിയലായി ലോഡ് ചെയ്ത് OAD ടാർഗെറ്റിലെ ഒരു ഇമേജ് മാറ്റിസ്ഥാപിക്കുന്നതിനായി ഓവർ-ദി-എയറിൽ അയയ്ക്കുന്ന ഒരു ചിത്രമാണ്. ഒരു സാധുവായ ഇമേജ് ആകുന്നതിന്, CRC-ഷാഡോ 0xFFFF ന്റെ മായ്ച്ച മൂല്യത്തിന് തുല്യമായിരിക്കണം കൂടാതെ CRC പൂജ്യത്തിനോ 0xFFFF ക്കോ തുല്യമാകരുത് (തീർച്ചയായും, ഇത് CRC യുടെയും ഷാഡോയുടെയും 4 ബൈറ്റുകൾ ഉൾപ്പെടുത്താതെ മുഴുവൻ ഇമേജിലും കണക്കാക്കിയ CRC ആയിരിക്കണം). ഈ ചിത്രം നിർദ്ദിഷ്ട ഇമേജ് A/B ഏരിയയിൽ പ്രവർത്തിപ്പിക്കുന്നതിന് ലിങ്ക് ചെയ്തിരിക്കണം, അതിനാൽ ഇൻ-പ്ലേസിൽ പ്രവർത്തിപ്പിക്കാൻ കഴിയില്ല.

ചിത്രങ്ങൾ എ, ബി

ഒരു ഇമേജ് (അതായത് A) മറ്റൊന്നിനെ OAD ചെയ്യണമെങ്കിൽ (അതായത് B), ആദ്യത്തെ ഇമേജിൽ (A) OAD ടാർഗെറ്റ് പ്രോ അടങ്ങിയിരിക്കണം.file. ഈ ചിത്രങ്ങൾ ഒരു പ്രത്യേക ലിങ്കറിനെ ആശ്രയിക്കും. file ഓരോ ചിത്രത്തിനും കോഡ് ഏരിയകൾ ശരിയായി റിസർവ് ചെയ്യുന്നതും ഡൗൺലോഡ് ചെയ്ത കോഡ് അതത് ഇമേജ് ഏരിയയിൽ പ്രവർത്തിപ്പിക്കുന്നതിന് ലിങ്ക് ചെയ്യുന്നതുമാണ്. അത്തരം ലിങ്കിംഗിൽ BIM പ്രതീക്ഷിക്കുന്ന സ്ഥലങ്ങളിൽ INTVEC പട്ടികയും CRC & CRC ഷാഡോയും സ്ഥാപിക്കുന്നത് ഉൾപ്പെടുന്നു. ഒരു ഉപകരണം ഉപയോഗിച്ച് നേരിട്ട് പ്രോഗ്രാം ചെയ്ത ശേഷം BIM പരാജയപ്പെടാത്ത രീതിയിൽ പരിഷ്കരിക്കാൻ കഴിയാത്തതിനാൽ, OAD ഇമേജ് അപ്‌ഡേറ്റ് വഴി ഈ ലൊക്കേഷനുകൾ ഒരിക്കലും മാറ്റാൻ കഴിയില്ലെന്ന് ശ്രദ്ധിക്കുക.

ഇമേജ്-എ കൺസെപ്റ്റ്

ഇമേജ്-എയിൽ ഒരു സമർപ്പിത ലിങ്കർ ഉണ്ട്. file ഇമേജ്-ബിയിൽ നിന്ന് ഇത് വ്യത്യസ്തമാണ്, കാരണം ഈ കോഡ് ഡൗൺലോഡ് ചെയ്യപ്പെടും (അല്ലെങ്കിൽ ഭൗതികമായി പ്രോഗ്രാം ചെയ്യപ്പെടും) കൂടാതെ സ്ഥലത്ത് തന്നെ പ്രവർത്തിക്കും. ഇമേജ്-എയ്ക്ക് ഒരു നിശ്ചിത അളവിലുള്ള നോൺ-ബാങ്കഡ് കോഡ് സ്പേസ് ആവശ്യമാണ്, അത് ഒടുവിൽ പ്രവർത്തിക്കുന്ന ഒരു സ്റ്റാക്ക് അല്ലെങ്കിൽ കോഡ് ബേസ് എത്ര കുറച്ചാലും. അതിനാൽ ഇമേജ്-എ ഏകപക്ഷീയമായി തിരഞ്ഞെടുത്തിരിക്കുന്നത് ഒരു നോൺ-തുടർച്ചയായ വിലാസ സ്പെയ്‌സ് ഉള്ള കോഡ് ഇമേജാണ്, അത് ബാങ്കഡ് അല്ലാത്തതും ബാങ്കഡ് അല്ലാത്തതുമായ കോഡ് സ്‌പെയ്‌സുകൾക്കിടയിൽ ഒരു തുടർച്ചയുള്ള ഇമേജ്-ബിയെ ഉൾക്കൊള്ളുന്നു (ചിത്രം 1 കാണുക). ഇക്കാരണത്താൽ, ഇമേജ്-എ എന്നത് OAD ടാർഗെറ്റ് പ്രോ മാത്രം പ്രവർത്തിപ്പിക്കുന്നതിനായി നിർമ്മിച്ച ചിത്രമായിരിക്കണം.file, അന്തിമ BLE ആപ്ലിക്കേഷൻ നടപ്പിലാക്കുന്ന കോഡ് പ്രവർത്തിപ്പിക്കുന്ന ഇമേജ്-ബിക്ക് ലഭ്യമായ ഇടം പരമാവധിയാക്കുന്നതിന്, ഇമേജ്-എയിലും ഇമേജ്-ബിയിലും വ്യത്യസ്ത കോഡ് ഉണ്ടായിരിക്കാൻ ഡിസൈൻ തിരഞ്ഞെടുക്കുകയാണെങ്കിൽ. അത്തരമൊരു സാഹചര്യത്തിൽ, ഇമേജ്-എയ്‌ക്കായി അനുവദിച്ചിരിക്കുന്ന സൂപ്പർ കാര്യക്ഷമവും അതിനാൽ വളരെ വിലപ്പെട്ടതുമായ നോൺ-ബാങ്ക്ഡ് കോഡ് സ്‌പെയ്‌സ് സാധ്യമായ ഏറ്റവും കുറഞ്ഞ പേജുകളായി കുറയ്ക്കണം, കാരണം ഇമേജ്-എ ഒരു OAD യുടെ അപൂർവ സന്ദർഭങ്ങളിൽ മാത്രമേ പ്രവർത്തിക്കൂ, ഇമേജ്-ബി ഉൽപ്പന്നത്തിന്റെ ആയുസ്സ് മുഴുവൻ ഫലപ്രദമായി പ്രവർത്തിക്കുന്നു.

CC254x-നുള്ള ഓവർ എയർ ഡൗൺലോഡിനുള്ള ഡെവലപ്പറുടെ ഗൈഡ്

സാധ്യമായ ഏറ്റവും കുറഞ്ഞ പേജുകൾ, കാരണം ഇമേജ്-എ ഒരു OAD യുടെ അപൂർവ സന്ദർഭങ്ങളിൽ മാത്രമേ പ്രവർത്തിക്കൂ, ഇമേജ്-ബി ഫലപ്രദമായി ആജീവനാന്തം പ്രവർത്തിക്കുന്നു.
ഉൽപ്പന്നം.

ഇമേജ്-ബി ആശയം

അന്തിമ BLE ആപ്ലിക്കേഷൻ നടപ്പിലാക്കുന്നതിനായി ഇമേജ്-ബി ഏകപക്ഷീയമായി ഒപ്റ്റിമൈസ് ചെയ്യുന്നതിനായി തിരഞ്ഞെടുത്തിരിക്കുന്നു, കൂടാതെ OAD ടാർഗെറ്റ് പ്രോ നടപ്പിലാക്കേണ്ടി വന്നേക്കാം അല്ലെങ്കിൽ ചെയ്യേണ്ടതില്ലായിരിക്കാം.file. മുകളിൽ സൂചിപ്പിച്ചതുപോലെ, ഇമേജ്-എയുടെ രണ്ട് ഭാഗങ്ങൾക്കിടയിലുള്ള ഒരു തുടർച്ചയായ വിലാസ സ്ഥലത്ത് പ്രവർത്തിക്കുന്നതിന് ഈ ചിത്രം ലിങ്ക് ചെയ്‌തിരിക്കുന്നു. ഇമേജ്-ബി പ്രവർത്തിക്കാനുള്ള സാധ്യത ഇമേജ്-എ പ്രവർത്തിക്കുന്നതിന്റെ സാധ്യതയേക്കാൾ കൂടുതലാണെങ്കിൽ, ബാങ്ക് ചെയ്യാത്ത കോഡ് രണ്ടിനുമിടയിൽ തുല്യമായി വിഭജിക്കണം (തീർച്ചയായും, ബിഐഎം ഉപയോഗിക്കുന്ന പേജ് 0 കുറവാണ്) - ഇത് സമർപ്പിത ലിങ്കറിനുള്ള സ്ഥിരസ്ഥിതി ക്രമീകരണമാണ്. fileരണ്ട് ചിത്രങ്ങൾക്കും s ആണ്. ഈ പ്രമാണത്തിലെ അവസാന വ്യായാമമായി, ഡിഫോൾട്ട് ലിങ്കർ fileഇമേജ്-എയിൽ നിന്ന് തുല്യമായ കോഡ് സ്പേസ് എടുത്ത് ഇമേജ്-ബിക്ക് കൂടുതൽ കോഡ് സ്പേസ് നൽകുന്ന തരത്തിൽ s മാറ്റപ്പെടും.

ബാഹ്യ ഇന്റർഫേസുകൾ

പ്രൊപ്രൈറ്ററി TI OAD ടാർഗെറ്റ് പ്രോfile BLE സ്റ്റാക്കിനുള്ള നിർവചനം ഈ പ്രമാണത്തിൽ പിന്നീട് നൽകിയിരിക്കുന്നു. CC254x SOC-യിൽ തന്നെ സഹകരിച്ച് പ്രവർത്തിക്കുന്ന രണ്ട് ഫങ്ഷണൽ യൂണിറ്റുകൾ ബൂട്ട് കോഡും റൺ-കോഡും ആണ്. ഈ രണ്ട് ചിത്രങ്ങളും സ്വതന്ത്രമായി സമാഹരിച്ച് അവയുടെ IAR പ്രോജക്റ്റുകൾ വഴി ബന്ധിപ്പിച്ചിരിക്കുന്നു. രണ്ടിനും ഇടയിലുള്ള ബാഹ്യ ഇന്റർഫേസ് CRC & CRC-ഷാഡോയും വീണ്ടും സ്ഥാപിച്ച INTVEC പട്ടികയും മാത്രമാണ്.

താഴെപ്പറയുന്ന ഘടനകളുടെ ആപേക്ഷിക സ്ഥാനം ഏകപക്ഷീയമായി തിരഞ്ഞെടുത്തിരിക്കുന്നു, കൂടാതെ s യുടെ പരിധിയിൽ സൗകര്യപ്രദവുമാണ്ample ആപ്ലിക്കേഷനുകൾ. . ഏതെങ്കിലും സ്ഥാനം മാറ്റണമെങ്കിൽ, #defines ഉം ബന്ധപ്പെട്ട എല്ലാ ലിങ്കറും files കളും അതിനനുസരിച്ച് മാറ്റണം. BIM-ലെ ഇൻ-ലൈൻ അസംബ്ലി നിർദ്ദേശങ്ങൾക്കും മെമ്മറിയായി മാപ്പ് ചെയ്ത കോൺസ്റ്റന്റുകളുടെ സ്ഥാനത്തിനും ലോഡിംഗിനും പ്രത്യേക ശ്രദ്ധ നൽകുക.

CRC

ഓരോ ഇമേജിനും, ഇമേജ് CRC, IAR കംപൈലർ കണക്കാക്കുകയും ചിത്രത്തിന്റെ ലിങ്കർ നിർവചിച്ചിരിക്കുന്നതുപോലെ, കോഡിനായി നീക്കിവച്ചിരിക്കുന്ന ഫ്ലാഷ് ഏരിയ ആരംഭിക്കുന്നതിന് മുമ്പ് ഒരു മെമ്മറി ലൊക്കേഷനിൽ സ്ഥാപിക്കുകയും ചെയ്യുന്നു. fileഇമേജ് എ യുടെ കാര്യത്തിൽ ഇത് താഴെ കാണാം:

-D_CODE_BEG=0x0830

-Z(CODE)CHECKSUM=0x0800-0x0801

ഇമേജ് ഹെഡർ

ഇമേജ് ഹെഡർ ഘടന ഇതായിരിക്കും:

typedef struct {
uint16 crc1; // CRC-shadow must be 0xFFFF.
uint16 ver; // User-defined Image Version Number
uint16 len; // Image length in 4-byte blocks (i.e. HAL_FLASH_WORD_SIZE blocks).
uint8 uid [4]; // User-defined Image Identification bytes.
uint8 res [4]; // Reserved space for future use.
} img_hdr_t;

ഈ ഇമേജ് ഹെഡർ ഇമേജ് CRC ഘടനയ്ക്ക് തൊട്ടുതാഴെയായി സ്ഥാപിച്ചിരിക്കുന്നു, അതുവഴി CRC-യും CRC ഷാഡോയും മെമ്മറിയിൽ പരസ്പരം അടുത്തായിരിക്കാൻ അനുവദിക്കുന്നു. സ്ഥാനം മാറ്റണമെങ്കിൽ, #defines ഉം ബന്ധപ്പെട്ട എല്ലാ ലിങ്കറും files കളും അതിനനുസരിച്ച് മാറ്റണം. ലൊക്കേഷൻ ഒരു HAL_FLASH_WORD_SIZE അതിർത്തിയിലായിരിക്കണം. ഒരു OAD ടാർഗെറ്റ് ഉപകരണവുമായി കണക്ഷൻ സ്ഥാപിക്കുമ്പോൾ OAD മാനേജറിൽ നിന്ന് ഈ ഇമേജ് ഹെഡർ അയയ്ക്കുന്നു. അതുവഴി OAD മാനേജറിൽ ലഭ്യമായ ചിത്രത്തിന്റെ വിശദാംശങ്ങൾ കണക്റ്റിംഗ് ഉപകരണത്തെ (OAD ടാർഗെറ്റ്) അറിയിക്കും. ഈ കണക്റ്റിംഗ് ഉപകരണം പിന്നീട് ഒരു OAD പ്രക്രിയ ആരംഭിക്കുകയോ അല്ലെങ്കിൽ ആരംഭിക്കാതിരിക്കുകയോ ചെയ്യും. ഇമേജ് ഹെഡർ ഉപയോഗിക്കുന്ന ഈ പ്രക്രിയ OAD ടാർഗെറ്റ് പ്രോയിൽ വിശദീകരിച്ചിരിക്കുന്നു.file വിഭാഗം

INTVECS പട്ടിക

IAR, INTVECS പട്ടിക സൃഷ്ടിക്കുകയും ലിങ്കർ കമാൻഡിൽ ഈ നിർദ്ദേശമനുസരിച്ച് സ്ഥാപിക്കുകയും ചെയ്യുന്നു. file:
-Z(CODE)INTVEC=_CODE_BEG-_CODE_END

മുൻample കോഡും ലിങ്കറും fileആദ്യ ഇമേജ് പേജിൽ INTVEC ടേബിളിന്റെ ഓഫ്‌സെറ്റ് ഓഫ്‌സെറ്റ് പൂജ്യത്തിൽ സ്വേച്ഛാധിപത്യപരമായി സ്ഥാപിച്ചിരിക്കുന്നു.

ഇമേജ് ഹെഡർ പതിപ്പ്

ഒരു ഉപകരണത്തിന് ഒരു OAD സെർവറിൽ നിന്ന് ഒരു OAD പ്രക്രിയ ആരംഭിക്കണമോ എന്ന് നിർണ്ണയിക്കാൻ ഇമേജ് ഹെഡറിന്റെ uint16 'ver' ഫീൽഡ് ഉപയോഗിക്കാം. BIM-ൽ OAD നടപ്പിലാക്കുമ്പോൾ, എല്ലാ ഒറ്റ അക്ക പതിപ്പുകളും ഇമേജ്-ബി ഏരിയയിൽ ഡൗൺലോഡ് ചെയ്യാനും ഇൻ-പ്ലേസിൽ പ്രവർത്തിപ്പിക്കാനും നിർമ്മിച്ചിരിക്കുന്നതുപോലെ ഒരു നമ്പറിംഗ് സ്കീം ഉപയോഗിക്കാൻ ശുപാർശ ചെയ്യുന്നു, അതേസമയം എല്ലാ ഇരട്ട അക്ക പതിപ്പുകളും ഇമേജ്-എ ഏരിയയിൽ ഡൗൺലോഡ് ചെയ്യാനും ഇൻ-പ്ലേസിൽ പ്രവർത്തിപ്പിക്കാനും നിർമ്മിച്ചിരിക്കുന്നു.

ഇമേജ് ഹെഡറിന്റെ നീളം

ഇമേജ് ഹെഡറിന്റെ uint16 'len' ഫീൽഡ് ചിത്രത്തിന്റെ നീളത്തെ HAL_FLASH_WORD_SIZE ബൈറ്റുകളിൽ പ്രതിനിധീകരിക്കുന്നു.

ഇമേജ് ഹെഡർ അറേ

ഇമേജ് ഹെഡറിന്റെ ബൈറ്റ്-അറേകളായ uid [] ഉം res [] ഉം പ്രൊപ്രൈറ്ററി ഉപയോഗത്തിനായി നീക്കിവച്ചിരിക്കുന്നു, കൂടാതെ ഒരു ഡൗൺലോഡ് പ്രക്രിയ ആരംഭിക്കണോ വേണ്ടയോ എന്ന് നിർണ്ണയിക്കാൻ ഒരു ഉപകരണത്തിന് 'ver' ഫീൽഡിനൊപ്പം ഉപയോഗിക്കാം.

ബൂട്ട് കോഡ് നിർമ്മിക്കുന്നു

ബൂട്ട് കോഡ് IAR IDE വഴി വെവ്വേറെ നിർമ്മിച്ച് ഡീബഗ് ചെയ്തതോ പ്രോഗ്രാം ചെയ്തതോ ആണ്. പ്രോജക്റ്റ് ഇവിടെ സ്ഥിതിചെയ്യുന്നു: $INSTALL_DIR\Projects\ble\util\BIM

ക്ലീൻ ഫ്ലാഷ് ഉപയോഗിച്ച് CC254x SOC ആരംഭിക്കുന്നതിന് ഫ്ലാഷ് മായ്ക്കുന്നതിനുള്ള ഡൗൺലോഡ് ഓപ്ഷനാണ് ഡിഫോൾട്ട് കോൺഫിഗറേഷൻ (അങ്ങനെ ക്ലീൻ NV). അടുത്ത വിഭാഗത്തിൽ ഉൽ‌പാദിപ്പിക്കുന്ന OAD ആപ്ലിക്കേഷൻ കോഡ് ഡീബഗ്ഗ് ചെയ്യുന്നതിനോ ഫിസിക്കൽ പ്രോഗ്രാം ചെയ്യുന്നതിനോ മുമ്പ്, ഈ OAD ബൂട്ട് കോഡ് ആദ്യം ഫ്ലാഷിലേക്ക് പ്രോഗ്രാം ചെയ്യണം (എന്നാൽ ഇത് ഒരിക്കൽ മാത്രം, കാരണം, ഇനിപ്പറയുന്ന വിഭാഗത്തിൽ പരാമർശിച്ചിരിക്കുന്നതുപോലെ, ആപ്ലിക്കേഷൻ കോഡിനുള്ള ഡിഫോൾട്ട് ഓപ്ഷൻ തുടർച്ചയായ ഡീബഗ്ഗിംഗിലോ പ്രോഗ്രാമിംഗിലോ ഈ OAD ബൂട്ട് കോഡ് സംരക്ഷിക്കുക എന്നതാണ്).

ദി .ഹെക്സ് file ഈ പ്രോജക്റ്റ് നിർമ്മിക്കുന്ന ബിൽഡ് സ്മാർട്ട് ആർ‌എഫ് പ്രോഗ്രാമർ പോലുള്ള ഒരു ഉപകരണം ഉപയോഗിച്ച് നേരിട്ട് പ്രോഗ്രാം ചെയ്യാൻ കഴിയും. ഈ .hex file .hex-മായി ലയിപ്പിക്കാൻ കഴിയും file ഒരു "സൂപ്പർ" .hex നിർമ്മിക്കുന്നതിനായി ആപ്ലിക്കേഷൻ ഇമേജിന്റെ നിർമ്മാണത്തിൽ നിന്ന് file OAD- പ്രാപ്തമാക്കിയതും പ്രവർത്തിപ്പിക്കാൻ തയ്യാറായതുമായ ആദ്യത്തെ സാധുവായ ആപ്ലിക്കേഷൻ ഇമേജും OAD പ്രക്രിയയുടെ അവസാന ഘട്ടം പൂർത്തിയാക്കാൻ ബൂട്ട് ലോഡറും ഉള്ള ഒരു ഉപകരണത്തിന്റെ ഫാക്ടറി പ്രോഗ്രാമിംഗിനുള്ള രണ്ട് ഇമേജുകളും ഇതിൽ അടങ്ങിയിരിക്കുന്നു.

ഒരു ഇമേജ്-എ & ഇമേജ്-ബി നിർമ്മിക്കൽ

OAD- പ്രാപ്തമാക്കിയ ആപ്ലിക്കേഷൻ ഇമേജ് പിന്തുണയ്ക്കുന്ന BIM-ൽ നിന്ന് വെവ്വേറെ നിർമ്മിച്ച് ലിങ്ക് ചെയ്തിട്ടുണ്ടെങ്കിലും, ഉപകരണത്തിന്റെ ആയുസ്സിൽ ഒരിക്കൽ BIM പ്രോഗ്രാം ചെയ്യപ്പെടുന്നതിനാൽ, BIM-ൽ നിർമ്മിച്ചിരിക്കുന്ന ഇമേജ് ഏരിയകളുടെയും ഇന പ്ലെയ്‌സ്‌മെന്റിന്റെയും (ഉദാ. CRC, INTVECS, ഇമേജ് ഹെഡർ) നിയന്ത്രണങ്ങൾ അത് എന്നെന്നേക്കുമായി പാലിക്കണം. ഇമേജ് A, ഇമേജ് B ഉദാ.ampസിമ്പിൾ BLE പെരിഫറലുകൾക്കായുള്ള CC2541 പ്രോജക്റ്റിലേക്ക് le ടാർഗെറ്റ് ബിൽഡുകൾ ഇതിനകം ചേർത്തിട്ടുണ്ട്.ample ആപ്ലിക്കേഷൻ. എന്നിരുന്നാലും, ഇനിപ്പറയുന്ന ഘട്ടങ്ങൾ ഏതൊരു ആപ്ലിക്കേഷനുമായും പ്രവർത്തിക്കുന്നതിന് അനുയോജ്യമാക്കാം.

  1. പ്രോജക്റ്റ് ⇒ കോൺഫിഗറേഷനുകൾ എഡിറ്റ് ചെയ്യുക ⇒ പുതിയത്… തിരഞ്ഞെടുത്ത് ഒരു പുതിയ ബിൽഡ് ടാർഗെറ്റ് ചേർക്കുക: CC2541-OAD-ImgA. ഇത് യഥാർത്ഥ CC2541 കോൺഫിഗറേഷനെ അടിസ്ഥാനമാക്കിയുള്ളതാണെന്ന് ഉറപ്പാക്കുക.
  2. പുതിയ ബിൽഡ് ടാർഗെറ്റ് ഉടനടി കംപൈൽ ചെയ്യുക. നിലവിലുള്ള ഒരു നല്ല ടാർഗെറ്റ് ബിൽഡിന്റെ കൃത്യമായ പകർപ്പായതിനാൽ ഇത് പിശകുകളോ മുന്നറിയിപ്പുകളോ ഇല്ലാതെ നിർമ്മിക്കുകയും ലിങ്ക് ചെയ്യുകയും വേണം. ഈ ഘട്ടം വിജയിച്ചില്ലെങ്കിൽ, ഘട്ടം 1 മുതൽ പുനരാരംഭിക്കുന്നതിന് മുമ്പ് ആദ്യം യഥാർത്ഥ ബിൽഡ് ടാർഗെറ്റിലും ആപ്ലിക്കേഷനിലുമുള്ള പ്രശ്നങ്ങൾ പരിഹരിക്കുക.
  3. Select Project->Options ⇒ C/C++ Compiler ⇒ Preprocessor ⇒ Defined symbols and add the following 4 new definitions as shown in the figure above: FEATURE_OAD OAD_KEEP_NV_PAGES
    FEATURE_OAD_BIM HAL_IMAGE_A
    OAD പ്രോയിലേക്കുള്ള പാതയും ഉൾപ്പെടുത്തുകfile 'അധിക ഉൾപ്പെടുത്തൽ ഡയറക്ടറികൾ' എന്നതിൽ:
    $PROJ_DIR$\..\..\Profiles\OAD
    PRO തിരഞ്ഞെടുക്കുകFILEഎസ് ⇒ ചേർക്കുക ⇒ ചേർക്കുക Files ഉം oad_target.c ഉം oad_target.h ഉം ചേർക്കുക, താഴെ പറയുന്ന ഡയറക്ടറിയിൽ നിന്ന് oad.h ഉം ചേർക്കുക:
    INSTALL_DIR\Projects\ble\Profiles\OAD
  4. OAD പ്രോ പ്രവർത്തനക്ഷമമാക്കുകfile ആപ്ലിക്കേഷനിൽ, മറ്റ് BLE Pro എവിടെയായിരുന്നാലും OAD_ Add Service() ഫംഗ്‌ഷനിലേക്ക് ഒരു കോൾ ചേർത്തുകൊണ്ട്fileകൾ സജീവമാക്കി. ഒരു മുൻampഅപ്പോൾ, താഴെ കാണിച്ചിരിക്കുന്നതുപോലെ ലളിതമായ BLE Peripheral.c മൊഡ്യൂളായ Simple BLE Peripheral_ Init() ഫംഗ്ഷനിലാണ് ഇത് ചെയ്യുന്നത്:
    ലളിതമായ പ്രോfile_ സേവനം ചേർക്കുക( GATT_ALL_SERVICES ); // ലളിതമായ GATT പ്രോfile
    #FEATURE_OAD നിർവചിച്ചിട്ടുണ്ടെങ്കിൽ
    VOID OAD Target_ Add Service(); // OAD പ്രോfile
    #endif
  5. OAD പ്രോയുടെ ഒരു ഉൾപ്പെടുത്തൽ ചേർക്കുകfile തലക്കെട്ട് file ഘട്ടം 4-ൽ ആക്‌സസ് ചെയ്‌ത മൊഡ്യൂളിൽ. ഒരു മുൻ ആയിampഅപ്പോൾ, താഴെ കാണിച്ചിരിക്കുന്നതുപോലെ ലളിതമായ BLE Peripheral.c മൊഡ്യൂളിന്റെ മുകളിലാണ് ഇത് ചെയ്യുന്നത്:
    #FEATURE_OAD നിർവചിച്ചിട്ടുണ്ടെങ്കിൽ
    #“oad.h” ഉൾപ്പെടുത്തുക
    #“oad_target.h” ഉൾപ്പെടുത്തുക
    #endif
  6. പ്രോജക്റ്റ്->ഓപ്ഷനുകൾ ⇒ ബിൽഡ് പ്രവർത്തനങ്ങൾ ⇒ പോസ്റ്റ്-ബിൽഡ് കമാൻഡ് ലൈൻ തിരഞ്ഞെടുത്ത് ഇനിപ്പറയുന്ന വരി ഒട്ടിക്കുക (കാരിയേജ് ഇല്ലാതെ
    തിരികെ വന്ന് ഉദ്ധരണി ചിഹ്നങ്ങൾക്കിടയിൽ കൃത്യമായി ഒരു ഒറ്റ ഇടം ഇടുക):
    "$PROJ_DIR$\..\..\common\CC2540\cc254x_ubl_pp.bat" "$PROJ_DIR$" "Prod UBL"
    "$PROJ_DIR$\CC2541-OAD-ImgA\Exe\Simple BLE Peripheral"
    CC2541 സിമ്പിൾ BLE പെരിഫറൽ ഒഴികെയുള്ള പ്രോജക്ടുകളിൽ പ്രവർത്തിക്കുമ്പോൾ മുകളിലുള്ള ആപേക്ഷിക പാതയിൽ വ്യത്യസ്ത പേരുകൾ ഉണ്ടായിരിക്കുമെന്ന് ശ്രദ്ധിക്കുക.
  7. പ്രോജക്റ്റ്->ഓപ്ഷനുകൾ ⇒ ലിങ്കർ ⇒ കോൺഫിഗ് ⇒ ലിങ്കർ കോൺഫിഗറേഷൻ തിരഞ്ഞെടുക്കുക file തുടർന്ന് താഴെ പറയുന്ന വരി ഒട്ടിക്കുക.
    $PROJ_DIR$\..\..\common\CC2541\cc254x_f256_imgA.xcl
    ചിത്രം 1: അധിക ലിങ്കർ ഔട്ട്പുട്ട് പ്രാപ്തമാക്കുക.
    ഒരു ഇമേജ്-എ & ഇമേജ്-ബി നിർമ്മിക്കൽ
  8. Project->Options ⇒ Linker ⇒ Output ⇒ Format ⇒ മുകളിൽ കാണിച്ചിരിക്കുന്നതുപോലെ C-SPY-നിർദ്ദിഷ്ട അധിക ഔട്ട്‌പുട്ട് അനുവദിക്കുക തിരഞ്ഞെടുക്കുക.
  9. പ്രോജക്റ്റ്->ഓപ്ഷനുകൾ ⇒ ലിങ്കർ ⇒ അധിക ഔട്ട്പുട്ട് ⇒ ഫോർമാറ്റ് തിരഞ്ഞെടുക്കുക.
    OBL അല്ലെങ്കിൽ BIM .hex ഇമേജിന്റെ .hex ഇമേജിൽ കൂട്ടിച്ചേർക്കാൻ കഴിയുന്ന ഒരു .hex ഇമേജ് നിർമ്മിക്കുന്നതിനും അതുവഴി പ്രൊഡക്ഷൻ പ്രോഗ്രാമിംഗിനായി ഒരു സൂപ്പർ .hex ഇമേജ് നിർമ്മിക്കുന്നതിനും:
    'ഇന്റൽ-എക്സ്റ്റെൻഡഡ്' ആകാൻ 'ഫോർമാറ്റ് ⇒ ഔട്ട്‌പുട്ട് ഫോർമാറ്റ്' തിരഞ്ഞെടുത്ത് 'ഔട്ട്‌പുട്ട്' എന്നതിനായുള്ള ബോക്സ് ചെക്ക് ചെയ്യുക. file ⇒ ഡിഫോൾട്ട് ഓവർറൈഡ് ചെയ്ത് ഔട്ട്പുട്ടിനായി '.hex' സഫിക്സ് ഉപയോഗിക്കുക. file.
  10. പ്രോജക്റ്റ്->ഓപ്ഷനുകൾ ⇒ ഡീബഗ്ഗർ ⇒ ടെക്സസ് ഇൻസ്ട്രുമെന്റ്സ് ⇒ ഡൗൺലോഡ് തിരഞ്ഞെടുക്കുക.
    'ഫ്ലാഷ് മായ്ക്കുക' എന്ന ബോക്സ് അൺചെക്ക് ചെയ്യുക, 'മാറ്റമില്ലാത്ത പേജുകൾ നിലനിർത്തുക' എന്ന ബോക്സ് ചെക്ക് ചെയ്യുക, അങ്ങനെ ഈ ആപ്ലിക്കേഷൻ ഇമേജ് IAR-ൽ നിന്ന് ഡൗൺലോഡ് ചെയ്യുമ്പോൾ BIM മായ്ക്കപ്പെടില്ല. നേരിട്ട് പ്രോഗ്രാം ചെയ്തതിനുശേഷം (അതായത് OAD പ്രക്രിയ വഴി അയച്ചതിനുശേഷം അല്ല) ആദ്യമായി ഒരു OAD- പ്രാപ്തമാക്കിയ ചിത്രം പ്രവർത്തിപ്പിക്കുമ്പോൾ, BIM ഇമേജ് CRC പരിശോധിക്കുമ്പോൾ ഏകദേശം 15 സെക്കൻഡ് കാലതാമസം ഉണ്ടാകും.
  11. CC05EM ഉള്ള ഒരു SmartRF2541-ൽ പ്രോജക്റ്റ് നിർമ്മിച്ച് ഡൗൺലോഡ് ചെയ്യുക.

നിങ്ങൾക്ക് ഒരു പോസ്റ്റ്-ബിൽഡ് പിശക് ലഭിച്ചേക്കാം. കാരണം നിങ്ങൾ ഇതുവരെ .sim നിർമ്മിച്ചിട്ടില്ല. file. ഈ ഘട്ടത്തിൽ നിങ്ങൾക്ക് ഈ പിശക് അവഗണിക്കാം.

ആപ്ലിക്കേഷൻ ഇമേജ്-ബി ബിൽഡ് ടാർഗെറ്റ് സൃഷ്ടിക്കുക.

ഇമേജ്-എ ബിൽഡ് ടാർഗെറ്റ് ഉറവിടമായി ഉപയോഗിച്ച് ഇമേജ്-ബി ബിൽഡ് ടാർഗെറ്റ് സൃഷ്ടിക്കുന്നതിന് മുകളിൽ പറഞ്ഞതുപോലെയുള്ള ഘട്ടങ്ങൾ പാലിക്കും. ബിൽഡ് ടാർഗെറ്റിന്റെ പേര് മാറ്റുന്നതിനു പുറമേ, പ്രീപ്രൊസസ്സർ നിർവചനം HAL_IMAGE_A ൽ നിന്ന് HAL_IMAGE_B ലേക്ക് മാറ്റേണ്ടതുണ്ട്, EXE ലേക്കുള്ള പോസ്റ്റ്-പ്രോസസ്സിംഗ് ബിൽഡ് ആക്ഷൻ പാത്ത് മാറ്റേണ്ടതുണ്ട്, കൂടാതെ ലിങ്കർ നിയന്ത്രണവും മാറ്റേണ്ടതുണ്ട്. file ഇമേജ്-ബി യ്ക്കുള്ളതായിരിക്കണം: $PROJ_DIR$\..\..\common\CC2541\cc254x_f256_imgB.xcl

ഇമേജ്-ബി പ്രോജക്റ്റ് കോൺഫിഗറേഷൻ സജ്ജീകരിച്ചുകഴിഞ്ഞാൽ, ഈ പ്രോജക്റ്റും നിർമ്മിച്ച് ഡൗൺലോഡ് ചെയ്യുക. ഈ ഘട്ടത്തിൽ, CC254x-ലെ “സൂപ്പർ” ഹെക്സ് ഇമേജിൽ BIM, ഇമേജ് A, ഇമേജ് B എന്നിവ അടങ്ങിയിരിക്കുന്നു.

വായുവിലൂടെ അയയ്ക്കാൻ ആപ്ലിക്കേഷൻ ഇമേജ് നിർമ്മിക്കുക.

BIM (സെക്ഷൻ 9) പ്രോഗ്രാം ചെയ്തതിനുശേഷം, ഉപയോഗിക്കാത്ത ഫ്ലാഷ് സംരക്ഷിക്കുന്നതിനുള്ള ഓപ്ഷനുകൾ ഉപയോഗിച്ച് ഇമേജുകൾ A, B (സെക്ഷൻ 10) എന്നിവ പ്രോഗ്രാം ചെയ്തതിനുശേഷം (അതുവഴി ഫ്ലാഷിൽ BIM ഓവർ-റൈറ്റ് ചെയ്യാതിരിക്കുക), ഓവർ-ദി-എയറിൽ അയയ്ക്കുന്ന ഇമേജ് നിർമ്മിച്ച് OAD മാനേജറിലേക്ക് ലോഡ് ചെയ്യണം. OAD അപ്‌ഡേറ്റായി ഓവർ-ദി-എയർ അയയ്ക്കുന്നതിനുള്ള ഒരു .bin ഇമേജ് നിർമ്മിക്കാൻ ഇനിപ്പറയുന്ന ഘട്ടങ്ങൾ നിങ്ങളെ അനുവദിക്കും. ഇതിനായി ഉദാഹരണത്തിന്ampപിന്നെ, ഞങ്ങൾ ഒരു ഓവർ-ദി-എയർ ഇമേജ് ബി നിർമ്മിക്കും.

  1. 'ഫോർമാറ്റ് ⇒ ഔട്ട്‌പുട്ട് ഫോർമാറ്റ്' 'സിമ്പിൾ-കോഡ്' ആക്കി മാറ്റുക, 'ഔട്ട്‌പുട്ട്' എന്ന ബോക്സ് ചെക്ക് ചെയ്യരുത്. file ⇒ താഴെ കാണിച്ചിരിക്കുന്നതുപോലെ 'ഡിഫോൾട്ട് ഓവർറൈഡ് ചെയ്യുക'.
    വായുവിലൂടെ അയയ്ക്കാൻ ആപ്ലിക്കേഷൻ ഇമേജ് നിർമ്മിക്കുക.
  2. 'oad_ target.c' മൊഡ്യൂൾ തുറന്ന് താഴെയുള്ള ചിത്രത്തിൽ കാണിച്ചിരിക്കുന്നതുപോലെ ഇമേജ് ഹെഡറിലെ പതിപ്പ് ഫീൽഡ് 0x0000 ൽ നിന്ന് 0x0002 ലേക്ക് മാറ്റുക. BIM ഇമേജ് ഹെഡർ പരിശോധിക്കുമ്പോൾ ഇത് ചിത്രത്തിന്റെ പുതുക്കിയ പതിപ്പിനെ അനുകരിക്കും.
    വായുവിലൂടെ അയയ്ക്കാൻ ആപ്ലിക്കേഷൻ ഇമേജ് നിർമ്മിക്കുക.
  3. ബിൽഡ് ചെയ്യുക, പക്ഷേ ടാർഗെറ്റ് ബിൽഡ് ഡൗൺലോഡ് ചെയ്യരുത്. ഇത് ഔട്ട്‌പുട്ട് ബൈനറി നൽകും. file ഔട്ട്‌പുട്ട് ഡയറക്‌ടറിയിലെ OAD-യ്‌ക്കായി
    ഇവിടെ: INSTALL_DIR\Projects\ble\SimpleBLEPeripheral\CC2541DB\CC2541-OAD\Exe\SimpleBLEPeripheral.bin
    സിമ്പിൾ-കോഡ് (.sim) ഔട്ട്‌പുട്ട് ഉപയോഗിച്ച് നിങ്ങൾ ആദ്യമായി നിർമ്മിക്കുകയാണെങ്കിൽ, ബൈനറിക്കായി നിങ്ങൾ പ്രോജക്റ്റ് രണ്ടുതവണ നിർമ്മിക്കേണ്ടിവരും. file ഉത്പാദിപ്പിക്കാൻ.
  4. SBL ഡെമോ ടൂൾ സമാരംഭിക്കുക (ഡൗൺലോഡ് ചെയ്യുക) http://processors.wiki.ti.com/index.php/Category:SBLTool) ഇമേജ് ലോഡ് ചെയ്യുക file താഴെ കാണിച്ചിരിക്കുന്നത് പോലെ. നിങ്ങളുടെ സീരിയൽ കേബിളിനായി ശരിയായ COM പോർട്ട് തിരഞ്ഞെടുക്കുന്നത് ഉറപ്പാക്കുക.
    വായുവിലൂടെ അയയ്ക്കാൻ ആപ്ലിക്കേഷൻ ഇമേജ് നിർമ്മിക്കുക.
  5. Load and run the OAD Manager application into a separate CC254xEM on a SmartRF05 board which is connected via a serial cable to the PC running the SBL Demo tool. The OAD Manager application can be found here: INSTALL_DIR\Projects\ble\OAD Manager
  6. OAD മാനേജർ ലോഡ് ചെയ്തിരിക്കുന്ന ഉപകരണത്തിൽ, LCD-യിൽ നിന്ന് അകലെ ജോയിസ്റ്റിക്ക് താഴേക്ക് അമർത്തുക, OAD ഡോംഗിൾ ഇപ്പോൾ SBL മോഡിലാണെന്ന് LCD സന്ദേശം സൂചിപ്പിക്കുന്നില്ല.
  7. SBL ഡെമോ ടൂളിലെ 'ഇമേജ് ലോഡ് ചെയ്യുക' ബട്ടൺ അമർത്തി വിജയകരമായി പൂർത്തിയാക്കിയിട്ടുണ്ടോയെന്ന് പരിശോധിക്കുക (LCD ഇത് സൂചിപ്പിക്കണം).
  8. BIM ഉം ഇമേജ് A പതിപ്പ് 0x0000 ഉം ലോഡ് ചെയ്തിട്ടുള്ള ഉപകരണത്തിൽ, നിങ്ങൾ ഇതിനകം പരസ്യം ചെയ്തിട്ടില്ലെങ്കിൽ, പരസ്യം ചെയ്യാൻ ആരംഭിക്കുക.
  9. OAD മാനേജറിൽ, LCD-യുടെ നേരെ ജോയ്‌സ്റ്റിക്ക് മുകളിലേക്ക് അമർത്തി സ്കാൻ ചെയ്യാൻ തുടങ്ങുക. സിമ്പിൾ BLE സെൻട്രലിനായി വിവരിച്ചിരിക്കുന്ന BLE കണക്ഷൻ സൃഷ്ടിക്കുന്നതിനുള്ള ബാക്കി നിർദ്ദേശങ്ങൾ പാലിക്കുക (ഉദാ. കണ്ടെത്തിയ ഉപകരണങ്ങളിലൂടെ ടോഗിൾ ചെയ്യാൻ ഇടതുവശത്തുള്ള ജോയ്‌സ്റ്റിക്ക് അമർത്തുക, കണക്റ്റുചെയ്യാൻ ജോയ്‌സ്റ്റിക്ക് ബോർഡിലേക്ക് താഴേക്ക് അമർത്തുക).
  10. കണക്റ്റ് ചെയ്യുമ്പോൾ, OAD മാനേജർ ഇമേജ് A യുടെ ഇമേജ് ഹെഡർ വായിക്കുകയും ഇമേജ് A യെക്കാൾ പുതിയ പതിപ്പാണ് ഇതിന് ഉള്ളതെന്ന് മനസ്സിലാക്കുകയും ചെയ്യും. തുടർന്ന് ഓവർ-ദി-എയർ അപ്ഡേറ്റ് ആരംഭിക്കും. BLE OAD പുരോഗതി കാണിക്കുന്ന LCD സന്ദേശം ശ്രദ്ധിക്കുക.
    OAD ടാർഗെറ്റ് പ്രോയുടെ ഡിഫോൾട്ട് സ്വഭാവംfile ഡോംഗിളിൽ ഉയർന്ന പതിപ്പ് നമ്പറുള്ള ഒരു ഇമേജ് ഉണ്ടെങ്കിൽ, OAD സ്വയമേവ ആരംഭിക്കുക എന്നതാണ് ഇതിന്റെ അർത്ഥം. നിർദ്ദിഷ്ട പ്രോജക്റ്റിന്റെ ആവശ്യകതകൾക്കനുസരിച്ച് ഇത് മെച്ചപ്പെടുത്താൻ കഴിയും (ഒരുപക്ഷേ ചെയ്യേണ്ടതുമാണ്).
  11. OAD ഡൗൺലോഡ് പൂർത്തിയായ ശേഷം, കണക്ഷൻ വിച്ഛേദിക്കപ്പെടും, കാരണം റൺ ചെയ്യുന്ന ഇമേജ് പതിപ്പ് 0x0000 സ്വയം അസാധുവാകുകയും പുനഃസജ്ജമാക്കുകയും ചെയ്യും, അങ്ങനെ BIM-ന് നിയന്ത്രണം ലഭിക്കുകയും പുതിയ റൺ ചെയ്യുന്ന ഇമേജായി ഇമേജ് പതിപ്പ് 0x0002-ലേക്ക് പോകുകയും ചെയ്യും. ഇത് OAD ടാർഗെറ്റ് പ്രോയിൽ കൂടുതൽ വിശദീകരിച്ചിട്ടുണ്ട്.file താഴെയുള്ള വിഭാഗം.
  12. OAD ലക്ഷ്യം വീണ്ടും പ്രവർത്തിക്കുന്നുവെന്ന് സൂചിപ്പിക്കുമ്പോൾ, OAD മാനേജറിൽ നിന്ന് അതുമായി മറ്റൊരു കണക്ഷൻ സ്ഥാപിക്കുക, ഇത്തവണ ഒരു OAD പ്രക്രിയ ആരംഭിച്ചിട്ടില്ലെന്ന് ശ്രദ്ധിക്കുക, എന്നാൽ OAD- പ്രാപ്തമാക്കിയ ഉപകരണം അതിന്റെ നിലവിലെ ഇമേജ് ഹെഡർ വിവരങ്ങൾ തിരികെ റിപ്പോർട്ട് ചെയ്യുന്നു.

ഇമേജ്-ബി ഏരിയ വലുതാക്കുക (ഇമേജ്-എ ഏരിയ ചെറുതാക്കുമ്പോൾ)

ഇമേജ് ഏരിയ സ്ഥിരാങ്കങ്ങളും ലിങ്കർ നിയന്ത്രണവും തമ്മിലുള്ള പരസ്പരാശ്രിതത്വത്തെക്കുറിച്ച് ഉൾക്കാഴ്ച നേടുന്നതിനുള്ള ഒരു വ്യായാമമാണ് താഴെ കൊടുത്തിരിക്കുന്നത്. fileബി‌എമ്മിലെ ഇൻ-ലൈൻ അസംബ്ലി കോഡും അതുപോലെ തന്നെ. സി-കോഡ് സ്ഥിരാങ്കങ്ങളും ലിങ്കർ നിയന്ത്രണവും തമ്മിലുള്ള പരസ്പരാശ്രിതത്വം file മെമ്മറി പ്ലെയ്‌സ്‌മെന്റ് സ്വമേധയാ ഏകോപിപ്പിക്കേണ്ടതുണ്ട്, കാരണം ഇത് യാന്ത്രികമായി കൈകാര്യം ചെയ്യാൻ IAR IDE കോൺഫിഗർ ചെയ്യാൻ കഴിയില്ല.

  1. ഇമേജ്-എയ്ക്ക് അതിന്റെ അനുബന്ധ ലിങ്കറിൽ ലഭ്യമായ ഏരിയ കുറയ്ക്കുക. file, താഴെ കാണിച്ചിരിക്കുന്നത് പോലെ cc254x_f256_imgA.xcl:
    //
    // CODE
    //
    -D_CODE_BEG=0x0830 // First page is for the BIM which intercepts the H/W INTVECS.
    -D_CODE_END=0x2FFF // Next 5 pages of Bank 0.
  2. ഇമേജ്-ബിക്ക് അതിന്റെ അനുബന്ധ ലിങ്കറിൽ ലഭ്യമായ ഏരിയ പരമാവധിയാക്കുക. file, താഴെ കാണിച്ചിരിക്കുന്നത് പോലെ cc254x_f256_imgB.xcl:
    //
    // CODE
    //
    -D_CODE_BEG=0x3030 // Last 10 pages of Bank 0.
    -D_CODE_END=0x7FFF
    //
  3. താഴെ കാണിച്ചിരിക്കുന്നതുപോലെ OAD ഡാറ്റാ ഘടനകളുടെ സ്ഥാനം പുതിയ ഇമേജ്-ബി ഒന്നാം പേജിലേക്ക് മാറ്റുക:
    -Z(CODE)CHECKSUM=0x3000-0x3001
    -Z(CODE)IMAGE_HEADER=0x3002-0x300F
    -Z(CODE) AES_HEADER=0x3010-0x302F
  4. താഴെ കാണിച്ചിരിക്കുന്നതുപോലെ CRC കണക്കുകൂട്ടലിന്റെ ശ്രേണി മാറ്റുക:
    -J2,crc16,=3004-_BANK4_END
  5. താഴെ കാണിച്ചിരിക്കുന്നതുപോലെ ibm_main.c ലെ ഇമേജുകളുടെ BIM വലുപ്പങ്ങൾ മാറ്റുക:
    #define BIM_IMG_A_PAGE 1
    #define BIM_IMG_A_AREA 60
    #define BIM_IMG_B_PAGE 6
    #define BIM_IMG_B_AREA (124 - BIM_IMG_A_AREA)
  6. 6. OAD പ്രോയിൽ അനുബന്ധമായ മാറ്റം വരുത്തുകfile oad.h ലെ ചിത്രങ്ങളുടെ വലുപ്പങ്ങൾ താഴെ കാണിച്ചിരിക്കുന്നത് പോലെ:
    #if !defined OAD_IMG_A_PAGE
    #define OAD_IMG_A_PAGE 1
    #define OAD_IMG_A_AREA 60
    #endif
    #if !defined OAD_IMG_B_PAGE
    // Image-A/B can be very differently sized areas when implementing BIM vice OAD boot
    loader.
    #if defined FEATURE_OAD_BIM
    #define OAD_IMG_B_PAGE 6
  7. bim_main.c യുടെ പ്രധാന ഫംഗ്ഷനിൽ BIM-ൽ ഇമേജ് B-യിലേക്ക് പോകാൻ വിലാസം മാറ്റുക:
    asm("LJMP 0x3030");
  8. bim_ivecs.s51-ലെ Image-B INTVEC ടേബിൾ റീലോക്കേഷൻ വിലാസം മാറ്റുക.
    IMGB EQU 0x3030

പ്രൊപ്രൈറ്ററി TI OAD ടാർഗെറ്റ് BLE പ്രോfile

ഡിസൈൻ സമീപനം

കോഡിന്റെ വലുപ്പവും സങ്കീർണ്ണതയും കുറയ്ക്കുന്നതിനും ഉപഭോക്തൃ ഇഷ്ടാനുസൃതമാക്കലുകൾക്കും മെച്ചപ്പെടുത്തലുകൾക്കും (ഒരു OAD സെർവറിലേക്ക് വായുവിലൂടെ അയയ്ക്കാൻ നൽകുന്ന ചിത്രം എൻക്രിപ്റ്റ് ചെയ്യുന്നത് പോലുള്ളവ) ഇടം നൽകുന്നതിനുമായി ഡിസൈൻ കഴിയുന്നത്ര ലളിതവും വൈവിധ്യപൂർണ്ണവുമാക്കിയിരിക്കുന്നു, ഇവ സാധാരണ പ്രേക്ഷകർക്ക് സ്ഥിരസ്ഥിതിയായി ഉൾപ്പെടുത്താൻ വളരെ ചെലവേറിയതാണ്.

ആശ്രിതത്വം

OAD പ്രോfile കണക്ഷൻ പാരാമീറ്ററുകളും മാനദണ്ഡങ്ങളും നിർണ്ണയിക്കുന്നതിനും നിയന്ത്രിക്കുന്നതിനും അന്തിമ ഉപഭോക്തൃ ആപ്ലിക്കേഷനെ ആശ്രയിച്ചിരിക്കുന്നു.

സന്ദേശങ്ങൾ

കോഡ് വലുപ്പം കുറയ്ക്കുന്നതിനും ഡാറ്റ ത്രൂപുട്ട് പരമാവധി വർദ്ധിപ്പിക്കുന്നതിനുമായി OAD മാനേജറിൽ നിന്ന് OAD ടാർഗെറ്റിലേക്കുള്ള ഡിഫോൾട്ട് സന്ദേശ തരമായി “പ്രതികരണമില്ലാതെ എഴുതുക” തിരഞ്ഞെടുത്തിരിക്കുന്നു. അറിയിപ്പുകൾ അയയ്ക്കാനുള്ള കഴിവ് ചേർക്കുന്നതിന് നിലവിൽ ഏകദേശം 4.5 Kb ചിലവാകുന്ന GATT_ ക്ലയന്റ് nit() ചേർക്കേണ്ടതുണ്ട് എന്നതിനാലാണ് ഈ തീരുമാനം. ശബ്ദായമാനമായതോ അല്ലെങ്കിൽ നഷ്ടപ്പെടുത്തുന്നതോ ആയ അന്തരീക്ഷത്തിൽ, ഒരു മുഴുവൻ ഇമേജും വിജയകരമായി കൈമാറാൻ “പ്രതികരണമില്ലാതെ എഴുതുക” പര്യാപ്തമല്ലായിരിക്കാം, കൂടാതെ OSAL ടൈമർ നിയന്ത്രിത സമയപരിധികളും പുനഃശ്രമങ്ങളും ചേർക്കേണ്ടി വന്നേക്കാം. OAD ടാർഗെറ്റ് ഇതിനകം GATT_ ക്ലയന്റിനെ ഇനീഷ്യലൈസ് ചെയ്‌തിരിക്കുന്നതിനാൽ, OAD ടാർഗെറ്റിൽ നിന്ന് OAD മാനേജറിലേക്കുള്ള ഡിഫോൾട്ട് സന്ദേശ തരമായി അറിയിപ്പുകൾ തിരഞ്ഞെടുത്തു.

സ്വഭാവഗുണങ്ങൾ

OAD ടാർഗെറ്റ് പ്രോfile രണ്ട് സ്വഭാവസവിശേഷതകൾ മാത്രമേയുള്ളൂ: OAD ഇമേജ് ഐഡന്റിഫിക്കേഷൻ, OAD ഇമേജ് ബ്ലോക്ക് ട്രാൻസ്ഫർ. OAD ടാർഗെറ്റിലെ ഈ രണ്ട് സ്വഭാവസവിശേഷതകളുടെയും ഹാൻഡിലുകൾ കണ്ടെത്തുന്നതിനുള്ള ഭാരം OAD മാനേജരിലാണ്. ഒരു OAD സംഭവിക്കണമോ എന്ന് OAD ടാർഗെറ്റിന് തീരുമാനിക്കുന്നതിന് ഇമേജ് ഹെഡർ വിവരങ്ങൾ കൈമാറാൻ ഇമേജ് ഐഡന്റിഫിക്കേഷൻ സ്വഭാവം ഉപയോഗിക്കുന്നു. OAD ഇമേജിന്റെ ഒരു ബ്ലോക്ക് അഭ്യർത്ഥിക്കാനും കൈമാറാനും OAD ഇമേജ് ബ്ലോക്ക് ട്രാൻസ്ഫർ സ്വഭാവം ഉപയോഗിക്കുന്നു.

OAD പ്രക്രിയയുടെ ആരംഭം

ഒരു പുതിയ കണക്ഷൻ സ്ഥാപിച്ചതിനുശേഷം, വേഗതയേറിയ OAD-യ്‌ക്കായി കണക്ഷൻ ഇടവേള അപ്‌ഡേറ്റ് ചെയ്‌തതിനുശേഷം, OAD ടാർഗെറ്റിൽ അറിയിപ്പുകൾ പ്രവർത്തനക്ഷമമാക്കിയതിനുശേഷം, OAD മാനേജർ OAD ടാർഗെറ്റിന്റെ ഇമേജ് ഐഡന്റിഫൈ സ്വഭാവത്തിലേക്ക് എഴുതും. OAD-ന് ലഭ്യമായ ചിത്രത്തിന്റെ ഇമേജ് ഹെഡറായിരിക്കും സന്ദേശ ഡാറ്റ. ഇമേജ് ഐഡന്റിഫൈ സ്വഭാവത്തിലേക്ക് എഴുതാനുള്ള അഭ്യർത്ഥന ലഭിക്കുമ്പോൾ, OAD ടാർഗെറ്റ് OAD-ന് ലഭ്യമായ ചിത്രത്തെ സ്വന്തം റണ്ണിംഗ് ചിത്രവുമായി താരതമ്യം ചെയ്യും. OAD-ന് ലഭ്യമായ ചിത്രം തന്റേതിനേക്കാൾ മികച്ചതാണെന്ന് OAD ടാർഗെറ്റ് നിർണ്ണയിക്കുകയാണെങ്കിൽ, OAD ടാർഗെറ്റ് ഇമേജ് ബ്ലോക്ക് ട്രാൻസ്ഫർ സ്വഭാവം OAD മാനേജർക്ക് അറിയിച്ചുകൊണ്ട് OAD പ്രക്രിയ ആരംഭിക്കും. അല്ലാത്തപക്ഷം, OAD ടാർഗെറ്റ് ഒരു OAD പ്രക്രിയ ആരംഭിച്ചില്ലെങ്കിൽ, സ്വന്തം ഇമേജ് ഹെഡർ ഉപയോഗിച്ച് ഇമേജ് ഐഡന്റിഫൈ സ്വഭാവത്തെ അറിയിച്ചുകൊണ്ട് അത് പ്രതികരിക്കും.

ഇമേജ് ബ്ലോക്ക് ട്രാൻസ്ഫറുകൾ

ഇമേജ് ബ്ലോക്ക് ട്രാൻസ്ഫർ സവിശേഷത രണ്ട് ഉപകരണങ്ങളെയും ഒരു സമയം ഒരു ബ്ലോക്ക് എന്ന നിലയിൽ OAD ഇമേജ് അഭ്യർത്ഥിക്കാനും പ്രതികരിക്കാനും അനുവദിക്കുന്നു. ഇമേജ് ബ്ലോക്ക് വലുപ്പം 16 ബൈറ്റുകളായി നിർവചിച്ചിരിക്കുന്നു - oad.h-ൽ OAD_BLOCK_SIZE കാണുക. ശരിയായ ബ്ലോക്ക് ഇൻഡെക്സ് ഉപയോഗിച്ച് ഇമേജ് ബ്ലോക്ക് ട്രാൻസ്ഫർ സവിശേഷതയെ അറിയിച്ചുകൊണ്ട് OAD ടാർഗെറ്റ് OAD മാനേജരിൽ നിന്ന് ഒരു ഇമേജ് ബ്ലോക്ക് അഭ്യർത്ഥിക്കും.
തുടർന്ന് OAD മാനേജർ ഇമേജ് ബ്ലോക്ക് ട്രാൻസ്ഫർ സ്വഭാവത്തിലേക്ക് എഴുതി മറുപടി നൽകും. സന്ദേശ ഡാറ്റ അഭ്യർത്ഥിച്ച ഇമേജ് ബ്ലോക്ക് സൂചികയായിരിക്കും, തുടർന്ന് ആ ബ്ലോക്കുമായി ബന്ധപ്പെട്ട 16-ബൈറ്റ് ഇമേജും ആയിരിക്കും.

OAD പ്രക്രിയയുടെ പൂർത്തീകരണം

OAD ടാർഗെറ്റ് OAD ഇമേജിന്റെ മറ്റൊരു ബ്ലോക്ക് ദഹിപ്പിക്കാൻ തയ്യാറാകുമ്പോഴെല്ലാം, ആവശ്യമുള്ള ഇമേജ് ബ്ലോക്കിന്റെ സൂചിക ഉപയോഗിച്ച് ഇമേജ് ബ്ലോക്ക് ട്രാൻസ്ഫർ സ്വഭാവത്തെ അത് അറിയിക്കും. മുമ്പത്തെ വിഭാഗത്തിൽ വിവരിച്ചതുപോലെ OAD മാനേജർ പ്രതികരിക്കും. OAD ടാർഗെറ്റിന് അന്തിമ ഇമേജ് ബ്ലോക്ക് ലഭിച്ചുകഴിഞ്ഞാൽ, സംഭരിച്ചിരിക്കുന്ന OAD ഇമേജിന് മുകളിൽ CRC കണക്കാക്കി ചിത്രം ശരിയായി സ്വീകരിച്ചിട്ടുണ്ടെന്നും സംഭരിച്ചിട്ടുണ്ടെന്നും അത് പരിശോധിക്കും. OAD ടാർഗെറ്റ് സ്വന്തം ഇമേജ് അസാധുവാക്കുകയും BIM-ന് പുതിയ ഇമേജ് പ്രവർത്തിപ്പിക്കാൻ കഴിയുന്ന തരത്തിൽ പുനഃസജ്ജമാക്കുകയും ചെയ്യും. ഈ സ്ഥിരീകരണ-നിർദ്ദിഷ്ട പ്രക്രിയയ്ക്കിടെ OAD ടാർഗെറ്റുമായുള്ള BLE കണക്ഷൻ നഷ്ടപ്പെട്ട OAD മാനേജർക്കാണ് ഭാരം, സ്കാനിംഗ് വീണ്ടും ആരംഭിക്കാനും തുടർന്ന് ഒരു കണക്ഷൻ പുനഃസ്ഥാപിക്കാനും പുതിയ ഇമേജ് യഥാർത്ഥത്തിൽ പ്രവർത്തിക്കുന്നുണ്ടെന്ന് പരിശോധിക്കാനും.

ലോഗോ

പ്രമാണങ്ങൾ / വിഭവങ്ങൾ

ടെക്സസ് ഇൻസ്ട്രുമെന്റ്സ് CC254x 2.4GHz ബ്ലൂടൂത്ത് സിസ്റ്റം ഓൺ ചിപ്പ് [pdf] ഉപയോക്തൃ ഗൈഡ്
CC254x 2.4GHz ബ്ലൂടൂത്ത് സിസ്റ്റം ഓൺ ചിപ്പ്, CC254x, 2.4GHz ബ്ലൂടൂത്ത് സിസ്റ്റം ഓൺ ചിപ്പ്, ബ്ലൂടൂത്ത് സിസ്റ്റം ഓൺ ചിപ്പ്, സിസ്റ്റം ഓൺ ചിപ്പ്

റഫറൻസുകൾ

ഒരു അഭിപ്രായം ഇടൂ

നിങ്ങളുടെ ഇമെയിൽ വിലാസം പ്രസിദ്ധീകരിക്കില്ല. ആവശ്യമായ ഫീൽഡുകൾ അടയാളപ്പെടുത്തി *