element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
    About the element14 Community
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      •  Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Internet of Things
  • Technologies
  • More
Internet of Things
Blog MSPM0 sample photodiode with internal OpAmp and ADC
  • Blog
  • Forum
  • Documents
  • Quiz
  • Events
  • Polls
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Internet of Things to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: Jan Cumps
  • Date Created: 14 Aug 2026 8:30 AM Date Created
  • Views 29 views
  • Likes 1 like
  • Comments 1 comment
  • MSPM0
  • photon
Related
Recommended

MSPM0 sample photodiode with internal OpAmp and ADC

Jan Cumps
Jan Cumps
14 Aug 2026

When you try to measure light intensity with a photodiode, you have to build some circuitry around it.
There are several ways to do that. In this post, I'm investigating TI's application note MSPM0 Subsystem Design Transimpedance Amplifier.

image

This is an interesting circuit. Because the OpAmp clamps the diode voltage to 0 V (same value as positive input), the only way the energy in the diode can escape, is as current. That current has to come from the output, via the feedback resistor (it can't come from the OpAmp input, because that's the same level as the other side of the diode: ground). That also means that the output has to be a higher voltage than ground: ground + (current * resistance). And that's something the ADC can then measure. See here for a better explanation.

The OpAmp used in this design is one of the two that are embedded in the MSPM0 silicon. They are rail-to-rail chopper types (TI calls them zero-drift, zero-crossover chopper operational amplifiers).

The microcontroller gives you control for:

  • multiplexing in- and outputs (to pins, references, DAC, ADC, each other)
  • a set of voltage reference sources to use (including that DAC)
  • optionally a number of preset gains
  • bandwidth, chopper on, rail-to-rail on, ...

image

In the photodiode design, we use the OpAmp in a very classic way:

  • the in- and outputs are routed to external pins
  • chopper off
  • programmable gain off
  • rail-to-rail off
  • high bandwidth (TI uses different setting in the transimpedance example and the out-of-box source. I used the settings of the latter)

The feedback loop is built up by external components (see schematic drawing at the top of this post). TI has done the homework to specify them based on the specs of the Vishay VEMD4110X01  that's mounted on the launchpad. The capacitance of the diode is dependent on the voltage over it. In our case, there is  0V over the diode, and capacitance in that case is 5 pF. The max current is in the low single digit µA.

Let's assume that the diode generates 1 µA. With the 2.37 MΩ resistor in the feedback loop, that would give an OpAmp output of 2.37 V.

The rest of the design is uneventful. The MSPM0 ADC input is muxed to the same pin that's connected to the OpAmp output (there is an option to mux it internally on silicon too). The reference voltage is VDDA (analog VDD, on this launchpad the common 3.3 V). The ADC is set to single shot mode, and gets triggered by one of the timers.

That's all.

  • Sign in to reply
  • Jan Cumps
    Jan Cumps 1 hour ago

    Horowitz and Hill cover this in Art of Electronics:

    image
    image source: my physical copy - fair use

    interesting: they released the Transimpedance Amplifiers section of their X-Chapters book as a sample: example chapters

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2026 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube