<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://hades.mech.northwestern.edu//index.php?action=history&amp;feed=atom&amp;title=Interfacing_with_a_Photodiode_Array</id>
	<title>Interfacing with a Photodiode Array - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://hades.mech.northwestern.edu//index.php?action=history&amp;feed=atom&amp;title=Interfacing_with_a_Photodiode_Array"/>
	<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;action=history"/>
	<updated>2026-04-22T11:03:43Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.9</generator>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=13415&amp;oldid=prev</id>
		<title>ErikChubb at 01:33, 11 June 2009</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=13415&amp;oldid=prev"/>
		<updated>2009-06-11T01:33:37Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 01:33, 11 June 2009&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 4:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 4:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;The TAOS Photodiode Linear Sensor Array (TSL1406R) is an array of 768 photodiodes spread over the length of about 2 inches.  Each of the individual photodiodes outputs an analog voltage which is proportional the intensity and duration of incident light.  &lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;The TAOS Photodiode Linear Sensor Array (TSL1406R) is an array of 768 photodiodes spread over the length of about 2 inches.  Each of the individual photodiodes outputs an analog voltage which is proportional the intensity and duration of incident light.  &lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;This duration that the photodiode is allowed to create charge is called&lt;/del&gt; the &quot;integration time&quot;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;.  During the integration time&lt;/del&gt;, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;an dedicated&lt;/del&gt; capacitor &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;(included&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;in&lt;/del&gt; the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;TSL1406R)&lt;/del&gt; is charged by &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;each&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;of&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;the photodiodes&lt;/del&gt;.  When the HOLD signal goes high, each of the charges accumulated during the integration time is simultaneously passed to &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;its&lt;/del&gt; dedicated holding capacitor.  The analog voltages on each holding capacitor can then be read one-by-one at the clock speed.  Here I use the PWM function of the PIC to act as the CLK signal.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;During&lt;/ins&gt; the &quot;integration time&quot;, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;a&lt;/ins&gt; capacitor &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;accompanying&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;each of&lt;/ins&gt; the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;photodiodes&lt;/ins&gt; is charged by &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;its&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;corresponding&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;photodiode&lt;/ins&gt;.  When the HOLD signal goes high, each of the charges accumulated during the integration time is simultaneously passed to &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;a&lt;/ins&gt; dedicated holding capacitor.  The analog voltages on each holding capacitor can then be read one-by-one at the clock speed.  Here I use the PWM function of the PIC to act as the CLK signal.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;In this particular code, the data is clocked out so quickly that it is impossible to read every analog level (since the PIC is only capable of an analog read every ~5us).  To remedy this, we low pass filter the analog output and read in analog data as quickly as possible.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;In this particular code, the data is clocked out so quickly that it is impossible to read every analog level (since the PIC is only capable of an analog read every ~5us).  To remedy this, we low pass filter the analog output and read in analog data as quickly as possible.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>ErikChubb</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=13414&amp;oldid=prev</id>
		<title>ErikChubb at 01:26, 11 June 2009</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=13414&amp;oldid=prev"/>
		<updated>2009-06-11T01:26:14Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 01:26, 11 June 2009&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 2:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 2:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;[[Image:Expected Output.png|thumb|right|300px|Wiring Diagram]]&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;[[Image:Expected Output.png|thumb|right|300px|Wiring Diagram]]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;The TAOS Photodiode Linear Sensor Array (TSL1406R) is an array of 768 photodiodes spread over the length of about 2 inches.  Each of the individual photodiodes outputs an analog voltage which is proportional the intensity and duration of incident light.  &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;This duration is called the &quot;integration time&quot;.&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;The TAOS Photodiode Linear Sensor Array (TSL1406R) is an array of 768 photodiodes spread over the length of about 2 inches.  Each of the individual photodiodes outputs an analog voltage which is proportional the intensity and duration of incident light.  &lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;During the integration time, an dedicated capacitor (included in the TSL1406R) is charged by each of the photodiodes.  When the HOLD signal goes high, each of the charges accumulated during the integration time is simultaneously passed to its dedicated holding capacitor.  The analog voltages on each holding capacitor can then be read one-by-one at the clock speed.  Here I use the PWM function of the PIC to act as the CLK signal.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;This duration that the photodiode is allowed to create charge is called the &quot;integration time&quot;.  &lt;/ins&gt;During the integration time, an dedicated capacitor (included in the TSL1406R) is charged by each of the photodiodes.  When the HOLD signal goes high, each of the charges accumulated during the integration time is simultaneously passed to its dedicated holding capacitor.  The analog voltages on each holding capacitor can then be read one-by-one at the clock speed.  Here I use the PWM function of the PIC to act as the CLK signal.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;In this particular code, the data is clocked out so quickly that it is impossible to read every analog level (since the PIC is only capable of an analog read every ~5us).  To remedy this, we low pass filter the analog output and read in analog data as quickly as possible.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;In this particular code, the data is clocked out so quickly that it is impossible to read every analog level (since the PIC is only capable of an analog read every ~5us).  To remedy this, we low pass filter the analog output and read in analog data as quickly as possible.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>ErikChubb</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=13387&amp;oldid=prev</id>
		<title>ErikChubb at 20:51, 10 June 2009</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=13387&amp;oldid=prev"/>
		<updated>2009-06-10T20:51:20Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 20:51, 10 June 2009&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 8:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 8:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;In this particular code, the data is clocked out so quickly that it is impossible to read every analog level (since the PIC is only capable of an analog read every ~5us).  To remedy this, we low pass filter the analog output and read in analog data as quickly as possible.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;In this particular code, the data is clocked out so quickly that it is impossible to read every analog level (since the PIC is only capable of an analog read every ~5us).  To remedy this, we low pass filter the analog output and read in analog data as quickly as possible.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;Each TSL1406R has two 384&lt;del class=&quot;diffchange diffchange-inline&quot;&gt; photodiode&lt;/del&gt; arrays which can be interfaced in serial or in parallel.  This code interfaces with a single 384&lt;del class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/del&gt;pixel array.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;Each TSL1406R has two 384&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;-pixel&lt;/ins&gt; arrays which can be interfaced in serial or in parallel.  This code interfaces with a single 384&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;-&lt;/ins&gt;pixel array.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;&amp;lt;b&amp;gt;Sample code: Photodiode_array.c&amp;lt;/b&amp;gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;&amp;lt;b&amp;gt;Sample code: Photodiode_array.c&amp;lt;/b&amp;gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-added&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;[http://peshkin.mech.northwestern.edu/pic/code Link to all sample code here.]&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;[http://peshkin.mech.northwestern.edu/pic/code Link to all sample code here.]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;For code that interfaces both 384-pixel arrays, and determines a finger&#039;s position, see [[Finger Position Sensing with a Photodiode Array]]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>ErikChubb</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=13386&amp;oldid=prev</id>
		<title>ErikChubb at 20:44, 10 June 2009</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=13386&amp;oldid=prev"/>
		<updated>2009-06-10T20:44:05Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 20:44, 10 June 2009&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 8:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 8:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;In this particular code, the data is clocked out so quickly that it is impossible to read every analog level (since the PIC is only capable of an analog read every ~5us).  To remedy this, we low pass filter the analog output and read in analog data as quickly as possible.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;In this particular code, the data is clocked out so quickly that it is impossible to read every analog level (since the PIC is only capable of an analog read every ~5us).  To remedy this, we low pass filter the analog output and read in analog data as quickly as possible.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;Each TSL1406R has two 384 photodiode arrays which can be interfaced in serial or in parallel.  This code interfaces with a single 384 pixel array.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-added&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;&amp;lt;b&amp;gt;Sample code: Photodiode_array.c&amp;lt;/b&amp;gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;&amp;lt;b&amp;gt;Sample code: Photodiode_array.c&amp;lt;/b&amp;gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>ErikChubb</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=13385&amp;oldid=prev</id>
		<title>ErikChubb at 20:40, 10 June 2009</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=13385&amp;oldid=prev"/>
		<updated>2009-06-10T20:40:48Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 20:40, 10 June 2009&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 4:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 4:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;The TAOS Photodiode Linear Sensor Array (TSL1406R) is an array of 768 photodiodes spread over the length of about 2 inches.  Each of the individual photodiodes outputs an analog voltage which is proportional the intensity and duration of incident light.  This duration is called the &quot;integration time&quot;.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;The TAOS Photodiode Linear Sensor Array (TSL1406R) is an array of 768 photodiodes spread over the length of about 2 inches.  Each of the individual photodiodes outputs an analog voltage which is proportional the intensity and duration of incident light.  This duration is called the &quot;integration time&quot;.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;During the integration time, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;a separate&lt;/del&gt; dedicated capacitor is charged by each of the photodiodes.  When the HOLD signal goes high, each of the charges accumulated during the integration time is simultaneously passed to its dedicated holding capacitor.  The analog voltages on each holding capacitor can then be read one-by-one at the clock speed.  Here I use the PWM function of the PIC to act as the CLK signal.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;During the integration time, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;an&lt;/ins&gt; dedicated capacitor&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; (included in the TSL1406R)&lt;/ins&gt; is charged by each of the photodiodes.  When the HOLD signal goes high, each of the charges accumulated during the integration time is simultaneously passed to its dedicated holding capacitor.  The analog voltages on each holding capacitor can then be read one-by-one at the clock speed.  Here I use the PWM function of the PIC to act as the CLK signal.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;In this particular code, the data is clocked out so quickly that it is impossible to read every analog level (since the PIC is only capable of an analog read every ~5us).  To remedy this, we low pass filter the analog output and read in analog data as quickly as possible.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;In this particular code, the data is clocked out so quickly that it is impossible to read every analog level (since the PIC is only capable of an analog read every ~5us).  To remedy this, we low pass filter the analog output and read in analog data as quickly as possible.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>ErikChubb</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=13384&amp;oldid=prev</id>
		<title>ErikChubb at 20:37, 10 June 2009</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=13384&amp;oldid=prev"/>
		<updated>2009-06-10T20:37:35Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 20:37, 10 June 2009&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 2:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 2:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;[[Image:Expected Output.png|thumb|right|300px|Wiring Diagram]]&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;[[Image:Expected Output.png|thumb|right|300px|Wiring Diagram]]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;The TAOS Photodiode Linear Sensor Array (TSL1406R) &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;provides&lt;/del&gt; an &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;analog output for each&lt;/del&gt; of &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;the&lt;/del&gt; photodiodes &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;in&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;the array.  During&lt;/del&gt; the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;integration&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;time,&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;a&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;capacitor is charged by the&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;photodiode&lt;/del&gt;.  &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;When the HOLD goes high, each&lt;/del&gt; of the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;charges&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;accumulated&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;during&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;the integration time is simultaneously passed to its specific holding capacitor.  The&lt;/del&gt; analog &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;voltages&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;on&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;each&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;holding&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;capacitor&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;can&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;then&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;be&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;read&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;one-by-one&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;at the clock speed&lt;/del&gt;.  &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;We&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;are&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;using&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;the PWM function of&lt;/del&gt; the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;PIC&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;to act as the CLK signal&lt;/del&gt;.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;The TAOS Photodiode Linear Sensor Array (TSL1406R) &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;is&lt;/ins&gt; an &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;array&lt;/ins&gt; of &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;768&lt;/ins&gt; photodiodes &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;spread&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;over&lt;/ins&gt; the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;length&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;of&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;about&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;2&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;inches&lt;/ins&gt;.  &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Each&lt;/ins&gt; of the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;individual&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;photodiodes&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;outputs&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;an&lt;/ins&gt; analog &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;voltage&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;which&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;is&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;proportional&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;the&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;intensity&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;and&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;duration&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;of&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;incident&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;light&lt;/ins&gt;.  &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;This&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;duration&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;is&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;called&lt;/ins&gt; the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&quot;integration&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;time&quot;&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;During the integration time, a separate dedicated capacitor is charged by each of the photodiodes.  When the HOLD signal goes high, each of the charges accumulated during the integration time is simultaneously passed to its dedicated holding capacitor.  The analog voltages on each holding capacitor can then be read one-by-one at the clock speed.  Here I use the PWM function of the PIC to act as the CLK signal.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;a class=&quot;mw-diff-movedpara-left&quot; title=&quot;Paragraph was moved. Click to jump to new location.&quot; href=&quot;#movedpara_5_1_rhs&quot;&gt;&amp;#x26AB;&lt;/a&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;&lt;a name=&quot;movedpara_4_0_lhs&quot;&gt;&lt;/a&gt;In this &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;interfacing&lt;/del&gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;structure&lt;/del&gt;, the data is clocked out so quickly that it is impossible to read every analog level.  To remedy this, we&lt;del class=&quot;diffchange diffchange-inline&quot;&gt; lightly&lt;/del&gt; low pass filter the analog output and read in analog data as quickly as possible.&lt;/div&gt;&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-added&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;a class=&quot;mw-diff-movedpara-right&quot; title=&quot;Paragraph was moved. Click to jump to old location.&quot; href=&quot;#movedpara_4_0_lhs&quot;&gt;&amp;#x26AB;&lt;/a&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;&lt;a name=&quot;movedpara_5_1_rhs&quot;&gt;&lt;/a&gt;In this &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;particular&lt;/ins&gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;code&lt;/ins&gt;, the data is clocked out so quickly that it is impossible to read every analog level&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; (since the PIC is only capable of an analog read every ~5us)&lt;/ins&gt;.  To remedy this, we low pass filter the analog output and read in analog data as quickly as possible.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>ErikChubb</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=9691&amp;oldid=prev</id>
		<title>Lynch at 19:43, 10 January 2009</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=9691&amp;oldid=prev"/>
		<updated>2009-01-10T19:43:01Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:43, 10 January 2009&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 7:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 7:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;&amp;lt;b&amp;gt;Sample code: &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Potodiode_array&lt;/del&gt;.c&amp;lt;/b&amp;gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;&amp;lt;b&amp;gt;Sample code: &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Photodiode_array&lt;/ins&gt;.c&amp;lt;/b&amp;gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;[http://peshkin.mech.northwestern.edu/pic/code Link to all sample code here.]&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;[http://peshkin.mech.northwestern.edu/pic/code Link to all sample code here.]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Lynch</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=8967&amp;oldid=prev</id>
		<title>LIMS at 18:48, 2 July 2008</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=8967&amp;oldid=prev"/>
		<updated>2008-07-02T18:48:35Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 18:48, 2 July 2008&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 5:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 5:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;In this interfacing structure, the data is clocked out so quickly that it is impossible to read every analog level.  To remedy this, we lightly low pass filter the analog output and read in analog data as quickly as possible.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;In this interfacing structure, the data is clocked out so quickly that it is impossible to read every analog level.  To remedy this, we lightly low pass filter the analog output and read in analog data as quickly as possible.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;&amp;lt;b&amp;gt;Sample code: Potodiode_array.c&amp;lt;/b&amp;gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;&amp;lt;b&amp;gt;Sample code: Potodiode_array.c&amp;lt;/b&amp;gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>LIMS</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=8966&amp;oldid=prev</id>
		<title>LIMS at 18:48, 2 July 2008</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=8966&amp;oldid=prev"/>
		<updated>2008-07-02T18:48:18Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 18:48, 2 July 2008&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 7:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 7:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;&amp;lt;b&amp;gt;Sample code: Potodiode_array.c&amp;lt;/b&amp;gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;&amp;lt;b&amp;gt;Sample code: Potodiode_array.c&amp;lt;/b&amp;gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;[http://peshkin.mech.northwestern.edu/pic/code Link to all sample code here.]&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;[http://peshkin.mech.northwestern.edu/pic/code Link to all sample code here.]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>LIMS</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=8965&amp;oldid=prev</id>
		<title>LIMS at 18:48, 2 July 2008</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=Interfacing_with_a_Photodiode_Array&amp;diff=8965&amp;oldid=prev"/>
		<updated>2008-07-02T18:48:07Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 18:48, 2 July 2008&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 6:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 6:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;In this interfacing structure, the data is clocked out so quickly that it is impossible to read every analog level.  To remedy this, we lightly low pass filter the analog output and read in analog data as quickly as possible.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;In this interfacing structure, the data is clocked out so quickly that it is impossible to read every analog level.  To remedy this, we lightly low pass filter the analog output and read in analog data as quickly as possible.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;&amp;lt;b&amp;gt;Sample code&amp;lt;/b&amp;gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;&amp;lt;b&amp;gt;Sample code&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;: Potodiode_array.c&lt;/ins&gt;&amp;lt;/b&amp;gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;[http://peshkin.mech.northwestern.edu/pic/code Link to all sample code here.]&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;[http://peshkin.mech.northwestern.edu/pic/code Link to all sample code here.]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>LIMS</name></author>
	</entry>
</feed>