ఫ్రీస్కేల్ సెమీకండక్టర్
అప్లికేషన్ నోట్

పత్ర సంఖ్య: AN4496
రెవ. 0, 03/2012

USB PHDC ఉపయోగించి పల్స్ ఆక్సిమీటర్

ద్వారా: జోస్ శాంటియాగో లోపెజ్ రామిరేజ్ RTAC అమెరికాస్

పరిచయం

ఈ అప్లికేషన్ నోట్ USB పర్సనల్ హెల్త్‌కేర్ డివైస్ క్లాస్ ఉపయోగించి కంప్యూటర్‌తో కమ్యూనికేట్ చేసే పల్స్ ఆక్సిమీటర్ అమలును వివరిస్తుంది. ఫ్రీస్కేల్ MK53N512 కైనెటిస్ మైక్రోకంట్రోలర్‌పై అమలు జరుగుతుంది, అయితే ఏదైనా ఫ్రీస్కేల్ USB సామర్థ్యం గల మైక్రోకంట్రోలర్‌పై దీన్ని అమలు చేయవచ్చు.
ఈ అప్లికేషన్ నోట్ మెడికల్ సొల్యూషన్స్ డెవలపర్లు, బయోమెడికల్ ఇంజనీర్లు లేదా యుఎస్బి పర్సనల్ హెల్త్ కేర్ డివైస్ క్లాస్ పట్ల ఆసక్తి ఉన్న వ్యక్తి కోసం ఉద్దేశించబడింది. అయినప్పటికీ, సి ప్రోగ్రామింగ్ మరియు మైక్రోకంట్రోలర్ల నిర్వహణలో కొన్ని నైపుణ్యాలు అవసరం.
ఈ అప్లికేషన్ నోట్ “AN4327 పల్స్ ఆక్సిమీటర్ ఫండమెంటల్స్ అండ్ డిజైన్” అనే అప్లికేషన్ నోట్‌తో దగ్గరి సంబంధం కలిగి ఉంది. మంచి అవగాహన కోసం AN4327 చదవమని సిఫార్సు చేయబడింది.

వ్యక్తిగత ఆరోగ్య సంరక్షణ పరికరాల తరగతి ముగిసిందిview

యూనివర్సల్ సీరియల్ బస్ (USB) అనేది హోస్ట్ (సాధారణంగా PC) మరియు ఒకటి లేదా అంతకంటే ఎక్కువ పరికరాల మధ్య ఇంటర్‌మ్యూనికేషన్ కోసం హార్డ్‌వేర్ మరియు ప్రోటోకాల్‌లను నిర్వచించే ప్రమాణం. ప్రతి USB పరికరానికి దాని స్వంత ప్రయోజనం ఉంది, అందువల్ల, అవి వాటి పనితీరును బట్టి వివిధ తరగతులలో విభజించబడ్డాయి. ఒక మాజీample అనేది మానవ ఇంటర్‌ఫేస్ పరికరం (HID) తరగతి, ఇది కంప్యూటర్ కీబోర్డులు మరియు మౌస్ వంటి పరికరాలలో ఉపయోగించబడుతుంది.
పల్స్ ఆక్సిమీటర్ అమలు
పర్సనల్ హెల్త్‌కేర్ డివైస్ క్లాస్ (పిహెచ్‌డిసి) వ్యక్తిగత యుఎస్‌బి వైద్య పరికరాలు మరియు యుఎస్‌బి హోస్ట్‌ల మధ్య కమ్యూనికేషన్ మరియు అతుకులు లేని ఇంటర్‌పెరాబిలిటీని స్థాపించాల్సిన అవసరాలను నిర్వచిస్తుంది, తరువాత వాటిని ప్రాసెస్ చేయడం, నిల్వ చేయడం లేదా ఇంటర్నెట్ ద్వారా డాక్టర్ లేదా బంధువుకు ప్రసారం చేయడం.
USB PHDC ను ISO / IEEE 11073-20601 వంటి హెల్త్‌కేర్ ఎక్స్ఛేంజ్ ప్రోటోకాల్‌లు హోస్ట్ మరియు వ్యక్తిగత ఆరోగ్య పరికరాల మధ్య కమ్యూనికేషన్ ప్యాకెట్ల రవాణా పద్ధతిగా ఉపయోగిస్తాయి. ఇది USB ద్వారా డేటా మరియు సందేశాలను పంపే విధానాన్ని ప్రామాణీకరిస్తుంది.

పల్స్ ఆక్సిమీటర్ అమలు

పల్స్ ఆక్సిమీటర్ ఫ్రీస్కేల్ TWR-K53N512, టవర్ డెవలప్‌మెంట్ బోర్డు, మెడికల్ ఓరియెంటెడ్ మైక్రోకంట్రోలర్ MK53N512, MED-SPO2 పల్స్ ఆక్సిమెట్రీ సొల్యూషన్స్ డెవలప్‌మెంట్ కోసం అనలాగ్ ఫ్రంట్ ఎండ్ బోర్డ్ మరియు సీరియల్ కమ్యూనికేషన్స్‌తో సహా డిజైన్ల కోసం టవర్ సిస్టమ్ బోర్డ్‌ను ఉపయోగించి అమలు చేయబడుతుంది. AN4327 “పల్స్ ఆక్సిమీటర్ ఫండమెంటల్స్ అండ్ డిజైన్” లో ఉపయోగించిన హార్డ్‌వేర్ ఇదే. పల్స్ ఆక్సిమెట్రీ సూత్రాలు మరియు పల్స్ ఆక్సిమీటర్ అభివృద్ధిలో ఉపయోగించే హార్డ్‌వేర్ గురించి మరింత సమాచారం కోసం దయచేసి ఈ అప్లికేషన్ నోట్‌ను చూడండి.
సిస్టమ్ PHDC తో ఫ్రీస్కేల్ USB స్టాక్ మీద ఆధారపడి ఉంటుంది, ఇది USB కనెక్టివిటీ అవసరమయ్యే పరిష్కారాల కోసం ఉచిత కోడ్ మరియు ఫ్రీస్కేల్ నుండి డౌన్‌లోడ్ చేసుకోవచ్చు web పేజీ. ఈ స్టాక్‌లో పరికర స్థాయిలో (క్లాక్‌లను కాన్ఫిగర్ చేయండి, USB మాడ్యూల్ ప్రారంభించండి, మొదలైనవి ...) మరియు క్లాస్ లెవెల్ (క్లాస్ లెవల్ (సెండ్-రిసీవ్ ప్యాకెట్స్, డిస్క్రిప్టర్‌లను పంపడం మొదలైనవి) ఉపయోగించగల ఫంక్షన్‌లు ఉన్నాయి.
మెరుగైన అవగాహన కోసం దయచేసి PHDC స్టాక్ యూజర్స్ గైడ్‌తో ఫ్రీస్కేల్ USB స్టాక్ మరియు PHDC పరికర API రిఫరెన్స్ మాన్యువల్‌తో ఫ్రీస్కేల్ USB స్టాక్‌ను చూడండి.
సాఫ్ట్‌వేర్ ప్రాథమికంగా మూడు ప్రధాన భాగాలుగా విభజించబడింది: సిస్టమ్ ప్రారంభించడం, అప్లికేషన్ ప్రారంభించడం మరియు అప్లికేషన్ అమలు.
కింది ప్రవాహ రేఖాచిత్రంలో చూపిన విధంగా తుది అనువర్తనం అనంతమైన లూప్‌లో అమలు చేయబడుతుంది (మూర్తి 1).

పల్స్ ఆక్సిమీటర్ అమలుమూర్తి 1. సాఫ్ట్‌వేర్ మోడల్ ఫ్లో రేఖాచిత్రం

ఈ అధ్యాయాన్ని బాగా అర్థం చేసుకోవడానికి, MED-SPO2 PDHC C ప్రాజెక్ట్‌ను తెరవాలని సిఫార్సు చేయబడింది మరియు view మీరు ఈ పంక్తులు చదువుతున్నప్పుడు.

సిస్టమ్ ప్రారంభించడం

ప్రోగ్రామ్ ప్రారంభంలో Init_Sys ఫంక్షన్ పిలువబడినప్పుడు సిస్టమ్ ప్రారంభించడం అమలు అవుతుంది. Init_Sys అనేది పరికర స్థాయి ఫంక్షన్ మరియు మైక్రోకంట్రోలర్‌పై మారుతూ ఉంటుంది. ఇది స్టాక్ కార్యాచరణ కోసం మైక్రోకంట్రోలర్‌పై అవసరమైన పెరిఫెరల్స్ ను ప్రారంభిస్తుంది. Init_Sys మొదట NVICICER2 మరియు NVICISER2 రిజిస్టర్‌లను కాన్ఫిగర్ చేసే USB మాడ్యూల్‌లోని అంతరాయాలను ప్రారంభిస్తుంది. అప్పుడు ఇది GPIO_Init ఫంక్షన్‌ను పిలిచే మైక్రోకంట్రోలర్‌కు అవసరమైన GPIO మాడ్యూళ్ళను అనుమతిస్తుంది. Init_Sys ఇప్పుడు pll_init ఫంక్షన్‌ను పిలుస్తుంది, ఇది బాహ్య గడియార మూలాన్ని ఉపయోగించి 50MHz వద్ద పనిచేయడానికి మైక్రోకంట్రోలర్‌ను కాన్ఫిగర్ చేస్తుంది. మైక్రోకంట్రోలర్ యొక్క గడియారం కాన్ఫిగర్ చేయబడిన తర్వాత, MPU_CESR రిజిస్టర్ క్లియర్ చేయబడుతుంది మరియు భవిష్యత్ గణన కోసం USB మాడ్యూల్‌కు శక్తినిచ్చే మరియు క్లాక్ సిగ్నల్‌ను తీసుకురావడానికి మైక్రోకంట్రోలర్ కాన్ఫిగర్ చేయబడింది.

అప్లికేషన్ ప్రారంభించడం

అప్లికేషన్ ప్రారంభించడం పల్స్ ఆక్సిమెట్రీ PHDC అప్లికేషన్ యొక్క ఉపయోగం కోసం గతంలో ప్రారంభించిన మాడ్యూళ్ళను కాన్ఫిగర్ చేస్తుంది. TestApp_Init ఫంక్షన్ పిలువబడినప్పుడు ఈ కాన్ఫిగరేషన్ ప్రారంభమవుతుంది. TestApp_Init మొదట PHD_Transport_Init ఫంక్షన్‌ను పిలుస్తుంది. ఈ ఫంక్షన్ పుల్-అప్ రెసిస్టర్‌లను ప్రారంభించడం ద్వారా మరియు గణన ప్రక్రియను నిర్వహించడం ద్వారా మైక్రోకంట్రోలర్ యొక్క యుఎస్‌బి మాడ్యూల్‌ను పిహెచ్‌డిసిగా లెక్కిస్తుంది. PHD_Transport_Init లోపం విలువను అందిస్తుంది. లోపం “సరే” తిరిగి వస్తే, పరికరం ఇప్పటికే పిహెచ్‌డి (పర్సనల్ హెల్త్‌కేర్ డివైస్) గా లెక్కించబడిందని అర్థం, లేకపోతే గణన సమయంలో ఏదో తప్పు జరిగింది మరియు పరికరం హోస్ట్ పిసి గుర్తించకపోవచ్చు. ఈ సమయంలో, పరికరం హోస్ట్ చేత PHD గా గుర్తించబడింది, అయితే ఇది ప్రామాణిక ISO / IEEE 11073-20601 ను ఉపయోగించి పల్స్ ఆక్సిమీటర్ పరికరంగా ఇంకా నిర్వచించబడలేదు.
గణన తరువాత, TWR-K53N512 ఆన్-బోర్డు LED లు మరియు పుష్ బటన్లు భవిష్యత్ ఉపయోగం కోసం కాన్ఫిగర్ చేయబడతాయి. సాఫ్ట్‌వేర్ టైమర్‌ను ప్రారంభించడానికి SwTimer_Init ఫంక్షన్ అంటారు. సాఫ్ట్‌వేర్ టైమర్ గురించి మరింత సమాచారం “AN4327 పల్స్ ఆక్సిమీటర్ ఫండమెంటల్స్ అండ్ డిజైన్” అనే అప్లికేషన్ నోట్‌లో చూడవచ్చు: అపెండిక్స్ సాఫ్ట్‌వేర్ టైమర్.
VfnSpO2_AFE_Init అని పిలవబడే చివరి ఫంక్షన్. ఈ ఫంక్షన్ అవసరమైన పెరిఫెరల్స్ (ఆప్Ampలు, TRIAMPs, ADC లు మరియు టైమర్లు) MED-SPO2 బోర్డుకు అవసరం.

అప్లికేషన్ ఎగ్జిక్యూషన్

పెరిఫెరల్స్ కాన్ఫిగర్ చేయబడిన తర్వాత, హోస్ట్ PC మరియు పరికరం మధ్య కనెక్షన్ ఏర్పడుతుంది. హోస్ట్ PC పరికరాన్ని PHD గా గుర్తిస్తుంది, కానీ ఇది ఇంకా పూర్తిగా పనిచేయలేదు. ప్రామాణిక మరియు నమ్మదగిన పద్ధతిలో సమాచారాన్ని మార్పిడి చేయడానికి హోస్ట్ PC మరియు పరికరం మధ్య కమ్యూనికేషన్ ప్రోటోకాల్ అవసరం.
కొన్ని విక్రేత-నిర్దిష్ట ప్రోటోకాల్‌లతో సహా అనేక కమ్యూనికేషన్ ప్రోటోకాల్‌లు ఉన్నాయి. ఏదేమైనా, వైద్య పరికరాల మధ్య ఒకే పరస్పర సామర్థ్యాన్ని నిర్ధారించే ప్రామాణిక ప్రోటోకాల్‌లపై ఇంజనీరింగ్ పందెం.
కాంటినువా హెల్త్ అలయన్స్ medical అనేది వైద్య పరికరాల మధ్య మెరుగైన ఇంటర్‌ఆపెరాబిలిటీని ప్రోత్సహించే సంస్థ. ఈ డెమో యొక్క అమలు హోస్ట్ PC మరియు పరికరాల మధ్య ఆరోగ్య డేటా కమ్యూనికేషన్ కోసం Continua® ప్రమాణంపై ఆధారపడి ఉంటుంది, ఇది ప్రామాణిక ISO / IEEE 11073-20601 “వ్యక్తిగత ఆరోగ్య పరికర కమ్యూనికేషన్: ఆప్టిమైజ్డ్ ఎక్స్ఛేంజ్ ప్రోటోకాల్” ను బేస్ గా ఉపయోగిస్తుంది.
11073-20601 కమ్యూనికేషన్ ప్రోటోకాల్ యొక్క సంక్షిప్త వివరణ క్రింద చూపబడింది. కమ్యూనికేషన్ ప్రోటోకాల్ యొక్క పూర్తి వివరణ కోసం ISO / IEEE 11073-20601 ప్రమాణాన్ని చూడండి.

ISO / IEEE 11073-20601 కమ్యూనికేషన్ ప్రాసెస్

ప్రామాణిక 11073-20601 వైద్య పరికరాలు లేదా “ఏజెంట్లు” మరియు హోస్ట్‌లు లేదా “నిర్వాహకులు” మధ్య కమ్యూనికేషన్ ప్రోటోకాల్‌ను నిర్వచిస్తుంది.
ఏజెంట్‌ను MDS (మెడికల్ డివైస్ సిస్టమ్) అని పిలిచే వస్తువుల సమితిగా నిర్వచించవచ్చు. ప్రతి MDS ఏజెంట్ యొక్క ప్రవర్తనను వివరిస్తుంది (ఉదా. పల్స్ ఆక్సిమీటర్ లేదా రక్తపోటు మానిటర్). ప్రతి ఏజెంట్ ఈ ఒకటి లేదా అంతకంటే ఎక్కువ MDS వస్తువులను కలిగి ఉండవచ్చు.
అదే పద్ధతిలో, ప్రతి MDS వస్తువు దాని ప్రవర్తనను నిర్వచించే ఉప-వస్తువులను కలిగి ఉంటుంది (ఉదా. నివేదించడానికి కొలతలు). ఈ సమాచారం అంతా మేనేజర్‌కు నివేదించబడాలి కాబట్టి ఇది ఏజెంట్ యొక్క ప్రవర్తనను నియంత్రించగలదు. ఏదేమైనా, ఒక సమయంలో ఒక MDS వస్తువు మాత్రమే నివేదించబడాలి (ఉదా. ఒక ఏజెంట్ పల్స్ ఆక్సిమీటర్ మరియు ఒకే సమయంలో రక్తపోటు మానిటర్ కాదు).
క్రింది రేఖాచిత్రం పల్స్ ఆక్సిమీటర్ మరియు రక్తపోటు మానిటర్‌గా ఉండే ఏజెంట్‌ను సూచిస్తుంది).

ISOIEEE 11073-20601 కమ్యూనికేషన్ ప్రాసెస్మూర్తి 2. ఏజెంట్ ప్రాతినిధ్యం

ఈ డెమో విషయంలో, ఏజెంట్ పల్స్ ఆక్సిమీటర్ అనువర్తనానికి అనుగుణంగా ఒకే ఒక MDS వస్తువును కలిగి ఉంటుంది. ఏజెంట్ ప్రాతినిధ్యం గురించి మరింత వివరమైన సమాచారం ISO / IEEE 11073-20601: 2010 పత్రంలో, 6 వ అధ్యాయంలో, వ్యక్తిగత ఆరోగ్య పరికరం DIM లో చూడవచ్చు.
IEEE ప్రమాణం ఏజెంట్ల కోసం ఒక రాష్ట్ర యంత్రాన్ని మరియు నిర్వాహకుల కోసం ఇతర రాష్ట్ర యంత్రాన్ని నిర్వచిస్తుంది. మా డెమో అప్లికేషన్ ఒక పరికరం కాబట్టి, మేము ఏజెంట్ యొక్క స్టేట్ మెషీన్ను మాత్రమే వివరిస్తాము. కింది రేఖాచిత్రం ISO / IEEE 8-10: 11073 ప్రమాణం యొక్క అధ్యాయం 20601, మూర్తి 2010 లో చూపబడిన రాష్ట్ర యంత్రం యొక్క సరళీకృత ప్రాతినిధ్యం.

ఏజెంట్ ప్రాతినిధ్యంమూర్తి 3. ఏజెంట్ యొక్క స్టేట్ మెషిన్

ప్రారంభంలో, ఏజెంట్ మేనేజర్ నుండి డిస్‌కనెక్ట్ చేయబడింది. కమ్యూనికేషన్‌ను స్థాపించడానికి ఏజెంట్‌ను మేనేజర్‌కు కనెక్ట్ చేయాలి. కనెక్షన్ స్థాపించబడినప్పుడు (మా విషయంలో USB పరికరం PHDC పరికరంగా లెక్కించబడినప్పుడు) ఏజెంట్ అనుసంధానించబడిన స్థితిలో ఉండటానికి వెళుతుంది.
కనెక్ట్ అయిన తర్వాత, ఏజెంట్ మొదట్లో “అనుబంధించని” స్థితిలో ఉంటాడు. కమ్యూనికేషన్లను ప్రారంభించడానికి ఏజెంట్ తప్పనిసరిగా “అసోసియేషన్ అభ్యర్థన” పంపాలి. అసోసియేషన్ అభ్యర్థన APDU (అప్లికేషన్ ప్రోటోకాల్ డేటా యూనిట్) గా పంపబడుతుంది, అసోసియేషన్ ప్రారంభించడానికి అవసరమైన సమాచారాన్ని కలిగి ఉన్న డేటా ప్యాకెట్ మరియు ఇది అనుబంధించడానికి MDS ఆబ్జెక్ట్‌కు అనుగుణంగా ఉండాలి. అసోసియేషన్ అభ్యర్థన APDU తప్పనిసరిగా కింది విధంగా ఉండాలి.
/ * పంపడానికి అసోసియేషన్ అభ్యర్థన * /
uint_8 USB_CONST PHD_OXI_ASSOC_REQ [ASSOC_REQ_SIZE] = {
0xE2, 0x00, / * APDU CHOICE Type (AarqApdu) * /
0x00, 0x32, / * CHOICE.length = 50 * /
0x80, 0x00, 0x00, 0x00, / * అసోక్-వెర్షన్ * /
0x00, 0x01, 0x00, 0x2A, / * data-proto-list.count = 1 | పొడవు = 42 * /
0x50, 0x79, / * డేటా-ప్రోటో-ఐడి = 20601 * /
0x00, 0x26, / * డేటా-ప్రోటో-సమాచారం పొడవు = 38 * /
0x80, 0x00, 0x00, 0x00, / * ప్రోటోకాల్ వెర్షన్ * /
0x80, 0x00, / * ఎన్కోడింగ్ నియమాలు = MDER లేదా PER * /
0x80, 0x00, 0x00, 0x00, / * నామకరణ సంస్కరణ * /
0x00, 0x00, 0x00, 0x00, / * ఫంక్షనల్ యునిట్స్ | పరీక్ష అసోసియేషన్ సామర్థ్యాలు లేవు * /
0x00, 0x80, 0x00, 0x00, / * systemType = sys-type-agent * /
0x00, 0x08, / * సిస్టమ్-ఐడి పొడవు = 8 మరియు విలువ, (తయారీదారు- మరియు పరికరం-నిర్దిష్ట) * /
0x4C, 0x4E, 0x49, 0x41, 0x47, 0x45, 0x4E, 0x54, 0x40, 0x00, / * dev-config-id | పొడిగించిన కాన్ఫిగరేషన్ * /
0x00, 0x01, / * data-req-mode-flags
0x00, 0x01 * / 0x01, 0x00, / * data-req-init-agent-count, data-req-init-manager-count * /
0x00, 0x00, 0x00, 0x00 / * అట్రిబ్యూట్ జాబితా * /};
ఏజెంట్ అసోసియేషన్ అభ్యర్థనను పంపినప్పుడు, అది మేనేజర్ నుండి ప్రతిస్పందన కోసం వేచి ఉన్న “అసోసియేటింగ్” స్థితికి వెళుతుంది. మేనేజర్ అసోసియేషన్ అభ్యర్థనను ప్రాసెస్ చేస్తుంది మరియు అందుకున్న APDU తో అసోసియేషన్ ప్రతిస్పందనను పంపుతుంది. APDU ఇప్పటికే తెలిసిన MDS కు అనుగుణంగా ఉంటే, మేనేజర్ కాన్ఫిగరేషన్ ఇప్పటికే తెలిసిందని సూచించే “అంగీకరించిన” అసోసియేషన్ ప్రతిస్పందనను పంపుతుంది, ఆపై ఏజెంట్ ఆపరేటింగ్ స్థితికి మారాలి. అసోసియేషన్ అభ్యర్థన అంగీకరించబడినా, మేనేజర్ MDS ను గుర్తించకపోతే, అది MDS కాన్ఫిగరేషన్ కోసం ఏజెంట్‌ను అడుగుతూ “అంగీకరించబడిన-తెలియని-కాన్ఫిగర్” అసోసియేషన్ ప్రతిస్పందనను తిరిగి పంపుతుంది. అసోసియేషన్ అభ్యర్థన తిరస్కరించబడితే, ఏజెంట్ అన్‌సోసియేటెడ్ స్థితికి మారాలి మరియు మళ్లీ ప్రయత్నించాలి. మేనేజర్ అసోసియేషన్ ప్రతిస్పందన క్రింది విధంగా కనిపిస్తుంది.
0xE3 0x00 APDU CHOICE రకం (AareApdu) 0x00 0x2C CHOICE.length = 44
0x00 0x03 result = అంగీకరించబడిన-తెలియని-ఆకృతీకరణ
0x50 0x79 డేటా-ప్రోటో-ఐడి = 20601
0x00 0x26 డేటా-ప్రోటో-సమాచారం పొడవు = 38
0x80 0x00 0x00 0x00 ప్రోటోకాల్ వెర్షన్
0x80 0x00 ఎన్కోడింగ్ నియమాలు = MDER
0x80 0x00 0x00 0x00 నామకరణం వెర్షన్
0x00 0x00 0x00 0x00 ఫంక్షనల్ యునిట్స్
0x80 0x00 0x00 0x00 systemType = sys-type-Manager
0x00 0x08 సిస్టమ్-ఐడి పొడవు = 8 మరియు విలువ
0x11 0x22 0x33 0x44 0x55 0x66 0x77 0x88 0x00 0x00 కాన్ఫిగర్-ఐడికి మేనేజర్ ప్రతిస్పందన ఎల్లప్పుడూ 0
0x00 0x00 0x00 0x00 డేటా-రీక్-మోడ్-కెపాబ్‌కు మేనేజర్ ప్రతిస్పందన ఎల్లప్పుడూ 0
0x00 0x00 0x00 0x00 optionList.count = 0 | optionList.length = 0
ఏజెంట్ అంగీకరించిన లేదా అంగీకరించబడిన-తెలియని-కాన్ఫిగరేషన్ అసోసియేషన్ ప్రతిస్పందనను స్వీకరిస్తే, ఏజెంట్ తప్పనిసరిగా “అసోసియేటెడ్” స్థితికి మారాలి. ఈ సందర్భంలో, మేనేజర్ అసోసియేషన్ అభ్యర్థనను అంగీకరించారు, కాని MDS అంగీకరించిన-తెలియని-కాన్ఫిగర్ అసోసియేషన్ ప్రతిస్పందనను తిరిగి ఇవ్వలేదు. దీని ఫలితంగా, ఏజెంట్ ఈ క్రింది విధంగా కాన్ఫిగరేషన్ నివేదికను పంపాలి.
/ * కాన్ఫిగరేషన్ ఈవెంట్ రిపోర్ట్ * /
uint_8 USB_CONST PHD_OXI_CNFG_EVT_RPT [PHD_OXI_CNFG_EVT_RPT_SIZE] = {
0xE7, 0x00, / * APDU CHOICE Type (PrstApdu) * /
0x00, 0x70, / * CHOICE.length = 112 * /
0x00, 0x6E, / * OCTET STRING.length = 110 * /
0x00, 0x02, / * ఇన్వోక్-ఐడి (ఇతర అత్యుత్తమ సందేశాల నుండి దీన్ని వేరు చేస్తుంది) * /
0x01, 0x01, / * CHOICE (రిమోట్ ఆపరేషన్ ఇన్వోక్ | ధృవీకరించబడిన ఈవెంట్ రిపోర్ట్) * /
0x00, 0x68, / * CHOICE.length = 104 * /
0x00, 0x00, / * obj-handle = 0 (MDS ఆబ్జెక్ట్) * / 0xFF, 0xFF, 0xFF, 0xFF, / * event-time = 0xFFFFFFFF * /
0x0D, 0x1C, / * ఈవెంట్-రకం = MDC_NOTI_CONFIG * /
0x00, 0x5E, / * event-info.length = 94 (కాన్ఫిగర్ రిపోర్ట్ ప్రారంభం) * /
0x40, 0x00, / * config-report-id * /
0x00, 0x02, / * config-obj-list.count = 2 కొలత వస్తువులు “ప్రకటించబడతాయి” * /
0x00, 0x58, / * config-obj-list.length = 88 * /
0x00, 0x06, / * obj-class = MDC_MOC_VMO_METRIC_NU * /
0x00, 0x01, / * obj-handle = 1 (.. 1 వ కొలత SpO2) * /
0x00, 0x04, / * attrib.count = 4 * /
0x00, 0x24, / * attrib.length = 36 * / 0x09, 0x2F, / * attrib-id = MDC_ATTR_ID_TYPE * /
0x00, 0x04, / * లక్షణం-విలువ. పొడవు = 4 * /
0x00, 0x02, 0x4B, 0xB8, / * MDC_PART_SCADA | MDC_PULS_OXIM_SAT_O2 * /
0x0A, 0x46, / * లక్షణం-ఐడి = MDC_ATTR_METRIC_SPEC_SMALL * /
0x00, 0x02, / * లక్షణం-విలువ. పొడవు = 2 * /
0x40, 0xC0, / * avail-store-data, acc-manager-init, acc-agent- init, కొలుస్తారు * /
0x09, 0x96, / * లక్షణం-ఐడి = MDC_ATTR_UNIT_CODE * /
0x00, 0x02, / * లక్షణం-విలువ. పొడవు = 2 * /
0x02, 0x20, / * MDC_DIM_PERCENT * / 0x0A, 0x55, / * లక్షణం-ఐడి = MDC_ATTR_ATTRIBUTE_VAL_MAP * /
0x00, 0x0C, / * లక్షణం-విలువ. పొడవు = 12 * /
0x00, 0x02, / * AttrValMap.count = 2 * /
0x00, 0x08, / * AttrValMap.length = 8 * /
0x0A, 0x4C, 0x00, 0x02, / * MDC_ATTR_NU_VAL_OBS_BASIC | విలువ పొడవు = 2 * /
0x09, 0x90, 0x00, 0x08, /* MDC_ATTR_TIME_STAMP_ABS | విలువ పొడవు = 8 */
0x00, 0x06, / * obj-class = MDC_MOC_VMO_METRIC_NU * /
0x00, 0x02, / * obj-handle = 2 (..2 వ కొలత పల్స్ రేటు) * /
0x00, 0x04, / * attrib.count = 4 * /
0x00, 0x24, / * attrib.length = 36 * /
0x09, 0x2F, / * లక్షణం-ఐడి = MDC_ATTR_ID_TYPE * /
0x00, 0x04, / * లక్షణం-విలువ. పొడవు = 4 * /
0x00, 0x02, 0x48, 0x1A, / * MDC_PART_SCADA | MDC_PULS_OXIM_PULS_RATE * /
0x0A, 0x46, / * లక్షణం-ఐడి = MDC_ATTR_METRIC_SPEC_SMALL * / 0x00, 0x02, / * లక్షణం-విలువ. పొడవు = 2 * /
0x40, 0xC0, / * avail-store-data, acc-manager-init, acc-agent- init, కొలుస్తారు * / 0x09, 0x96, / * attrib-id = MDC_ATTR_UNIT_CODE * / 0x00, 0x02, / * లక్షణం-విలువ. పొడవు = 2 * / 0x0A, 0xA0, / * MDC_DIM_BEAT_PER_MIN * / 0x0A, 0x55, / * లక్షణం-ఐడి = MDC_ATTR_ATTRIBUTE_VAL_MAP * / 0x00, 0x0C, / * గుణం-విలువ. పొడవు = 12 * / లెక్కింపు = 0 * /
0x00, 0x08, / * AttrValMap.length = 8 * /
0x0A, 0x4C, 0x00, 0x02, /* MDC_ATTR_NU_VAL_OBS_BASIC, 2* /0x09, 0x90, 0x00, 0x08 /* MDC_ATTR_TIME_STAMP_ABS, 8 */};
ఈ కాన్ఫిగరేషన్ నివేదిక పల్స్ ఆక్సిమీటర్ పరికరానికి అనుగుణంగా ఉంటుంది. ఇక్కడ ఏజెంట్ రెండు సంఖ్యా వస్తువులను పంపుతుందని సూచిస్తుంది (సాధ్యమయ్యే అన్ని వస్తువులు ISO / IEEE 11073-20601: 2010 పత్రంలో 6 వ అధ్యాయంలో వివరించబడ్డాయి: వ్యక్తిగత ఆరోగ్య పరికరం DIM). మొదటి సంఖ్యా వస్తువు ఆక్సిజన్ సంతృప్త (SpO2) కొలతకు అనుగుణంగా ఉంటుంది. రెండవ సంఖ్యా వస్తువు పల్స్ రేటు కొలతకు అనుగుణంగా ఉంటుంది.
కాన్ఫిగరేషన్ రిపోర్ట్ పంపిన తర్వాత, నివేదించబడిన కాన్ఫిగరేషన్ ఉపయోగించబడుతుందా లేదా అని సూచిస్తూ మేనేజర్ స్పందించాలి. నివేదించబడిన కాన్ఫిగరేషన్‌ను ఉపయోగించగలిగితే, ఏజెంట్ ఆపరేటింగ్ స్థితికి మారాలి. నివేదించబడిన కాన్ఫిగరేషన్‌కు మేనేజర్ మద్దతు ఇవ్వకపోతే, మేనేజర్ మద్దతు ఇచ్చే వేరే కాన్ఫిగరేషన్‌ను ఉపయోగించి ఏజెంట్ మళ్లీ ప్రయత్నించాలి. మేనేజర్ యొక్క ప్రతిస్పందన క్రింది విధంగా కనిపిస్తుంది.
0xE7 0x00 APDU CHOICE రకం (PrstApdu)
0x00 0x16 ఛాయిస్. పొడవు = 22
0x00 0x14 OCTET STRING.పొడవు = 20
0x43 0x21 invoke-id = 0x4321 (డేటాఅప్డు ప్రారంభం. MDER ఎన్కోడ్ చేయబడింది.)
0x02 0x01 ఎంపిక (రిమోట్ ఆపరేషన్ ప్రతిస్పందన | ధృవీకరించబడిన ఈవెంట్ నివేదిక)
0x00 0x0E ఛాయిస్. పొడవు = 14
0x00 0x00 ఆబ్జెక్ట్-హ్యాండిల్ = 0 (MDS ఆబ్జెక్ట్)
0x00 0x00 0x00 0x00 కరెంట్ టైమ్ = 0
0x0D 0x1Cevent-type = MDC_NOTI_CONFIG
0x00 0x04 ఈవెంట్-ప్రత్యుత్తరం- info.length = 4
0x40 0x00 ConfigReportRsp.config-report-id = 0x4000 0x00 0x00 ConfigReportRsp.config-result = అంగీకరించిన-ఆకృతీకరణ
ఈ సందర్భంలో, మేనేజర్ కాన్ఫిగరేషన్ అంగీకరించబడిందని నివేదించారు మరియు ఏజెంట్ ఆపరేటింగ్ స్థితికి మారాలి.
ముందు చెప్పినట్లుగా, ఏజెంట్ ఆమోదించబడిన లేదా ఆమోదించబడిన-తెలియని-కాన్ఫిగరేషన్ అసోసియేషన్ ప్రతిస్పందనను అందుకుంటే, ఏజెంట్ తప్పనిసరిగా అనుబంధ స్థితికి మారాలి. అనుబంధ స్థితికి చేరుకున్న తర్వాత, MDS లక్షణాలను అభ్యర్థించడానికి మేనేజర్ ఎప్పుడైనా "పొందండి" సేవను ఉపయోగించవచ్చు. MDS లక్షణాలు MDS వస్తువు గురించి సమాచారాన్ని కలిగి ఉంటాయిample, గ్లూకోజ్ మీటర్, థర్మామీటర్, రక్తపోటు మానిటర్ మరియు ఇతరులు), కంపెనీ పేరు మరియు పరికర మోడల్.
అన్ని పొందండి MDS లక్షణాల అభ్యర్థన క్రింది విధంగా కనిపిస్తుంది.
0xE7 0x00 APDU CHOICE రకం (PrstApdu)
0x00 0x0E ఛాయిస్. పొడవు = 14
0x00 0x0C OCTET STRING.పొడవు = 12
0x34 0x56 invoke-id = 0x3456 (డేటాఅప్డు ప్రారంభం. MDER ఎన్కోడ్ చేయబడింది.)
0x01 0x03 CHOICE (రిమోట్ ఆపరేషన్ ఇన్వోక్ | పొందండి) 0x00 0x06 CHOICE.length = 6
0x00 0x00 హ్యాండిల్ = 0 (MDS ఆబ్జెక్ట్)
0x00 0x00 గుణం- id-list.count = 0 (అన్ని గుణాలు)
0x00 0x00 గుణం- id-list.length = 0
అన్ని MDS లక్షణాల అభ్యర్థనను స్వీకరించినట్లయితే, ఏజెంట్ తప్పనిసరిగా దాని లక్షణాలతో ప్రతిస్పందించాలి. మాజీని అనుసరిస్తున్నారుampఏజెంట్ మేనేజర్‌కు పంపే గెట్ అట్రిబ్యూట్స్ కమాండ్ యొక్క ప్రతిస్పందనను le చూపుతుంది.
/ * లక్షణాల ఆదేశాన్ని పొందడానికి ప్రతిస్పందన * /
uint_8 USB_CONST PHD_OXI_DIM_GET_RSP [PHD_OXI_DIM_GET_RSP_SIZE] = {
0xE7, 0x00, / * APDU CHOICE Type (PrstApdu) * / 0x00, 0x6F, / * CHOICE.length = 111 * / 0x00, 0x6D, / * OCTET STRING.length = 109 * /
0x00, 0x02, / * invoke-id = 0x0002 (అభ్యర్థన నుండి ప్రతిబింబిస్తుంది) * /
0x02, 0x03, / * ఎంపిక (రిమోట్ ఆపరేషన్ ప్రతిస్పందన | పొందండి) * /
0x00, 0x67, / * CHOICE.length = 103 * /
0x00, 0x00, / * హ్యాండిల్ = 0 (MDS ఆబ్జెక్ట్) * /
0x00, 0x06, / * లక్షణం- list.count = 6 * /
0x00, 0x61, / * లక్షణం-జాబితా. పొడవు = 97 * /
0x0A, 0x5A, / * లక్షణ ఐడి = MDC_ATTR_SYS_TYPE_SPEC_LIST * /
0x00, 0x08, / * లక్షణం-విలువ. పొడవు = 8 * /
0x00, 0x01, / * TypeVerList count = 1 * /
0x00, 0x04, / * TypeVerList length = 4 * /
0x10, 0x04, /* రకం = MDC_DEV_SPEC_PROFILE_PUULS_OXIM */
స్పెషలైజేషన్ యొక్క 0x00, 0x01, / * వెర్షన్ = ver 1 * /
0x09, 0x28, / * లక్షణం-ఐడి = MDC_ATTR_ID_MODEL * /
0x00, 0x1B, / * లక్షణం-విలువ. పొడవు = 27 * /
0x00, 0x0A, 0x46, 0x72, / * స్ట్రింగ్ పొడవు = 10 | ఫ్రీస్కేల్ (స్థలం) * /
0x65, 0x65, 0x73, 0x63, 0x61, 0x6C, 0x65, 0x20, 0x00, 0x0D, 'M', 'E', / * string length = 13 | MED-SPO2 PHDC * /
'D', '-', 'S', 'P', 'O', '2', '', 'P', 'H', 'D', 'C', 0x09, 0x84, / * లక్షణం -id = MDC_ATTR_SYS_ID * /
0x00, 0x0A, / * లక్షణం-విలువ. పొడవు = 10 * /
0x00, 0x08, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88, / * ఆక్టేట్ స్ట్రింగ్ పొడవు = 8 | EUI-64 * /
0x0a, 0x44, / * లక్షణం-ఐడి = MDC_ATTR_DEV_CONFIG_ID * /
0x00, 0x02, / * లక్షణం-విలువ. పొడవు = 2 * /
0x40, 0x04, / * dev-config-id = 16384 (పొడిగించిన-ఆకృతీకరణ-ప్రారంభం) * /
0x09, 0x2D, ​​/ * లక్షణం-ఐడి = MDC_ATTR_ID_PROD_SPECN * /
0x00, 0x12, / * లక్షణం-విలువ. పొడవు = 18 * /
0x00, 0x01, / * ProductionSpec.count = 1 * /
0x00, 0x0E, / * ProductionSpec.length = 14 * /
0x00, 0x01, / * ProdSpecEntry.spec-type = 1 (సీరియల్-నంబర్) * /
0x00, 0x00, / * ProdSpecEntry.component-id = 0 * /
0x00, 0x08, 0x44, 0x45, / * స్ట్రింగ్ పొడవు = 8 | prodSpecEntry.prod-spec = DE124567 * /
0x31, 0x32, 0x34, 0x35, 0x36, 0x37, 0x09, 0x87, / * లక్షణం-ఐడి = MDC_ATTR_TIME_ABS * /
0x00, 0x08, / * లక్షణం-విలువ. పొడవు = 8 * /
0x20, 0x09, 0x06, 0x12, /* సంపూర్ణ-సమయం-సెయింట్amp=2009-06-12T12:05:0000*/
0x12, 0x05, 0x00, 0x00};
ఇందులో మాజీample, ఏజెంట్ దాని MDS ను పల్స్ ఆక్సిమీటర్‌గా వర్ణిస్తుంది, కంపెనీ పేరు “ఫ్రీస్కేల్” మరియు పరికరం మోడల్ “MED-SPO2 PHDC”.
ఏజెంట్ ఆపరేటింగ్ స్థితిలో ఉన్న తర్వాత, అది మేనేజర్‌కు కొలతలను నివేదించడాన్ని ప్రారంభించవచ్చు. స్థిర నివేదికలను ఉపయోగించి కొలతలు పంపాలి. ఈ నివేదికలు తప్పనిసరిగా గతంలో పంపిన MDS ఆకృతీకరణ నివేదికతో నిర్వహించబడిన కొలతలను కలిగి ఉండాలి. మాజీ కోసంample, మా కాన్ఫిగరేషన్ నివేదికలో, ఏజెంట్ మేనేజర్‌కు రెండు సంఖ్యా కొలతలు, ఒక SpO2 విలువ మరియు పల్స్ రేట్ విలువను పంపుతానని సూచించాడు. మా MDS ఆబ్జెక్ట్ ఫలితం క్రింది విధంగా ఉంది:

MED-SPO2 ఏజెంట్ ప్రాతినిధ్యంమూర్తి 4. MED-SPO2 ఏజెంట్ ప్రాతినిధ్యం

/ * పంపడానికి కొలతలు * /
uint_8 USB_CONST PHD_OXI_DIM_DATA_TX [PHD_OXI_DIM_DATA_TX_SIZE] = {
0xE7, 0x00, / * APDU CHOICE Type (PrstApdu) * /
0x00, 0x36, /*CHOICE.length = 54 * /
0x00, 0x34, / * OCTET STRING.length = 52 * /
0x12, 0x36, / * invoke-id = 0x1236 * /
0x01, 0x01, / * CHOICE (రిమోట్ ఆపరేషన్ ఇన్వోక్ | ధృవీకరించబడిన ఈవెంట్ రిపోర్ట్) * /
0x00, 0x2E, /*CHOICE.length = 46 * /
0x00, 0x00, / * obj-handle = 0 (MDS ఆబ్జెక్ట్) * /
0x00, 0x00, 0x00, 0x00, / * ఈవెంట్-సమయం = 0 * /
0x0D, 0x1D, / * ఈవెంట్-రకం = MDC_NOTI_SCAN_REPORT_FIXED * /
0x00, 0x24, /*event-info.length = 36 * /
0xF0, 0x00, /*ScanReportInfoFixed.data-req-id =
0xF000 * / 0x00, 0x00, /*ScanReportInfoFixed.scan-report-no = 0 * /
0x00, 0x02, / * ScanReportInfoFixed.obs-scan-fixed.count = 2 * /
0x00, 0x1C, /*ScanReportInfoFixed.obs-scan-fixed.length = 28 * /
0x00, 0x01, /*ScanReportInfoFixed.obs-scan-fixed.value Leisure0 ].obj-handle = 1 * /
0x00, 0x0A, /*ScanReportInfoFixed.obs-scan-fixed.value Leisure0]. obs-val-data.length = 10 * /
0x00, 0x61, / * సింపుల్-ను-పరిశీలించిన-విలువ = 97% SpO2 * /
0x20, 0x0B, 0x09, 0x23, /*సంపూర్ణ-సమయం-సెయింట్amp = 2011-09-23T10:05:0000*/
0x0A, 0x05, 0x00, 0x00, 0x00, 0x02, / * ScanReportInfoFixed.obs-scan-fixed.value [1] .obj-handle = 2 * /
0x00, 0x0A, / * ScanReportInfoFixed.obs-scan-fixed.value [1]. obs-val-data.length = 10 * /
0x00, 0x4E, / * సింపుల్-ను-పరిశీలించిన-విలువ = 78 బిపిఎం * /
0x20, 0x0B, 0x09, 0x23, /*సంపూర్ణ-సమయం-సెయింట్amp = 2011-09-23T10:05:0000*/
0x0A, 0x05, 0x00, 0x00};
ఈ APDU లో, ఏజెంట్ రెండు సంఖ్యా వస్తువులను నివేదించారు, 97 మరియు 78. 97 ఆబ్జెక్ట్ హ్యాండిల్ 1 గా గుర్తించబడింది కాబట్టి ఈ కొలత SpO2 కి అనుగుణంగా ఉందని మేనేజర్ తెలుసుకోవచ్చు. అదే 78, ఆబ్జెక్ట్ హ్యాండిల్ 2 గా నివేదించబడింది కాబట్టి ఈ కొలత పల్స్ రేట్‌కు అనుగుణంగా ఉందని మేనేజర్‌కు తెలుసు. ఒక సమయం సెయింట్amp MDS ఆకృతీకరణ నివేదికలో నిర్వచించిన విధంగా ప్రతి కొలతలు కూడా పంపబడ్డాయి.

మైక్రోకంట్రోలర్‌లో అప్లికేషన్ ఎగ్జిక్యూషన్

TestApp_Task ఫంక్షన్ అని పిలువబడినప్పుడు మైక్రోకంట్రోలర్‌లో అప్లికేషన్ ఎగ్జిక్యూషన్ ప్రారంభమవుతుంది. ఈ ఫంక్షన్ అనంతమైన లూప్‌లో అమలు చేయబడుతుంది మరియు ఏజెంట్ యొక్క స్టేట్ మెషిన్ యొక్క స్థితిని నిరంతరం తనిఖీ చేస్తుంది.
TestApp_Task ఫంక్షన్ అప్లికేషన్ యొక్క స్థితిని నిర్వహించే చిన్న స్టేట్ మెషీన్ను కలిగి ఉంది. మొదటి సందర్భంలో, పరికరం విజయవంతంగా PHD గా లెక్కించబడితే, “ఈవెంట్” వేరియబుల్ APP_PHD_INITIALIZED. పరికరం మొదట టైమర్‌ను ప్రారంభిస్తుంది, ఏజెంట్‌కు ఒకటి కంటే ఎక్కువ MDS ఆబ్జెక్ట్ ఉన్నట్లయితే అసోసియేషన్ కోసం వారు కోరుకున్న MDS ఆబ్జెక్ట్‌ను ఎంచుకోవడానికి వినియోగదారుకు సమయం ఇస్తుంది. టైమర్ దాని గణనను పూర్తి చేసిన తర్వాత, “ఈవెంట్” వేరియబుల్ APP_PHD_SELECT_TIMER_OFF. ఈ కేసులోకి
ప్రకటన, PHD_Connect_To_Manager ఫంక్షన్ అంటారు. ఈ ఫంక్షన్‌లో నిర్వచించిన అసోసియేషన్ అభ్యర్థనను పంపుతుంది file phd_device_spec.c మరియు ముందు వివరించిన అసోసియేషన్ ప్రక్రియను ప్రారంభిస్తుంది. అన్ని అసోసియేషన్ ప్రక్రియ స్వయంచాలకంగా నిర్వహించబడుతుంది file phd_com_model.c మరియు ఇది గతంలో నిర్వచించిన అవసరమైన అన్ని APDU లను తీసుకుంటుంది file అనుబంధం పూర్తి చేయడానికి phd_device_spec.c. ఇది PHD కమ్యూనికేషన్‌కు సంబంధించిన అన్ని లాజిస్టిక్స్‌ని మర్చిపోతూ డెవలపర్‌లకు వారి అప్లికేషన్‌పై దృష్టి పెట్టడానికి సహాయపడుతుంది.
SpO2_PeriodicTask ఫంక్షన్‌ను క్రమానుగతంగా TestApp_Task ఫంక్షన్‌లోకి పిలుస్తారు. ఈ ఫంక్షన్ పల్స్ ఆక్సిమీటర్‌ను నిర్వహిస్తుంది. ఇది MED-SPO2 బోర్డు నిర్వహణకు అవసరమైన పెరిఫెరల్స్ ను నియంత్రిస్తుంది మరియు SpO2 మరియు పల్స్ రేటు కొలతలను పొందుతుంది. ఈ ఫంక్షన్ యొక్క ప్రవర్తన గురించి మరింత సమాచారం అప్లికేషన్ నోట్ AN4327 పల్స్ ఆక్సిమీటర్ ఫండమెంటల్స్ అండ్ డిజైన్ లో చూడవచ్చు. క్రింది రేఖాచిత్రం TestApp_Task ఫంక్షన్‌ను సూచిస్తుంది.

TestApp_Task ప్రవాహ రేఖాచిత్రంమూర్తి 5. టెస్ట్అప్_టాస్క్ ఫ్లో రేఖాచిత్రం

SpO2 ఆవర్తన పనిని అమలు చేసేటప్పుడు, SpO2 మరియు పల్స్ రేటు కొలతలు నిరంతరం నవీకరించబడతాయి. SpO2 అప్లికేషన్ ప్రారంభంలో, ఒక సెకండ్ టైమర్ సృష్టించబడింది. ప్రతిసారీ గణన చేరుకున్నప్పుడు మరియు మరొక సెకనుకు పున ar ప్రారంభించబడినందున ఈ టైమర్ సక్రియం చేయబడింది. ఈ టైమర్ సక్రియం అయినప్పుడు, ఇది Send_PHDC_Measurements ఫంక్షన్‌ను అమలు చేస్తుంది. ఈ ఫంక్షన్ గడిచిన సెకన్ల పరిమాణాన్ని లెక్కిస్తుంది మరియు రెండవ గడిచిన పరిమాణం SPO2_PHDC_UPDATE_PERIOD లో నిర్వచించినట్లుగా ఉందని గుర్తించినప్పుడు, ఇది ఫంక్షన్ PHD_Send_Measurements_to_Manager అని పిలుస్తుంది.
ఫంక్షన్ PHD_Send_Measurements_to_Manager లో నిర్వచించిన కొలత స్థిర నివేదికను నవీకరిస్తుంది file phd_devicespec.c SpO2 ఆవర్తన టాస్క్ ఫంక్షన్ ద్వారా తీసుకున్న ఇటీవలి కొలతలతో. ప్రతి 10 సెకన్లకు కొత్త కొలతల సెట్ పంపబడుతుంది మరియు సంపూర్ణ సమయం సెయింట్amp ఒక నిమిషంలో పెరుగుతుంది. అప్పుడు మేనేజర్ కొలతలు తీసుకొని దాని GUI లో చూపిస్తాడు.

డెమోను నడుపుతోంది

ఈ క్రింది సూచనలు డెమో యొక్క అసెంబ్లింగ్, సాఫ్ట్‌వేర్ డౌన్‌లోడ్ మరియు రన్నింగ్‌లో మీకు మార్గనిర్దేశం చేస్తాయి.

హార్డ్వేర్ సెట్

డెమోను సమీకరించటానికి, మీకు ఈ క్రింది భాగాలు అవసరం.

అవసరమైన శీర్షికమూర్తి 6. అవసరమైన శీర్షిక

TWR-K52N512 బోర్డు మరియు TWR-SER బోర్డు పనిచేయడానికి అసలు జంపర్ కాన్ఫిగరేషన్‌ను మార్చాలి. ఈ బోర్డుల జంపర్ కాన్ఫిగరేషన్ క్రింద అందించినట్లుగా ఉందని నిర్ధారించుకోండి.
పట్టిక 1. TWR-SER జంపర్ కాన్ఫిగరేషన్

జంపర్

స్థానం

J10 1-2
J16 3-4
J2 1-2

పట్టిక 2. TWR-K53N512 జంపర్ కాన్ఫిగరేషన్

జంపర్

స్థానం

J1 తెరవండి
J3 తెరవండి
J4 2-3
J5 తెరవండి
J6 కనెక్ట్ చేయబడింది
J7 కనెక్ట్ చేయబడింది
J11 1-2
J12 తెరవండి
J14 తెరవండి
J15 కనెక్ట్ చేయబడింది
J16 1-2
J17 కనెక్ట్ చేయబడింది
J18 కనెక్ట్ చేయబడింది
J20 తెరవండి
J21 కనెక్ట్ చేయబడింది
J22 తెరవండి
J24 1-2
J25 తెరవండి
J26 తెరవండి
J28 తెరవండి
J29 కనెక్ట్ చేయబడింది
J32 1-2
J33 1-2
J34 తెరవండి
డెమోను సమీకరించడం

క్రింది దశలు డెమో సమీకరణపై మీకు మార్గనిర్దేశం చేస్తాయి.
1. TWR-K53N512 బోర్డు మరియు ప్రాథమిక ఎలివేటర్ బోర్డు తీసుకోండి. ప్రాథమిక ఎలివేటర్ బోర్డులోని స్లాట్లలో ఒకదానికి “ప్రైమరీ” గా గుర్తించబడిన TWR-K53N512 బోర్డు వైపు కనెక్ట్ చేయండి.

TWR-K53N512 ను సమీకరించడంమూర్తి 7. TWR-K53N512 ను సమీకరించడం

2. ఇప్పుడు TWR-SER బోర్డు తీసుకోండి. ప్రైమరీ ఎలివేటర్ బోర్డ్‌లోని స్లాట్‌లలో ఒకదానికి ప్రాధమికంగా గుర్తించబడిన TWR-SER వైపు కనెక్ట్ చేయండి.

TWR-SER ను సమీకరించడంమూర్తి 8. TWR-SER ను సమీకరించడం

3. సెకండరీ ఎలివేటర్ బోర్డు తీసుకోండి. సెకండరీ ఎలివేటర్ బోర్డ్‌లోని సంబంధిత స్లాట్‌కు “సెకండరీ” గా గుర్తించబడిన TWR-SER మరియు TWR-K53N512 బోర్డుల వైపు కనెక్ట్ చేయండి.

సెకండరీ ఎలివేటర్‌ను సమీకరించడంమూర్తి 9. సెకండరీ ఎలివేటర్‌ను సమీకరించడం

4. MED-SPO2 బోర్డు తీసుకోండి. MED-SPO2 బోర్డులోని పిన్‌లను TWR- K53N512 బోర్డులోని మెడికల్ కనెక్టర్‌కు కనెక్ట్ చేయండి. MED-SPO2 బోర్డులోని పిన్ ఎన్యూమరేషన్ TWR- K53N512 బోర్డులోని పిన్ ఎన్యూమరేషన్‌తో ప్రతిబింబించాలి (క్రింద ఉన్న చిత్రాన్ని చూడండి).

అనలాగ్ ఫ్రంట్ ఎండ్ ప్లేస్‌మెంట్మూర్తి 10. అనలాగ్ ఫ్రంట్ ఎండ్ ప్లేస్‌మెంట్

5. పల్స్ ఆక్సిమీటర్ సెన్సార్‌ను MED-SPO9 బోర్డులోని DB2 కనెక్టర్‌కు కనెక్ట్ చేయండి.

పల్స్ ఆక్సిమీటర్ సెన్సార్ ప్లేస్‌మెంట్మూర్తి 11. పల్స్ ఆక్సిమీటర్ సెన్సార్ ప్లేస్‌మెంట్

డెమో ఎగ్జిక్యూషన్

1. HealthLink® ని డౌన్‌లోడ్ చేసి, ఇన్‌స్టాల్ చేయండి. ఇది L లో చూడవచ్చుampరే నెట్‌వర్క్‌లు web పేజీ www.lnihealth.com.

LNI ఆరోగ్యం web పేజీచిత్రం 12. LNI ఆరోగ్యం web పేజీ

2. కంప్యూటర్ నుండి TWR-SER USB పోర్ట్‌కు A నుండి మినీ B USB కేబుల్‌ను కనెక్ట్ చేయండి.

USB ని TWR-SER కి కనెక్ట్ చేస్తోందిమూర్తి 13. USB ని TWR-SER కి కనెక్ట్ చేస్తోంది

3. USB PHDC డ్రైవర్లను అడుగుతున్న విండో పాపప్ అయితే, “డ్రైవర్లను స్వయంచాలకంగా ఇన్‌స్టాల్ చేయండి” ఎంపికను ఎంచుకోండి. హెల్త్‌లింక్ ® ప్రోగ్రామ్ ఇన్‌స్టాలేషన్ సమయంలో డ్రైవర్లు సిస్టమ్ ఫోల్డర్‌కు కాపీ చేయబడతారు.

PHDC డ్రైవర్లను వ్యవస్థాపించడం

మూర్తి 14. PHDC డ్రైవర్లను వ్యవస్థాపించడం

4. హెల్త్‌లింక్ ® ప్రోగ్రామ్‌ను అమలు చేయండి. మీరు ప్రోగ్రామ్‌ను మొదటిసారి ఉపయోగిస్తే, ఖాతాను సృష్టించమని అది మిమ్మల్ని అభ్యర్థిస్తుంది. మీ ఆరోగ్య డేటా ప్రొవైడర్‌ను ఎంచుకునే వినియోగదారు ఖాతాను సృష్టించండి (అనగా గూగుల్ హెల్త్, మైక్రోసాఫ్ట్ హెల్త్‌వాల్ట్ మొదలైనవి…). మీకు హెల్త్ డేటా ప్రొవైడర్ లేకపోతే “డిస్క్‌లో సేవ్ చేయి” ఎంపికను ఉపయోగించవచ్చు.

ఖాతాను సృష్టిస్తోందిమూర్తి 15. ఖాతాను సృష్టించడం

5. దిగువ చిత్రంలో చూపిన విధంగా పల్స్ ఆక్సిమీటర్ సెన్సార్‌ను చూపుడు వేలుపై ఉంచండి.

ఫింగర్ సెన్సార్ ప్లేస్‌మెంట్

మూర్తి 16. ఫింగర్ సెన్సార్ ప్లేస్‌మెంట్

6. ఖాతా సక్రియంగా ఉన్నప్పుడు, హెల్త్‌లింక్ ® ప్రోగ్రామ్ టవర్ సిస్టమ్‌ను పల్స్ ఆక్సిమీటర్ పరికరంగా గుర్తిస్తుంది. ప్రతి పది సెకన్లకు కొలతలు పంపబడతాయి.

డెమో రన్నింగ్

మూర్తి 17. డెమో రన్నింగ్

సూచనలు

AN పల్స్ ఆక్సిమీటర్ యొక్క అభివృద్ధి “AN4327 పల్స్ ఆక్సిమీటర్ ఫండమెంటల్స్ అండ్ డిజైన్” అనే అప్లికేషన్ నోట్ మీద ఆధారపడి ఉంటుంది.
• సాఫ్ట్‌వేర్ అనేది ఫ్రీస్కేల్‌లో కనిపించే PHDC 3.0 తో USB స్టాక్‌పై ఆధారపడి ఉంటుంది web పేజీ https: //www.freescale.com.
ప్రోటోకాల్ ప్రోటోకాల్ ప్రామాణిక ISO / IEEE 11073-20601 వ్యక్తిగత ఆరోగ్య పరికర కమ్యూనికేషన్లలో ఆధారపడి ఉంటుంది: ఆప్టిమైజ్డ్ ఎక్స్ఛేంజ్ ప్రోటోకాల్స్
E పిహెచ్‌డి పల్స్ ఆక్సిమీటర్ కమ్యూనికేషన్ ప్రోటోకాల్ అమలును IEEE 11073-10404 వ్యక్తిగత ఆరోగ్య పరికర కమ్యూనికేషన్లతో అభివృద్ధి చేశారు: పరికర స్పెషలైజేషన్-పల్స్ ఆక్సిమీటర్
ఈ సాఫ్ట్‌వేర్ IAR 6.3 ఉపయోగించి అభివృద్ధి చేయబడింది. దీనిని IAR నుండి డౌన్‌లోడ్ చేసుకోవచ్చు web పేజీ https://www.iar.com
• ఈ డెమో అభివృద్ధిలో ఉపయోగించే GUI L నుండి HealthLink® GUIampరే నెట్‌వర్క్‌లు మరియు LNI నుండి డౌన్‌లోడ్ చేసుకోవచ్చు web పేజీ https://www.lnihealth.com

ముగింపులు

వ్యక్తిగత ఆరోగ్య సంరక్షణ పరికర తరగతి పోర్టబుల్ వైద్య పరికరాలలో అదే పరస్పర సామర్థ్యాన్ని అనుమతిస్తుంది. ఫ్రీస్కేల్ IEEE 11073-20601 వంటి ప్రమాణాలతో కమ్యూనికేట్ చేయగల పరికరాల సృష్టిలో డెవలపర్‌లకు సహాయపడే కనెక్టివిటీ పరిష్కారాలను అందిస్తుంది, ఇది మార్కెట్లో మంచి ఎంపికగా మారుతుంది.
మమ్మల్ని ఎలా చేరుకోవాలి:
హోమ్ పేజీ: www.freescale.com
Web మద్దతు: http://www.freescale.com/support
USA / యూరప్ లేదా స్థానాలు జాబితా చేయబడలేదు:
ఫ్రీస్కేల్ సెమీకండక్టర్
సాంకేతిక సమాచార కేంద్రం, EL516 2100
ఈస్ట్ ఇలియట్ రోడ్
టెంపే, అరిజోనా 85284 +1-800-521-6274 లేదా +1-480-768-2130
www.freescale.com/support
యూరప్, మిడిల్ ఈస్ట్ మరియు ఆఫ్రికా:
ఫ్రీస్కేల్ హాల్బ్లిటర్ డ్యూచ్చ్లాండ్ GmbH
సాంకేతిక సమాచార కేంద్రం
స్కాట్జ్‌బోజెన్ 7
81829 మున్చెన్, జర్మనీ
+44 1296 380 456 (ఇంగ్లీష్)
+46 8 52200080 (ఇంగ్లీష్)
+49 89 92103 559 (జర్మన్)
+33 1 69 35 48 48 (ఫ్రెంచ్)
www.freescale.com/support
జపాన్:
ఫ్రీస్కేల్ సెమీకండక్టర్ జపాన్ లిమిటెడ్.
ప్రధాన కార్యాలయం
ఆర్కో టవర్ 15 ఎఫ్
1-8-1, షిమో-మెగురో, మెగురో-కు,
టోక్యో 153-0064
జపాన్
0120 191014 లేదా +81 3 5437 9125 సె
upport.japan@freescale.com
ఆసియా పసిఫిక్:
ఫ్రీస్కేల్ సెమీకండక్టర్ చైనా లిమిటెడ్.
ఎక్స్చేంజ్ బిల్డింగ్ 23 ఎఫ్
నం 118 జియాంగ్వో రోడ్
చాయాంగ్ జిల్లా
బీజింగ్ 100022
చైనా
+86 10 5879 8000
support.asia@freescale.com
సిస్టమ్ మరియు సాఫ్ట్‌వేర్ అమలు చేసేవారు ఫ్రీస్కేల్ సెమీకండక్టర్స్ ఉత్పత్తులను ఉపయోగించడానికి వీలుగా ఈ పత్రంలోని సమాచారం అందించబడుతుంది. ఈ పత్రంలోని సమాచారం ఆధారంగా ఏదైనా ఇంటిగ్రేటెడ్ సర్క్యూట్లు లేదా ఇంటిగ్రేటెడ్ సర్క్యూట్లను రూపొందించడానికి లేదా రూపొందించడానికి ఎక్స్ప్రెస్ లేదా lied హాజనిత కాపీరైట్ లైసెన్సులు లేవు.
ఫ్రీస్కేల్ సెమీకండక్టర్ ఇక్కడ ఏ ఉత్పత్తులకు తదుపరి నోటీసు లేకుండా మార్పులు చేసే హక్కును కలిగి ఉంది. ఫ్రీస్కేల్ సెమీకండక్టర్ ఏదైనా నిర్దిష్ట ప్రయోజనం కోసం దాని ఉత్పత్తుల యొక్క అనుకూలత గురించి ఎటువంటి వారంటీ, ప్రాతినిధ్యం లేదా హామీ ఇవ్వదు, లేదా ఫ్రీస్కేల్ సెమీకండక్టర్ ఏదైనా ఉత్పత్తి లేదా సర్క్యూట్ యొక్క అప్లికేషన్ లేదా ఉపయోగం వల్ల ఉత్పన్నమయ్యే ఏదైనా బాధ్యతను తీసుకోదు మరియు పరిమితి లేకుండా సహా ఏదైనా బాధ్యతను ప్రత్యేకంగా నిరాకరిస్తుంది. పర్యవసానంగా లేదా యాదృచ్ఛిక నష్టాలు. ఫ్రీస్కేల్ సెమీకండక్టర్ డేటా షీట్స్ మరియు / లేదా స్పెసిఫికేషన్లలో అందించబడే “విలక్షణమైన” పారామితులు వేర్వేరు అనువర్తనాలలో మారవచ్చు మరియు చేయగలవు మరియు వాస్తవ పనితీరు కాలక్రమేణా మారవచ్చు. కస్టమర్ యొక్క సాంకేతిక నిపుణులచే ప్రతి కస్టమర్ అనువర్తనానికి “టైపికల్స్” తో సహా అన్ని ఆపరేటింగ్ పారామితులు ధృవీకరించబడాలి. ఫ్రీస్కేల్ సెమీకండక్టర్ దాని పేటెంట్ హక్కుల క్రింద లేదా ఇతరుల హక్కుల క్రింద ఎటువంటి లైసెన్స్‌ను తెలియజేయదు. ఫ్రీస్కేల్ సెమీకండక్టర్ ఉత్పత్తులు శరీరంలోకి శస్త్రచికిత్సా ఇంప్లాంట్ కోసం ఉద్దేశించిన వ్యవస్థలలో, లేదా జీవితానికి మద్దతు ఇవ్వడానికి లేదా నిలబెట్టుకోవటానికి ఉద్దేశించిన ఇతర అనువర్తనాలకు లేదా ఫ్రీస్కేల్ సెమీకండక్టర్ ఉత్పత్తి యొక్క వైఫల్యాన్ని సృష్టించగల ఇతర అనువర్తనాల కోసం రూపొందించబడలేదు, ఉద్దేశించబడలేదు లేదా అధికారం లేదు. వ్యక్తిగత గాయం లేదా మరణం సంభవించే పరిస్థితి. అటువంటి అనాలోచిత లేదా అనధికార అనువర్తనం కోసం కొనుగోలుదారు ఫ్రీస్కేల్ సెమీకండక్టర్ ఉత్పత్తులను కొనుగోలు చేయాలా లేదా ఉపయోగించాలా, కొనుగోలుదారు ఫ్రీస్కేల్ సెమీకండక్టర్ మరియు దాని అధికారులు, ఉద్యోగులు, అనుబంధ సంస్థలు, అనుబంధ సంస్థలు మరియు పంపిణీదారులకు నష్టపరిహారం చెల్లించాలి, అన్ని వాదనలు, ఖర్చులు, నష్టాలు మరియు ఖర్చులు మరియు సహేతుకమైన న్యాయవాది ఫీజులు ప్రత్యక్షంగా లేదా పరోక్షంగా, అటువంటి అనాలోచిత లేదా అనధికార వాడకంతో సంబంధం ఉన్న వ్యక్తిగత గాయం లేదా మరణం యొక్క ఏదైనా దావా నుండి, ఫ్రీస్కేల్ సెమీకండక్టర్ ఈ భాగం యొక్క రూపకల్పన లేదా తయారీ విషయంలో నిర్లక్ష్యంగా ఉందని ఆరోపించినప్పటికీ.
ఫ్రీస్కేల్ ఉత్పత్తుల యొక్క రోహెచ్ఎస్-కంప్లైంట్ మరియు / లేదా పిబి-ఫ్రీ వెర్షన్లు వాటి యొక్క రోహెచ్ఎస్-ఫిర్యాదు మరియు / లేదా పిబి-రహిత ప్రతిరూపాలుగా కార్యాచరణ మరియు విద్యుత్ లక్షణాలను కలిగి ఉంటాయి.
మరిన్ని వివరాలకు, చూడండి http://www.freescale.com లేదా మీ ఫ్రీస్కేల్ అమ్మకాల ప్రతినిధిని సంప్రదించండి.
ఫ్రీస్కేల్ యొక్క ఎన్విరాన్మెంటల్ ప్రొడక్ట్స్ ప్రోగ్రామ్ గురించి సమాచారం కోసం, వెళ్ళండి http://www.freescale.com/epp.
ఫ్రీస్కేల్ ™ మరియు ఫ్రీస్కేల్ లోగో ఫ్రీస్కేల్ సెమీకండక్టర్, ఇంక్ యొక్క ట్రేడ్మార్క్లు.
అన్ని ఇతర ఉత్పత్తి లేదా సేవా పేర్లు ఆయా యజమానుల ఆస్తి.
© 2012 ఫ్రీస్కేల్ సెమీకండక్టర్, ఇంక్.
USB PHDC యూజర్ మాన్యువల్ ఉపయోగించి NXP పల్స్ ఆక్సిమీటర్ - డౌన్‌లోడ్ చేయండి [ఆప్టిమైజ్ చేయబడింది]
USB PHDC యూజర్ మాన్యువల్ ఉపయోగించి NXP పల్స్ ఆక్సిమీటర్ - డౌన్‌లోడ్ చేయండి

సూచనలు

వ్యాఖ్యానించండి

మీ ఇమెయిల్ చిరునామా ప్రచురించబడదు. అవసరమైన ఫీల్డ్‌లు గుర్తించబడ్డాయి *