<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
        {mso-style-priority:99;
        mso-style-link:"Plain Text Char";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
span.PlainTextChar
        {mso-style-name:"Plain Text Char";
        mso-style-priority:99;
        mso-style-link:"Plain Text";
        font-family:"Calibri",sans-serif;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=DE-CH link="#0563C1" vlink="#954F72"><div class=WordSection1><p class=MsoPlainText><span lang=EN-US>I wrote a background task for FPGA Oberon to have a SW-based real time clock.<o:p></o:p></span></p><p class=MsoPlainText><span lang=EN-US>Accuracy is rather good. I set the time manually, had the system run for a day and the time was still correct </span><span lang=EN-US style='font-family:"Segoe UI Emoji",sans-serif'>😊</span><span lang=EN-US><o:p></o:p></span></p><p class=MsoPlainText><span lang=EN-US><o:p> </o:p></span></p><p class=MsoPlainText><span lang=EN-US>Jörg<o:p></o:p></span></p><p class=MsoPlainText><span lang=EN-US><o:p> </o:p></span></p><p class=MsoPlainText><span lang=EN-US style='mso-fareast-language:DE-CH'>-----Original Message-----<br>From: Oberon <oberon-bounces@lists.inf.ethz.ch> On Behalf Of Chris Burrows<br>Sent: Wednesday, December 19, 2018 2:07 PM<br>To: 'ETH Oberon and related systems' <oberon@lists.inf.ethz.ch><br>Subject: Re: [Oberon] PO2013 - Real time measurement</span><span lang=EN-US><o:p></o:p></span></p><p class=MsoPlainText><span lang=EN-US><o:p> </o:p></span></p><p class=MsoPlainText>> -----Original Message-----<o:p></o:p></p><p class=MsoPlainText>> From: Oberon [<a href="mailto:oberon-bounces@lists.inf.ethz.ch"><span style='color:windowtext;text-decoration:none'>mailto:oberon-bounces@lists.inf.ethz.ch</span></a>] On Behalf Of <o:p></o:p></p><p class=MsoPlainText>> Skulski, Wojciech<o:p></o:p></p><p class=MsoPlainText>> Sent: Wednesday, 19 December 2018 3:01 AM<o:p></o:p></p><p class=MsoPlainText>> To: ETH Oberon and related systems<o:p></o:p></p><p class=MsoPlainText>> Subject: Re: [Oberon] PO2013 - Real time measurement<o:p></o:p></p><p class=MsoPlainText>> <o:p></o:p></p><p class=MsoPlainText>> Chris:<o:p></o:p></p><p class=MsoPlainText>> <o:p></o:p></p><p class=MsoPlainText>> 1)  Are your examples available for download?<o:p></o:p></p><p class=MsoPlainText>> <o:p></o:p></p><p class=MsoPlainText><o:p> </o:p></p><p class=MsoPlainText>The examples have been written for, and are included with, the various distributions of Astrobe for Cortex-M. e.g. the list here:<o:p></o:p></p><p class=MsoPlainText><o:p> </o:p></p><p class=MsoPlainText><a href="http://www.astrobe.com/M3Examples/ReadMe.htm"><span style='color:windowtext;text-decoration:none'>http://www.astrobe.com/M3Examples/ReadMe.htm</span></a><o:p></o:p></p><p class=MsoPlainText><o:p> </o:p></p><p class=MsoPlainText>However, the SPI Real-time Clock example for FPGA RISC5 Oberon can be downloaded from the FPGA RISC5 section of the Astrobe Forum: <o:p></o:p></p><p class=MsoPlainText><o:p> </o:p></p><p class=MsoPlainText><a href="http://www.astrobe.com/forum/viewforum.php?f=13"><span style='color:windowtext;text-decoration:none'>http://www.astrobe.com/forum/viewforum.php?f=13</span></a><o:p></o:p></p><p class=MsoPlainText><o:p> </o:p></p><p class=MsoPlainText>I'm planning to upload the I2C temperature sensor example that I tested with the Pepino when Magnus originally wrote the I2C interface a couple of years<o:p></o:p></p><p class=MsoPlainText>ago:<o:p></o:p></p><p class=MsoPlainText><o:p> </o:p></p><p class=MsoPlainText><a href="http://saanlima.com/forum/viewtopic.php?f=14&t=1289"><span style='color:windowtext;text-decoration:none'>http://saanlima.com/forum/viewtopic.php?f=14&t=1289</span></a><o:p></o:p></p><p class=MsoPlainText><o:p> </o:p></p><p class=MsoPlainText>However, I'll have to retest it first as there have been a number of significant changes since then.<o:p></o:p></p><p class=MsoPlainText><o:p> </o:p></p><p class=MsoPlainText>> 2) Having such components begs a question of system integration.<o:p></o:p></p><p class=MsoPlainText>> Namely, how to add one of these or several to a firmware System On <o:p></o:p></p><p class=MsoPlainText>> Chip? What are the interfaces? What are the rules? How to add a <o:p></o:p></p><p class=MsoPlainText>> software driver or drivers after adding the FW components?  The latter <o:p></o:p></p><p class=MsoPlainText>> mostly means the rules for defining registers and their addresses.<o:p></o:p></p><p class=MsoPlainText>> <o:p></o:p></p><p class=MsoPlainText><o:p> </o:p></p><p class=MsoPlainText>The choice is yours - you are only constrained by how much you can configure the available pins to SPI or I2C functions. Some of the Cortex-M boards and Digilent FPGA boards have a set of Arduino-compatible pins. This has been very convenient for testing the TFT display on various boards as the one I have is mounted on an Arduino Shield.<o:p></o:p></p><p class=MsoPlainText><o:p> </o:p></p><p class=MsoPlainText>The PMOD sockets on the Digilent FPGA boards are also very useful and there are a large variety of PMOD-compatible sensors / devices available.<o:p></o:p></p><p class=MsoPlainText><o:p> </o:p></p><p class=MsoPlainText>The examples and libraries I supply are intended to be used as components / modules (hardware and software) for prototyping. You can develop and test each part of the system individually. How you eventually integrate them into a system is totally up to you and would depend on how many devices of each type (I2C, SPI, GPIO, ADC etc. etc.) you were using and how many pins you had access to. The FPGA boards are very versatile when it comes to configuring them.<o:p></o:p></p><p class=MsoPlainText><o:p> </o:p></p><p class=MsoPlainText>Regards,<o:p></o:p></p><p class=MsoPlainText>Chris<o:p></o:p></p><p class=MsoPlainText><o:p> </o:p></p><p class=MsoPlainText>Chris Burrows<o:p></o:p></p><p class=MsoPlainText>CFB Software<o:p></o:p></p><p class=MsoPlainText><a href="http://www.astrobe.com"><span style='color:windowtext;text-decoration:none'>http://www.astrobe.com</span></a><o:p></o:p></p><p class=MsoPlainText><o:p> </o:p></p><p class=MsoPlainText><o:p> </o:p></p><p class=MsoPlainText><o:p> </o:p></p><p class=MsoPlainText>--<o:p></o:p></p><p class=MsoPlainText><a href="mailto:Oberon@lists.inf.ethz.ch"><span style='color:windowtext;text-decoration:none'>Oberon@lists.inf.ethz.ch</span></a> mailing list for ETH Oberon and related systems <a href="https://lists.inf.ethz.ch/mailman/listinfo/oberon"><span style='color:windowtext;text-decoration:none'>https://lists.inf.ethz.ch/mailman/listinfo/oberon</span></a><o:p></o:p></p></div></body></html>