{"id":2602,"date":"2014-09-26T13:08:56","date_gmt":"2014-09-26T20:08:56","guid":{"rendered":"https:\/\/blog.digilentinc.com\/?p=2602"},"modified":"2016-01-28T10:14:01","modified_gmt":"2016-01-28T18:14:01","slug":"digilent-pmods-visual-pmods","status":"publish","type":"post","link":"https:\/\/digilent.com\/blog\/digilent-pmods-visual-pmods\/","title":{"rendered":"Digilent Pmods &#8212; Visual Pmods"},"content":{"rendered":"<p>Welcome back to the Digilent Blog!<\/p>\n<p>&nbsp;<\/p>\n<p>As we continue on with our Pmod series featuring one of Digilent&#8217;s largest product lines, we find ourselves needing\u00a0to see what&#8217;s going on inside of our microcontrollers and FPGAs as they race through their code at 80,000,000 times a second (or even faster!). Once again, Digilent has a variety of solutions to solve our dilemma. Our visual Pmods range from simple LEDs and a seven-segment display (SSD) to complex OLED and LCD screens.<\/p>\n<p>&nbsp;<\/p>\n<p>We&#8217;ll start with the simpler\u00a0of the visual Pmods and work our way up to the more refined Pmods. This leads us to\u00a0Digilent&#8217;s two LED modules: the PmodLED and the Pmod8LD.<\/p>\n<figure id=\"attachment_2611\" aria-describedby=\"caption-attachment-2611\" style=\"width: 599px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/LED_cropped.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-2611\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/LED_cropped.jpg\" alt=\"Digilent's PmodLED\" width=\"599\" height=\"462\" srcset=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/LED_cropped.jpg 2241w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/LED_cropped-300x231.jpg 300w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/LED_cropped-1024x790.jpg 1024w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/LED_cropped-225x173.jpg 225w\" sizes=\"auto, (max-width: 599px) 100vw, 599px\" \/><\/a><figcaption id=\"caption-attachment-2611\" class=\"wp-caption-text\">Digilent&#8217;s PmodLED.<\/figcaption><\/figure>\n<figure id=\"attachment_2610\" aria-describedby=\"caption-attachment-2610\" style=\"width: 599px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/8LD_cropped.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-2610\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/8LD_cropped.jpg\" alt=\"Digilent's Pmod8LD\" width=\"599\" height=\"359\" srcset=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/8LD_cropped.jpg 2273w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/8LD_cropped-300x179.jpg 300w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/8LD_cropped-1024x613.jpg 1024w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/8LD_cropped-225x134.jpg 225w\" sizes=\"auto, (max-width: 599px) 100vw, 599px\" \/><\/a><figcaption id=\"caption-attachment-2610\" class=\"wp-caption-text\">Digilent&#8217;s Pmod8LD.<\/figcaption><\/figure>\n<p>These two Pmods are a great way to visually show that a process is occurring at the appropriate time intervals or to confirm that interrupts or a shift register is working correctly. Both of these Pmods operate similarly, in that they only need a digital signal of 1 mA to be able to activate the BJT so that the LEDs are appropriately powered. Each of the LEDs has\u00a0its own dedicated line on both the PmodLED and the Pmod8LD; as such, it is possible to turn on the LEDs individually or to turn on multiple LEDs simultaneously by providing the appropriate high or low digital signals to each of the four\u00a0(or eight,\u00a0in the case of the Pmod8LD) data lines.<\/p>\n<figure id=\"attachment_12214\" aria-describedby=\"caption-attachment-12214\" style=\"width: 600px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-12214\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/PmodSSD-top-600x448.png\" alt=\"Digilent's PmodSSD\" width=\"600\" height=\"448\" \/><figcaption id=\"caption-attachment-12214\" class=\"wp-caption-text\">Digilent&#8217;s PmodSSD<\/figcaption><\/figure>\n<p>The PmodSSD is not a solid-state drive, despite sharing the same acronym with it. Rather, it is a seven-segment display. The name of &#8220;seven-segment&#8221; comes from the fact that in the main portion of the digit, there are seven individual LED segments. (On nearly all seven-segment displays, though, there is an additional eighth segment that functions as a decimal point.)<\/p>\n<p>&nbsp;<\/p>\n<p>So why doesn&#8217;t anybody call them &#8220;eight-segment displays&#8221;? I believe there are two reasons for this, although both are purely speculation. The first (and most likely) is the name of seven-segment display is so deeply\u00a0ingrained in society that\u00a0changing the name would simply not be a good idea in terms of fostering\u00a0recognition. The other potential reason is that the corresponding acronym would be &#8220;ESD&#8221;, a scary thing in the electronics world and not something you would want your company to promote. Hence, the seven-segment name for the eight-segment device. Digilent&#8217;s two digit PmodSSD is a common cathode device. This means that each of the individual segments on a digit have their own line to receive\u00a0positive voltage, but all eight of the segments are tied to the same cathode (ground) line.<\/p>\n<p>&nbsp;<\/p>\n<figure id=\"attachment_2613\" aria-describedby=\"caption-attachment-2613\" style=\"width: 599px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/CLS-and-CLP.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-2613\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/CLS-and-CLP.jpg\" alt=\"Digilent's two LCD modules: the PmodCLP and the PmodCLS\" width=\"599\" height=\"449\" srcset=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/CLS-and-CLP.jpg 4000w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/CLS-and-CLP-300x225.jpg 300w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/CLS-and-CLP-1024x768.jpg 1024w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/CLS-and-CLP-225x168.jpg 225w\" sizes=\"auto, (max-width: 599px) 100vw, 599px\" \/><\/a><figcaption id=\"caption-attachment-2613\" class=\"wp-caption-text\">Digilent&#8217;s two LCD modules: the PmodCLP and the PmodCLS.<\/figcaption><\/figure>\n<p>The PmodCLS and PmodCLP are Digilent&#8217;s two LCD modules, and they both sport a 16 by 2 LCD character display. Both of these peripherial modules are flexible, in the fact that they are able to write and erase specific characters on the screen as well as being able to create and display a number of user-defined characters. This raises an important question&#8211;how are they different? These two modules are different in how they communicate, and after all, <a title=\"Digilent Pmods: Communication Is Key\" href=\"https:\/\/digilent.com\/blog\/index.php\/digilent-pmods-communication-is-key\/\" target=\"_blank\">communication is key<\/a>.<\/p>\n<p>&nbsp;<\/p>\n<p>The PmodCLS is able to communicate in a serial fashion (one data bit at a time) using\u00a0a variety of protocols, including SPI, TWI (a varient of I2C), and UART. The PmodCLP, on the other hand, only communicates in one fashion, GPIO, but does this in parallel (multiple data bits at the same time). What is even more interesting about the PmodCLP is the fact that it is one of the very few Pmods, along with the PmodSSD, that requires two separate connections to Pmod headers on the host board in order to operate correctly. This is due to its parallel nature; eight\u00a0I\/O pins are required for the parallel eight bits of data, and an additional three I\/O pins are needed to give the appropriate commands to the LCD driver on the PmodCLS. Despite their potential to be quite\u00a0complex, LCD screens are still used in a variety of applications, from calculator displays to some monitors, making the Pmods even more awesome.<\/p>\n<p>&nbsp;<\/p>\n<figure id=\"attachment_2614\" aria-describedby=\"caption-attachment-2614\" style=\"width: 600px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/PmodOLED.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2614\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/PmodOLED.jpg\" alt=\"Digilent's PmodOLED\" width=\"600\" height=\"417\" srcset=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/PmodOLED.jpg 600w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/PmodOLED-300x208.jpg 300w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/PmodOLED-225x156.jpg 225w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><figcaption id=\"caption-attachment-2614\" class=\"wp-caption-text\">Digilent&#8217;s PmodOLED.<\/figcaption><\/figure>\n<p>And finally, we are at the PmodOLED. Although it is not the biggest Pmod available, this peripherial module is the most versatile display that Digilent offers. With its 128 by 32 pixel display and its easy to use library through SPI, nearly anything you like can be displayed on the screen, even one of Digilent&#8217;s logos.<\/p>\n<figure id=\"attachment_2615\" aria-describedby=\"caption-attachment-2615\" style=\"width: 600px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/Digilent-Logo-on-IO-shield.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-2615\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/Digilent-Logo-on-IO-shield.jpg\" alt=\"One of Digilent's logos on the PmodOLED present on the Basic I\/O Shield\" width=\"600\" height=\"450\" srcset=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/Digilent-Logo-on-IO-shield.jpg 4000w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/Digilent-Logo-on-IO-shield-300x225.jpg 300w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/Digilent-Logo-on-IO-shield-1024x768.jpg 1024w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/Digilent-Logo-on-IO-shield-225x168.jpg 225w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/Digilent-Logo-on-IO-shield-800x600.jpg 800w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/Digilent-Logo-on-IO-shield-1200x900-cropped.jpg 1200w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><figcaption id=\"caption-attachment-2615\" class=\"wp-caption-text\">One of Digilent&#8217;s logos on the PmodOLED present on the <a title=\"Getting Busy with Projects and the chipKIT Basic I\/O Shield\" href=\"https:\/\/digilent.com\/blog\/index.php\/getting-busy-with-projects-and-the-chipkit-basic-io-shield\/\" target=\"_blank\">Basic I\/O Shield<\/a>.<\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<p>Come back soon for more Pmod fun!<\/p>\n<div class='watch-action'><div class='watch-position align-left'><div class='action-like'><a class='lbg-style6 like-2602 jlk' data-task='like' data-post_id='2602' data-nonce='d8c4d58d14' rel='nofollow'><img src='https:\/\/digilent.com\/blog\/wp-content\/plugins\/wti-like-post-pro\/images\/pixel.gif' title='Like' \/><span class='lc-2602 lc'>0<\/span><\/a><\/div><div class='action-unlike'><a class='unlbg-style6 unlike-2602 jlk' data-task='unlike' data-post_id='2602' data-nonce='d8c4d58d14' rel='nofollow'><img src='https:\/\/digilent.com\/blog\/wp-content\/plugins\/wti-like-post-pro\/images\/pixel.gif' title='Unlike' \/><span class='unlc-2602 unlc'>0<\/span><\/a><\/div><\/div> <div class='status-2602 status align-left'>Be the 1st to vote.<\/div><\/div><div class='wti-clear'><\/div>","protected":false},"excerpt":{"rendered":"<p>As we continue on with our Pmod series featuring one of Digilent&#8217;s largest product lines, we find ourselves needing to see what&#8217;s going on inside of our microcontrollers and FPGAs as they race through their code at 80,000,000 times a second (or even faster!). Once again, Digilent has a variety of solutions to solve our dilemma. Our visual Pmods range from simple LEDs and a seven-segment display (SSD) to complex OLED and LCD screens.<\/p>\n","protected":false},"author":17,"featured_media":2614,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[38],"tags":[],"ppma_author":[4469],"class_list":["post-2602","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-expansion-modules"],"jetpack_featured_media_url":"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2014\/09\/PmodOLED.jpg","jetpack_sharing_enabled":true,"authors":[{"term_id":4469,"user_id":17,"is_guest":0,"slug":"jamescolvin","display_name":"James Colvin","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/8aa85f7d11711acc7e571e1ed26c901b614a7064a2e15e522f54d9f26792ea9e?s=96&d=mm&r=g","1":"","2":"","3":"","4":"","5":"","6":"","7":"","8":"","9":"","10":""}],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/posts\/2602","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/users\/17"}],"replies":[{"embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/comments?post=2602"}],"version-history":[{"count":0,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/posts\/2602\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/media\/2614"}],"wp:attachment":[{"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/media?parent=2602"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/categories?post=2602"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/tags?post=2602"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/ppma_author?post=2602"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}