An example of importing Embedded Coder code into the mbed IDE. Currently doesn't connect IO to PWM, ADC, and Encoder, instead provides random inputs and measures execution time.

Dependencies:   mbed-dsp mbed Nucleo_pmsmfoc

Dependents:   Nucleo_pmsmfoc

Committer:
paulcox
Date:
Tue Nov 25 07:52:02 2014 +0000
Revision:
2:bbc155b0b886
adding doc?

Who changed what in which revision?

UserRevisionLine numberNew contents of line
paulcox 2:bbc155b0b886 1 // Copyright 2011-2013 The MathWorks, Inc.
paulcox 2:bbc155b0b886 2
paulcox 2:bbc155b0b886 3
paulcox 2:bbc155b0b886 4 function local_onload() {
paulcox 2:bbc155b0b886 5 if (typeof top.rtwreport_document_frame !== "undefined") {
paulcox 2:bbc155b0b886 6 var docObj = window.document;
paulcox 2:bbc155b0b886 7 var alink = docObj.getElementById("linkToText_plain");
paulcox 2:bbc155b0b886 8 if (alink) {
paulcox 2:bbc155b0b886 9 alink.href = "matlab:coder.internal.editUrlTextFile('" + alink.href + "')";
paulcox 2:bbc155b0b886 10 }
paulcox 2:bbc155b0b886 11 alink = docObj.getElementById("linkToCS");
paulcox 2:bbc155b0b886 12 if (alink) {
paulcox 2:bbc155b0b886 13 alink.href = "matlab:coder.internal.viewCodeConfigsetFromReport('" + alink.href + "');";
paulcox 2:bbc155b0b886 14 }
paulcox 2:bbc155b0b886 15 }
paulcox 2:bbc155b0b886 16 }
paulcox 2:bbc155b0b886 17
paulcox 2:bbc155b0b886 18 var utils = (function() {
paulcox 2:bbc155b0b886 19
paulcox 2:bbc155b0b886 20 // Load via Microsoft.XMLDOM--for older versions of IE
paulcox 2:bbc155b0b886 21 function loadXML_MSXMLDOM(filename, callback, async) {
paulcox 2:bbc155b0b886 22 if (navigator.appName == "Microsoft Internet Explorer") {
paulcox 2:bbc155b0b886 23 // Internet Explorer 5/6
paulcox 2:bbc155b0b886 24 try {
paulcox 2:bbc155b0b886 25 var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
paulcox 2:bbc155b0b886 26 xmlDoc.async = async;
paulcox 2:bbc155b0b886 27 xmlDoc.onreadystatechange = function() {
paulcox 2:bbc155b0b886 28 if (xmlDoc.readyState == 4) {
paulcox 2:bbc155b0b886 29 callback(xmlDoc);
paulcox 2:bbc155b0b886 30 }
paulcox 2:bbc155b0b886 31 }
paulcox 2:bbc155b0b886 32 xmlDoc.load(filename);
paulcox 2:bbc155b0b886 33 return true;
paulcox 2:bbc155b0b886 34 } catch(e) {
paulcox 2:bbc155b0b886 35 }
paulcox 2:bbc155b0b886 36 }
paulcox 2:bbc155b0b886 37 return false;
paulcox 2:bbc155b0b886 38 }
paulcox 2:bbc155b0b886 39
paulcox 2:bbc155b0b886 40 // Load via XMLHttpRequest
paulcox 2:bbc155b0b886 41 function loadXML_XHR(filename, callback, async) {
paulcox 2:bbc155b0b886 42 if (window.XMLHttpRequest) {
paulcox 2:bbc155b0b886 43 try {
paulcox 2:bbc155b0b886 44 var xhr = new XMLHttpRequest();
paulcox 2:bbc155b0b886 45 xhr.onreadystatechange = function() {
paulcox 2:bbc155b0b886 46 if (this.readyState == 4) {
paulcox 2:bbc155b0b886 47 callback(this.responseXML);
paulcox 2:bbc155b0b886 48 }
paulcox 2:bbc155b0b886 49 }
paulcox 2:bbc155b0b886 50 xhr.open("GET", filename, async);
paulcox 2:bbc155b0b886 51 xhr.send("");
paulcox 2:bbc155b0b886 52 return true;
paulcox 2:bbc155b0b886 53 } catch(e) {
paulcox 2:bbc155b0b886 54 if (navigator.appName === "Netscape" && e.code === 1012) {
paulcox 2:bbc155b0b886 55 // file not found: ignore
paulcox 2:bbc155b0b886 56 return true;
paulcox 2:bbc155b0b886 57 }
paulcox 2:bbc155b0b886 58 }
paulcox 2:bbc155b0b886 59 }
paulcox 2:bbc155b0b886 60 return false;
paulcox 2:bbc155b0b886 61 }
paulcox 2:bbc155b0b886 62
paulcox 2:bbc155b0b886 63 return {
paulcox 2:bbc155b0b886 64 trimText: function(s) {
paulcox 2:bbc155b0b886 65 // In IE9, String.trim not present
paulcox 2:bbc155b0b886 66 if (s && s.trim) {
paulcox 2:bbc155b0b886 67 return s.trim();
paulcox 2:bbc155b0b886 68 }
paulcox 2:bbc155b0b886 69 else {
paulcox 2:bbc155b0b886 70 return s;
paulcox 2:bbc155b0b886 71 }
paulcox 2:bbc155b0b886 72 },
paulcox 2:bbc155b0b886 73 getText: function(elt) {
paulcox 2:bbc155b0b886 74 // In IE9, use 'text' property rather than 'textContent'
paulcox 2:bbc155b0b886 75 return elt.textContent ? elt.textContent : elt.text;
paulcox 2:bbc155b0b886 76 },
paulcox 2:bbc155b0b886 77 loadXML: function(filename, callback, options) {
paulcox 2:bbc155b0b886 78 var async = !!options && typeof(options["async"]) !== "undefined" ? options.async : true;
paulcox 2:bbc155b0b886 79 if (!loadXML_XHR(filename, callback, async)) {
paulcox 2:bbc155b0b886 80 if (!loadXML_MSXMLDOM(filename, callback, async)) {
paulcox 2:bbc155b0b886 81 return false;
paulcox 2:bbc155b0b886 82 }
paulcox 2:bbc155b0b886 83 }
paulcox 2:bbc155b0b886 84 return true;
paulcox 2:bbc155b0b886 85 }
paulcox 2:bbc155b0b886 86 };
paulcox 2:bbc155b0b886 87 })();
paulcox 2:bbc155b0b886 88
paulcox 2:bbc155b0b886 89 function code2model(sid) {
paulcox 2:bbc155b0b886 90 utils.loadXML("http://localhost:31415/matlab/feval/coder.internal.code2model?arguments=[\"" + sid + "\"]", function() {});
paulcox 2:bbc155b0b886 91 //window.location.href = "matlab:coder.internal.code2model('" + sid + "')";
paulcox 2:bbc155b0b886 92 }