ZHCSA13P November 2008 – February 2021 TMS320F28020 , TMS320F280200 , TMS320F28021 , TMS320F28022 , TMS320F28023 , TMS320F28023-Q1 , TMS320F28026 , TMS320F28026-Q1 , TMS320F28026F , TMS320F28027 , TMS320F28027-Q1 , TMS320F28027F , TMS320F28027F-Q1
PRODUCTION DATA
The GPIO MUX can multiplex up to three independent peripheral signals on a single GPIO pin in addition to providing individual pin bit-banging I/O capability.
The device supports 22 GPIO pins. The GPIO control and data registers are mapped to Peripheral Frame 1 to enable 32-bit operations on the registers (along with 16-bit operations). Table 9-29 shows the GPIO register mapping.
NAME | ADDRESS | SIZE (x16) | DESCRIPTION |
---|---|---|---|
GPIO CONTROL REGISTERS (EALLOW PROTECTED) | |||
GPACTRL | 0x6F80 | 2 | GPIO A Control Register (GPIO0 to 31) |
GPAQSEL1 | 0x6F82 | 2 | GPIO A Qualifier Select 1 Register (GPIO0 to 15) |
GPAQSEL2 | 0x6F84 | 2 | GPIO A Qualifier Select 2 Register (GPIO16 to 31) |
GPAMUX1 | 0x6F86 | 2 | GPIO A MUX 1 Register (GPIO0 to 15) |
GPAMUX2 | 0x6F88 | 2 | GPIO A MUX 2 Register (GPIO16 to 31) |
GPADIR | 0x6F8A | 2 | GPIO A Direction Register (GPIO0 to 31) |
GPAPUD | 0x6F8C | 2 | GPIO A Pullup Disable Register (GPIO0 to 31) |
GPBCTRL | 0x6F90 | 2 | GPIO B Control Register (GPIO32 to 38) |
GPBQSEL1 | 0x6F92 | 2 | GPIO B Qualifier Select 1 Register (GPIO32 to 38) |
GPBMUX1 | 0x6F96 | 2 | GPIO B MUX 1 Register (GPIO32 to 38) |
GPBDIR | 0x6F9A | 2 | GPIO B Direction Register (GPIO32 to 38) |
GPBPUD | 0x6F9C | 2 | GPIO B Pullup Disable Register (GPIO32 to 38) |
AIOMUX1 | 0x6FB6 | 2 | Analog, I/O mux 1 register (AIO0 to AIO15) |
AIODIR | 0x6FBA | 2 | Analog, I/O Direction Register (AIO0 to AIO15) |
GPIO DATA REGISTERS (NOT EALLOW PROTECTED) | |||
GPADAT | 0x6FC0 | 2 | GPIO A Data Register (GPIO0 to 31) |
GPASET | 0x6FC2 | 2 | GPIO A Data Set Register (GPIO0 to 31) |
GPACLEAR | 0x6FC4 | 2 | GPIO A Data Clear Register (GPIO0 to 31) |
GPATOGGLE | 0x6FC6 | 2 | GPIO A Data Toggle Register (GPIO0 to 31) |
GPBDAT | 0x6FC8 | 2 | GPIO B Data Register (GPIO32 to 38) |
GPBSET | 0x6FCA | 2 | GPIO B Data Set Register (GPIO32 to 38) |
GPBCLEAR | 0x6FCC | 2 | GPIO B Data Clear Register (GPIO32 to 38) |
GPBTOGGLE | 0x6FCE | 2 | GPIO B Data Toggle Register (GPIO32 to 38) |
AIODAT | 0x6FD8 | 2 | Analog I/O Data Register (AIO0 to AIO15) |
AIOSET | 0x6FDA | 2 | Analog I/O Data Set Register (AIO0 to AIO15) |
AIOCLEAR | 0x6FDC | 2 | Analog I/O Data Clear Register (AIO0 to AIO15) |
AIOTOGGLE | 0x6FDE | 2 | Analog I/O Data Toggle Register (AIO0 to AIO15) |
GPIO INTERRUPT AND LOW-POWER MODES SELECT REGISTERS (EALLOW PROTECTED) | |||
GPIOXINT1SEL | 0x6FE0 | 1 | XINT1 GPIO Input Select Register (GPIO0 to 31) |
GPIOXINT2SEL | 0x6FE1 | 1 | XINT2 GPIO Input Select Register (GPIO0 to 31) |
GPIOXINT3SEL | 0x6FE2 | 1 | XINT3 GPIO Input Select Register (GPIO0 to 31) |
GPIOLPMSEL | 0x6FE8 | 2 | LPM GPIO Select Register (GPIO0 to 31) |
There is a two-SYSCLKOUT cycle delay from when the write to the GPxMUXn/AIOMUXn and GPxQSELn registers occurs to when the action is valid.
DEFAULT AT RESET PRIMARY I/O FUNCTION(1)(2) | PERIPHERAL SELECTION 1 | PERIPHERAL SELECTION 2 | PERIPHERAL SELECTION 3 | |
---|---|---|---|---|
GPAMUX1 REGISTER BITS | (GPAMUX1 BITS = 00) | (GPAMUX1 BITS = 01) | (GPAMUX1 BITS = 10) | (GPAMUX1 BITS = 11) |
1-0 | GPIO0 | EPWM1A (O) | Reserved | Reserved |
3-2 | GPIO1 | EPWM1B (O) | Reserved | COMP1OUT (O) |
5-4 | GPIO2 | EPWM2A (O) | Reserved | Reserved |
7-6 | GPIO3 | EPWM2B (O) | Reserved | COMP2OUT(3) (O) |
9-8 | GPIO4 | EPWM3A (O) | Reserved | Reserved |
11-10 | GPIO5 | EPWM3B (O) | Reserved | ECAP1 (I/O) |
13-12 | GPIO6 | EPWM4A (O) | EPWMSYNCI (I) | EPWMSYNCO (O) |
15-14 | GPIO7 | EPWM4B (O) | SCIRXDA (I) | Reserved |
17-16 | Reserved | Reserved | Reserved | Reserved |
19-18 | Reserved | Reserved | Reserved | Reserved |
21-20 | Reserved | Reserved | Reserved | Reserved |
23-22 | Reserved | Reserved | Reserved | Reserved |
25-24 | GPIO12 | TZ1 (I) | SCITXDA (O) | Reserved |
27-26 | Reserved | Reserved | Reserved | Reserved |
29-28 | Reserved | Reserved | Reserved | Reserved |
31-30 | Reserved | Reserved | Reserved | Reserved |
GPAMUX2 REGISTER BITS | (GPAMUX2 BITS = 00) | (GPAMUX2 BITS = 01) | (GPAMUX2 BITS = 10) | (GPAMUX2 BITS = 11) |
1-0 | GPIO16 | SPISIMOA (I/O) | Reserved | TZ2 (I) |
3-2 | GPIO17 | SPISOMIA (I/O) | Reserved | TZ3 (I) |
5-4 | GPIO18 | SPICLKA (I/O) | SCITXDA (O) | XCLKOUT (O) |
7-6 | GPIO19/XCLKIN | SPISTEA (I/O) | SCIRXDA (I) | ECAP1 (I/O) |
9-8 | Reserved | Reserved | Reserved | Reserved |
11-10 | Reserved | Reserved | Reserved | Reserved |
13-12 | Reserved | Reserved | Reserved | Reserved |
15-14 | Reserved | Reserved | Reserved | Reserved |
17-16 | Reserved | Reserved | Reserved | Reserved |
19-18 | Reserved | Reserved | Reserved | Reserved |
21-20 | Reserved | Reserved | Reserved | Reserved |
23-22 | Reserved | Reserved | Reserved | Reserved |
25-24 | GPIO28 | SCIRXDA (I) | SDAA (I/OD) | TZ2 (I) |
27-26 | GPIO29 | SCITXDA (O) | SCLA (I/OD) | TZ3 (I) |
29-28 | Reserved | Reserved | Reserved | Reserved |
31-30 | Reserved | Reserved | var tempcontentStr='/Analog & Mixed-Signal/microcontrollers (mcus) & processors/c2000 real-time microcontrollers'; var partNum ='TMS320F28020'; var contentStr = replaceSplChars( tempcontentStr )+ "/"+ partNum; var tiContentGroup = contentStr.replace("'",""); function replaceSplChars(content){ var myRegExp=new RegExp("™|®|™","gi"); content=content.replace(myRegExp,""); return content; } var tiProductPathID='/4/5014/'; var tiPageName = 'Literature reader-ZHCSA13P-zh_CN'; var tiDocType = 'Data Sheet'; var tiLibraryStore = new com.TI.tiLibrary.tiLibraryStore(); var tiLibraryViewerStore = tiLibraryStore.viewer_store; RiotControl.addStore(tiLibraryStore); var subRoutes = riot.route.create(); subRoutes("/document-viewer/*/datasheet/*\\?*#*", function(gpn, url, params, anchor) { RiotControl.trigger("ti_library_open_viewer", { document: tiLibraryViewerStore.document, documentLocale: tiLibraryViewerStore.documentLocale, url: "/document-viewer/" + gpn + "/datasheet/" + url + "#" + anchor, toc: true, set_content: true }); }); subRoutes("/document-viewer/*/datasheet/*#*", function(gpn, url, anchor) { RiotControl.trigger("ti_library_open_viewer", { document: tiLibraryViewerStore.document, documentLocale: tiLibraryViewerStore.documentLocale, url: "/document-viewer/" + gpn + "/datasheet/" + url + "#" + anchor, toc: true, set_content: true }); }); subRoutes("/document-viewer/*/datasheet/*", function(gpn, url) { RiotControl.trigger("ti_library_open_viewer", { document: tiLibraryViewerStore.document, documentLocale: tiLibraryViewerStore.documentLocale, url: "/document-viewer/" + gpn + "/datasheet/" + url, toc: true, set_content: true }); }); subRoutes("/document-viewer/*/*/datasheet/*\\?*#*", function(locale, gpn, url, params, anchor) { RiotControl.trigger("ti_library_open_viewer", { document: tiLibraryViewerStore.document, documentLocale: tiLibraryViewerStore.documentLocale, url: "/document-viewer/" + locale + "/" + gpn + "/datasheet/" + url + "#" + anchor, toc: true, set_content: true }); }); subRoutes("/document-viewer/*/*/datasheet/*#*", function(locale, gpn, url, anchor) { RiotControl.trigger("ti_library_open_viewer", { document: tiLibraryViewerStore.document, documentLocale: tiLibraryViewerStore.documentLocale, url: "/document-viewer/" + locale + "/" + gpn + "/datasheet/" + url + "#" + anchor, toc: true, set_content: true }); }); subRoutes("/document-viewer/*/*/datasheet/*", function(locale, gpn, url) { RiotControl.trigger("ti_library_open_viewer", { document: tiLibraryViewerStore.document, documentLocale: tiLibraryViewerStore.documentLocale, url: "/document-viewer/" + locale + "/" + gpn + "/datasheet/" + url, toc: true, set_content: true }); }); subRoutes("/document-viewer/*/datasheet#*/*", function(gpn, url, fragment) { RiotControl.trigger("ti_library_open_viewer", { document: tiLibraryViewerStore.document, documentLocale: tiLibraryViewerStore.documentLocale, url: "/document-viewer/" + gpn + "/datasheet#" + url + "/" + fragment, toc: true, set_content: true }); }); subRoutes("/document-viewer/*/*/datasheet#*/*", function(locale, gpn, url, fragment) { RiotControl.trigger("ti_library_open_viewer", { document: tiLibraryViewerStore.document, documentLocale: tiLibraryViewerStore.documentLocale, url: "/document-viewer/" + locale + "/" + gpn + "/datasheet#" + url + "/" + fragment, toc: true, set_content: true }); }); subRoutes("/document-viewer/lit/html/*", function(litnum) { RiotControl.trigger("ti_library_open_viewer", { document: tiLibraryViewerStore.document, documentLocale: tiLibraryViewerStore.documentLocale, url: "/document-viewer/lit/html/" + litnum, toc: true, set_content: true }); }); subRoutes("/document-viewer/lit/html/*/*\\?*#*", function(litnum, url, params, anchor) { RiotControl.trigger("ti_library_open_viewer", { document: tiLibraryViewerStore.document, documentLocale: tiLibraryViewerStore.documentLocale, url: "/document-viewer/lit/html/" + litnum + "/" + url + "#" + anchor, toc: true, set_content: true }); }); subRoutes("/document-viewer/lit/html/*/*#*", function(litnum, url, anchor) { RiotControl.trigger("ti_library_open_viewer", { document: tiLibraryViewerStore.document, documentLocale: tiLibraryViewerStore.documentLocale, url: "/document-viewer/lit/html/" + litnum + "/" + url + "#" + anchor, toc: true, set_content: true }); }); subRoutes("/document-viewer/lit/html/*#*/*", function(litnum, url, anchor) { RiotControl.trigger("ti_library_open_viewer", { document: tiLibraryViewerStore.document, documentLocale: tiLibraryViewerStore.documentLocale, url: "/document-viewer/lit/html/" + litnum + "#" + url + "/" + anchor, toc: true, set_content: true }); }); subRoutes("/document-viewer/*/lit/html/*#*/*", function(locale, litnum, url, anchor) { RiotControl.trigger("ti_library_open_viewer", { document: tiLibraryViewerStore.document, documentLocale: tiLibraryViewerStore.documentLocale, url: "/document-viewer/" + locale + "/lit/html/" + litnum + "#" + url + "/" + anchor, toc: true, set_content: true }); }); subRoutes("/document-viewer/lit/html/*/*", function(litnum, url) { RiotControl.trigger("ti_library_open_viewer", { document: tiLibraryViewerStore.document, documentLocale: tiLibraryViewerStore.documentLocale, url: "/document-viewer/lit/html/" + litnum + "/" + url, toc: true, set_content: true }); }); subRoutes("/document-viewer/*/lit/html/*/*\\?*#*", function(locale, litnum, url, params, anchor) { RiotControl.trigger("ti_library_open_viewer", { document: tiLibraryViewerStore.document, documentLocale: tiLibraryViewerStore.documentLocale, url: "/document-viewer/" + locale + "/lit/html/" + litnum + "/" + url + "#" + anchor, toc: true, set_content: true }); }); subRoutes("/document-viewer/*/lit/html/*/*#*", function(locale, litnum, url, anchor) { RiotControl.trigger("ti_library_open_viewer", { document: tiLibraryViewerStore.document, documentLocale: tiLibraryViewerStore.documentLocale, url: "/document-viewer/" + locale + "/lit/html/" + litnum + "/" + url + "#" + anchor, toc: true, set_content: true }); }); subRoutes("/document-viewer/*/lit/html/*/*", function(locale, litnum, url) { RiotControl.trigger("ti_library_open_viewer", { document: tiLibraryViewerStore.document, documentLocale: tiLibraryViewerStore.documentLocale, url: "/document-viewer/" + locale + "/lit/html/" + litnum + "/" + url, toc: true, set_content: true }); }); var compose_url = function(q) { //URL format: scheme:[//[user[:password]@]host[:port]][/path][?query][#fragment] var tempUrl = q.url.replace("//www.yogichopra.com/", ""); var url = tempUrl.replace("//www.yogichopra.com/", ""); if (q.search != null) { var params = ""; var hash = ""; var url_parts = url.split('#'); if (url_parts.length == 2) { url = url_parts[0]; hash = url_parts[1]; } var param_parts = url.split('?'); if (param_parts.length == 2) { url = param_parts[0]; var parsed_params = param_parts[1].split('&'); var keyword_param_found = false; for (var i = 0; i < parsed_params.length; i++) { if (parsed_params[i].indexOf('search=') == 0) { keyword_param_found = true; parsed_params[i] = 'search=' + q.search; } } if (!keyword_param_found) { parsed_params.push('search=' + q.search); } params = parsed_params.join('&'); } else { params = 'search=' + q.search; } if (params > "") { url = url + '?' + params; } if (hash > "") { url = url + '#' + hash; } } return url; }; tiLibraryViewerStore.compose_url_route = function(location, q) { return compose_url(q); }; tiLibraryViewerStore.compute_content_href = function(href, url) { return url; }; tiLibraryViewerStore.compose_topic_url = function(location, q) { return compose_url(q); }; tiLibraryViewerStore.important_notice_url = "//www.yogichopra.com/document-viewer/cn/TMS320F28020/datasheet/important_notice#ImpNotice001"; var ods_reader = riot.mount('ti-library-viewer', { store: tiLibraryStore.list_store, viewerstore: tiLibraryViewerStore }); riot.route.base('/'); riot.route.start(true); compute_document_locale = function(docName) { var locale = 'en_US'; if (docName) { if (docName.toLowerCase().indexOf('z')===0) { locale = 'zh_CN'; } else if (docName.toLowerCase().indexOf('j') == 0) { locale = 'ja_JP'; } } return locale; } open_reader = function() { var path = window.location.pathname.split('/'); var path_minus_filename = ''; for (var i = 0; i < path.length - 1; i++) { if (i == 0 && path[i] == '') { console.log("double slashes found in beginning of document path; treating document path as local machine path"); continue; } path_minus_filename += "/" + path[i]; } RiotControl.trigger("ti_library_open_viewer", { documentLocale: compute_document_locale( "ZHCSA13P"), document: { href: path_minus_filename, lit_num: "ZHCSA13P", doc_type: "Data Sheet", show_toc: "true", translated_doc_type: "数据表", gpn: "TMS320F28020", title: "TMS320F2802x 微控制器", disclaimer: "本资源的原文使用英文撰写。 为方便起见,TI 提供了译文;由于翻译过程中可能使用了自动化工具,TI 不保证译文的准确性。 为确认准确性,请务必访问 ti.com 参考最新的英文版本(控制文档)。 ", product: "//www.yogichopra.com/product/cn/TMS320F28020", email: 'mailto:?subject=TMS320F28020 Datasheet&body=/document-viewer/cn/TMS320F28020/datasheet', download: '//www.yogichopra.com/cn/lit/gpn/TMS320F28020', tistore: '//store.ti.com/Search.aspx?k=TMS320F28020&pt=-1', productstatusdescription: 'PRODUCTION DATA' }, url: "/document-viewer/cn/TMS320F28020/datasheet/GUID-2D61688E-BBA2-4682-A9C5-3BEB3F650E47", prepopulated: true, modalOptions: { dismissible: false } }); } open_reader(); |