{"id":14075,"date":"2022-11-01T23:15:04","date_gmt":"2022-11-01T23:15:04","guid":{"rendered":"https:\/\/bryceautomation.com\/?p=14075"},"modified":"2022-11-02T08:04:09","modified_gmt":"2022-11-02T08:04:09","slug":"cosmac-cdp1802-led-display-counter","status":"publish","type":"post","link":"https:\/\/bryceautomation.com\/index.php\/2022\/11\/01\/cosmac-cdp1802-led-display-counter\/","title":{"rendered":"COSMAC CDP1802 LED Display Counter"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Introduction to the COSMAC CDP1802 LED Display Counter<\/h2>\n\n\n\n<p>The COSMAC CDP1802 LED Display is a six segment display on the CDP1802 Microprocessor kit.   Your kit also has a place to add an LCD display as well, however, I like the appearance of the LED display.  In order to use this in projects, you need to understand how to address each of the 7 segments on each digit.  <\/p><div id=\"bryce-3274135518\" class=\"bryce-afterfirst bryce-entity-placement\"><script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js?client=ca-pub-8316758073402323\" crossorigin=\"anonymous\"><\/script><ins class=\"adsbygoogle\" style=\"display:block;\" data-ad-client=\"ca-pub-8316758073402323\" \ndata-ad-slot=\"7728240895\" \ndata-ad-format=\"auto\"><\/ins>\n<script> \n(adsbygoogle = window.adsbygoogle || []).push({}); \n<\/script>\n<\/div>\n\n\n\n<p>For this post, I&#8217;ll be using the programming example for the LED display.  I&#8217;ve used the examples in the <a href=\"https:\/\/kswichit.net\/1802\/1802.htm\">programming book <\/a>for this unit.  From my location, that link seems to be down from time to time, but you can also find it on the Wayback Machine.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"285\" height=\"282\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-13.png\" alt=\"Introduction to the A18 Assembler for COSMAC\" class=\"wp-image-13982 lazyload\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 285px; --smush-placeholder-aspect-ratio: 285\/282;\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Digits Vs. Segments for LED Display<\/h2>\n\n\n\n<p>The display has six digits.  In the programming book, we create two arrays.  One array is for the digit.  We simply set a bit number within a memory location to turn on a specific digit.  Then we write the segment data to that digit.  Keep in mind that you are just turning on one digit at a time.  The idea is to scan through the digits so fast that the user does not notice.<\/p>\n\n\n\n<p>For the digits, you will be creating six words.  Each word will contain the bit number of the display you want to turn on at any given time.  The codes come out to be 20H, 10H, 8, 4, 2, and 1.<\/p>\n\n\n\n<p>We also need to write segment data to each digit.  This is the hard part.  We will be creating an array to store the segment data for each digit.  Let&#8217;s look at one element of the segment array in detail.  Remember, we just need to set particular bits to energize a certain segment of a digit.  <\/p>\n\n\n\n<p>This is not straight ASCII or or numeric data.  Each bit that you set within a word turns on a specific segment.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Bit 0:  Lower Left\nBit 1:  Center Segment (horizontal)\nBit 2:  Upper Left\nBit 3:  Top Segment\nBit 4:  Top Right\nBit 5:  Lower Right\nBit 6:  Dot - Period - Decimal Point\nBit 7:  Bottom Segment\n\nNumeric Codes (Hex data):\n0 - BD\n1 - 30\n2 - 9B\n3 - BA\n4 - 36\n5 - AE\n6 - AF\n7 - 38\n8 - BF\n9 - 3E<\/pre>\n\n\n\n<p>The best way I&#8217;ve found to determine the codes is to write out a 7 segment display on paper with the bit number that energizes that display.  Label the top of  your page from 7 to 0 for the bit numbers.  Just mark a 1 on any segment you wish to energize at any given time.  After that, simply convert your binary data into hex.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Program for COSMAC CDP1802 LED Display<\/h2>\n\n\n\n<p>Take a look at Program 8 in the <a href=\"https:\/\/kswichit.net\/1802\/programmingbookrev1.pdf\">book by Wichit Sirichote.<\/a>  You can use the <a href=\"https:\/\/bryceautomation.com\/index.php\/2022\/10\/22\/a18-assembler-for-cosmac\/\">A18 Assembler<\/a> to build this project.  Simply enter the code into a standard text editor (minus line numbers and object code).  After you save your work, you can run the assembler to produce an Intel Hex file, which you can load (paste) directly into your unit from your terminal program.<\/p>\n\n\n\n<p>Basically, he&#8217;s just setting up some aliases, loading some addresses, and looping through the digits.  803D is where the database starts that writes the segments.  Using the chart above, you can experiment with different values for each of the 6 digits.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">EF1-EF4 Checks<\/h2>\n\n\n\n<p>We can access these 4 input lines directly in the program.  We&#8217;ll use EF1 and EF2 in this project.  Basically, when we ground one of these pins, we know the user is pressing a button.  In our program, we can check for this condition.  For example, B1 will branch when the user presses EF1.  On the other hand, BN1 branches when the user is not pressing EF1.  BN1 $ will hold on the current line as long as EF1 is high, which means the user is not pressing the button.  The logic of the wiring is negative.    Program 6 in the <a href=\"https:\/\/kswichit.net\/1802\/programmingbookrev1.pdf\">book by Wichit Sirichote<\/a> has a good program to demonstrate this.   You will use B2\/BN2 for EF2, and so on.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Counter Program<\/h2>\n\n\n\n<p>I&#8217;ve modified the LED Display timer, and added some logic to create a counter.  Use EF1 to increment the counter.  On the other hand, EF2 resets the counter.  As you can see, when a user presses EF1, $8100 increments.  We must then convert the value we store in 8100 to a code that represents the numeric value.  We do that with the Values database.  At this point, simply add the value of the counter to the address of the first element of the value database, then we get the code that represents our number we wish to display.  After that, we store this code to the appropriate buffer location.  The main code is always updating the display with the data in the buffers.<\/p>\n\n\n\n<p>Once a user presses the button, Q is set.  I&#8217;m using this as a flag to indicate that we&#8217;ve already taken action on the button press.  The user must release the button (resetting Q), then press it before our value will increment again.<\/p>\n\n\n\n<p>If the value of the ones place exceeds 9, then we need to reset the ones, and increment the tens place, which is at $8101.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\nGPIO1:      EQU 7000H\nSEGMENT:    EQU 7102H\nDIGIT:      EQU 7101H\nONES:       EQU 8100H\nTENS:       EQU 8101H\nBREAK:      EQU 2756H\n\n    org    8000H        ;have to start somewhere ...\nR0    EQU    0\nR1    EQU    1\nR2    EQU    2\nR3    EQU    3\nR4    EQU    4\nR5    EQU    5\nR6    EQU    6\nR7    EQU    7\nR8    EQU    8\nR9    EQU    9\nRA    EQU    10\nRB    EQU    11\nRC    EQU    12\nRD    EQU    13\nRE    EQU    14\nRF    EQU    15\n\nSTART:  LOAD    R3, DELAY\n        LOAD    R4, SEGMENT\n        LOAD    R5, DIGIT\n        LDI     00H\n        LOAD    RC, ONES\n        LDI     00H\n        STR     RC\n        LOAD    RD, TENS\n        LDI     00H\n        STR     RD\nMAIN:   LOAD    RA, BUFFER5\n        LOAD    R9, VALUE0\n        BR      COUNT\nCONT:   LOAD    RB, SCAN_DIGIT\n        LDI     6\n        PLO     R8      ;LOOP COUNT\nLOOP:   LDN     RB      ;GET DIGIT CONTROL\n        XRI     0FFH    ;COMPLEMENT IT\n        STR     R5      ;WRITE TO DIGIT\n        LDN     RA      ;GET BYTE FROM BUFFER\n        STR     R4      ;WRITE TO SEGMENT\n        SEP     R3      ;DELAY\n        LDI     0       ;TURN OFF DISPLAY\n        STR     R4\n        INC     RA\n        INC     RB\n        DEC     R8\n        GLO     R8\n        BNZ     LOOP    ;UNTIL 6 DIGITS\n        BR      MAIN\nRET_DELAY: SEP  R0\nDELAY:  LDI     1\n        PLO     R7\nDELAY1: DEC     R7\n        GLO     R7\n        BNZ     DELAY1\n        BR      RET_DELAY\nBUFFER5:     DB 0BDH\nBUFFER4:     DB 0BDH\nBUFFER3:     DB 0BDH\nBUFFER2:     DB 0BDH\nBUFFER1:     DB 0BDH\nBUFFER0:     DB 0BDH\nSCAN_DIGIT: DB 20H, 10H, 8, 4, 2, 1\nVALUE0:     DB 0BDH\nVALUE1:     DB 030H\nVALUE2:     DB 09BH\nVALUE3:     DB 0BAH\nVALUE4:     DB 036H\nVALUE5:     DB 0AEH\nVALUE6:     DB 0AFH\nVALUE7:     DB 038H\nVALUE8:     DB 0BFH\nVALUE9:     DB 03EH\n\n\nCOUNT:  BQ      CHKEF\nUP:     BN1     ZERO    ;INCREMENT AND STORE COUNTER\n        LDN     RC\n        SEX     RD\n        ADD\n        XRI     12H\n        BZ      CONT\n        LDI     01H\n        SEQ\n        SEX     RC\n        ADD     ;INCREMENT COUNTER\n        STR     RC\n        XRI     0AH\n        BZ      ITENS\n        BR      UPDB\n\nZERO:   BN2     CONT\n        LDI     00H\n        STR     RC\n        STR     RD\n        STR     RE\n        STR     RF\n        SEQ\n        BR      UPDB\n\nITENS:  LDI     0H\n        STR     RC  ; RC NOW CONTAINS A ZERO\n        SEX     RD\n        LDI     01H\n        ADD\n        STR     RD ; RD NOW CONTAINS THE TENS VALUES\n        BR      UPDB\n\n\n\nCHKEF:  B1      CONT\n        B2      CONT\n        REQ\n        BR      CONT\n\n\nUPDB:   LOAD    R9, VALUE0\n        SEX     RC\n        GLO     R9\n        ADD\n        PLO     R9  ;R9 NOW SET TO WHERE WE NEED DATA FOR ONES\n        LOAD    R6, BUFFER0\n        LDN     R9\n        STR     R6\nUTENS:  LOAD    R9, VALUE0\n        SEX     RD\n        GLO     R9\n        ADD\n        PLO     R9  ;R9 NOW SET TO WHERE WE NEED DATA FOR TENS\n        LOAD    R6, BUFFER1\n        LDN     R9\n        STR     R6\n        BR      CONT\n        END\n\n<\/code><\/pre>\n\n\n\n<p>Just modify the program to include your own preferences, then run that through the <a href=\"https:\/\/bryceautomation.com\/index.php\/2022\/10\/22\/a18-assembler-for-cosmac\/\">A18 Assembler<\/a> to get the Intel Hex file.  After that,  you can upload this hex file to your kit!  Here&#8217;s the hex file for the program above.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>:20800000F880B3F850A3F871B4F802A4F871B5F801A5F800F881BCF800ACF8005CF881BD78\n:20802000F801ADF8005DF880BAF859AAF880B9F865A9306FF880BBF85FABF806A80BFBFF62\n:20804000550A54D3F800541A1B28883A3D3026D0F801A727873A53304FBDBDBDBDBDBD20E4\n:208060001008040201BD309BBA36AEAF38BF3E319B3C860CEDF4FB123234F8017BECF45C39\n:20808000FB0A329130A23D34F8005C5D5E5F7B30A2F8005CEDF801F45D30A2343435347A72\n:2080A0003034F880B9F865A9EC89F4A9F880B6F85EA60956F880B9F865A9ED89F4A9F880C8\n:0880C000B6F85DA60956303444\n:0080C801B7\n<\/code><\/pre>\n\n\n\n<p>For more information, visit the <a href=\"https:\/\/bryceautomation.com\/index.php\/category\/vintage-computers\/cosmac\/\">COSMAC Category Page!<\/a><\/p>\n\n\n\n<p>&#8212; Ricky Bryce<\/p>\n<div id=\"bryce-3799491732\" class=\"bryce-after-content bryce-entity-placement\"><script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js?client=ca-pub-8316758073402323\" crossorigin=\"anonymous\"><\/script><ins class=\"adsbygoogle\" style=\"display:block;\" data-ad-client=\"ca-pub-8316758073402323\" \ndata-ad-slot=\"4667596182\" \ndata-ad-format=\"auto\"><\/ins>\n<script> \n(adsbygoogle = window.adsbygoogle || []).push({}); \n<\/script>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Introduction to the COSMAC CDP1802 LED Display Counter The COSMAC CDP1802 LED Display is a six segment display on the CDP1802 Microprocessor kit. Your kit also has a place to add an LCD display as well, however, I like the appearance of the LED display. In order to use this in projects, you need to <a class=\"moretag btn btn-primary\" href=\"https:\/\/bryceautomation.com\/index.php\/2022\/11\/01\/cosmac-cdp1802-led-display-counter\/\">Read More \u00bb<\/a><\/p>\n","protected":false},"author":1,"featured_media":13982,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[821,727],"tags":[223,834],"class_list":{"0":"post-14075","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-cosmac","8":"category-vintage-computers","9":"tag-counter","10":"tag-led-display","11":"czr-hentry"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>COSMAC CDP1802 LED Display Counter - Bryce Automation<\/title>\n<meta name=\"description\" content=\"Create a Cosmac CDP1802 LED Display Counter. This program is based on the 1802 processor, and utilizes the LED Display and EF1\/EF2 input pins.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/bryceautomation.com\/index.php\/2022\/11\/01\/cosmac-cdp1802-led-display-counter\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"COSMAC CDP1802 LED Display Counter - Bryce Automation\" \/>\n<meta property=\"og:description\" content=\"Create a Cosmac CDP1802 LED Display Counter. This program is based on the 1802 processor, and utilizes the LED Display and EF1\/EF2 input pins.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/bryceautomation.com\/index.php\/2022\/11\/01\/cosmac-cdp1802-led-display-counter\/\" \/>\n<meta property=\"og:site_name\" content=\"Bryce Automation\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/ricky.bryce.7\" \/>\n<meta property=\"article:published_time\" content=\"2022-11-01T23:15:04+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-11-02T08:04:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-13.png\" \/>\n\t<meta property=\"og:image:width\" content=\"285\" \/>\n\t<meta property=\"og:image:height\" content=\"282\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Ricky\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/11\\\/01\\\/cosmac-cdp1802-led-display-counter\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/11\\\/01\\\/cosmac-cdp1802-led-display-counter\\\/\"},\"author\":{\"name\":\"Ricky\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\"},\"headline\":\"COSMAC CDP1802 LED Display Counter\",\"datePublished\":\"2022-11-01T23:15:04+00:00\",\"dateModified\":\"2022-11-02T08:04:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/11\\\/01\\\/cosmac-cdp1802-led-display-counter\\\/\"},\"wordCount\":858,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/11\\\/01\\\/cosmac-cdp1802-led-display-counter\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2022\\\/10\\\/image-13.png\",\"keywords\":[\"counter\",\"led display\"],\"articleSection\":[\"COSMAC\",\"Vintage Computers\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/11\\\/01\\\/cosmac-cdp1802-led-display-counter\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/11\\\/01\\\/cosmac-cdp1802-led-display-counter\\\/\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/11\\\/01\\\/cosmac-cdp1802-led-display-counter\\\/\",\"name\":\"COSMAC CDP1802 LED Display Counter - Bryce Automation\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/11\\\/01\\\/cosmac-cdp1802-led-display-counter\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/11\\\/01\\\/cosmac-cdp1802-led-display-counter\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2022\\\/10\\\/image-13.png\",\"datePublished\":\"2022-11-01T23:15:04+00:00\",\"dateModified\":\"2022-11-02T08:04:09+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\"},\"description\":\"Create a Cosmac CDP1802 LED Display Counter. This program is based on the 1802 processor, and utilizes the LED Display and EF1\\\/EF2 input pins.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/11\\\/01\\\/cosmac-cdp1802-led-display-counter\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/11\\\/01\\\/cosmac-cdp1802-led-display-counter\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/11\\\/01\\\/cosmac-cdp1802-led-display-counter\\\/#primaryimage\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2022\\\/10\\\/image-13.png\",\"contentUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2022\\\/10\\\/image-13.png\",\"width\":285,\"height\":282,\"caption\":\"Introduction to the A18 Assembler for COSMAC\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2022\\\/11\\\/01\\\/cosmac-cdp1802-led-display-counter\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/bryceautomation.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"COSMAC CDP1802 LED Display Counter\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#website\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/\",\"name\":\"Bryce Automation\",\"description\":\"Automating Home and Industry...\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/bryceautomation.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\",\"name\":\"Ricky\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/wphb-cache\\\/gravatar\\\/a8f\\\/a8fe6bf79d292b388ffee281ccb12488x96.jpg\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/wphb-cache\\\/gravatar\\\/a8f\\\/a8fe6bf79d292b388ffee281ccb12488x96.jpg\",\"contentUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/wphb-cache\\\/gravatar\\\/a8f\\\/a8fe6bf79d292b388ffee281ccb12488x96.jpg\",\"caption\":\"Ricky\"},\"sameAs\":[\"http:\\\/\\\/bryceautomation.com\",\"https:\\\/\\\/www.facebook.com\\\/ricky.bryce.7\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/ricky-bryce-4367a416\\\/\"],\"url\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/author\\\/ricky\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"COSMAC CDP1802 LED Display Counter - Bryce Automation","description":"Create a Cosmac CDP1802 LED Display Counter. This program is based on the 1802 processor, and utilizes the LED Display and EF1\/EF2 input pins.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/bryceautomation.com\/index.php\/2022\/11\/01\/cosmac-cdp1802-led-display-counter\/","og_locale":"en_US","og_type":"article","og_title":"COSMAC CDP1802 LED Display Counter - Bryce Automation","og_description":"Create a Cosmac CDP1802 LED Display Counter. This program is based on the 1802 processor, and utilizes the LED Display and EF1\/EF2 input pins.","og_url":"https:\/\/bryceautomation.com\/index.php\/2022\/11\/01\/cosmac-cdp1802-led-display-counter\/","og_site_name":"Bryce Automation","article_author":"https:\/\/www.facebook.com\/ricky.bryce.7","article_published_time":"2022-11-01T23:15:04+00:00","article_modified_time":"2022-11-02T08:04:09+00:00","og_image":[{"width":285,"height":282,"url":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-13.png","type":"image\/png"}],"author":"Ricky","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/bryceautomation.com\/index.php\/2022\/11\/01\/cosmac-cdp1802-led-display-counter\/#article","isPartOf":{"@id":"https:\/\/bryceautomation.com\/index.php\/2022\/11\/01\/cosmac-cdp1802-led-display-counter\/"},"author":{"name":"Ricky","@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7"},"headline":"COSMAC CDP1802 LED Display Counter","datePublished":"2022-11-01T23:15:04+00:00","dateModified":"2022-11-02T08:04:09+00:00","mainEntityOfPage":{"@id":"https:\/\/bryceautomation.com\/index.php\/2022\/11\/01\/cosmac-cdp1802-led-display-counter\/"},"wordCount":858,"commentCount":0,"image":{"@id":"https:\/\/bryceautomation.com\/index.php\/2022\/11\/01\/cosmac-cdp1802-led-display-counter\/#primaryimage"},"thumbnailUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-13.png","keywords":["counter","led display"],"articleSection":["COSMAC","Vintage Computers"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/bryceautomation.com\/index.php\/2022\/11\/01\/cosmac-cdp1802-led-display-counter\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/bryceautomation.com\/index.php\/2022\/11\/01\/cosmac-cdp1802-led-display-counter\/","url":"https:\/\/bryceautomation.com\/index.php\/2022\/11\/01\/cosmac-cdp1802-led-display-counter\/","name":"COSMAC CDP1802 LED Display Counter - Bryce Automation","isPartOf":{"@id":"https:\/\/bryceautomation.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/bryceautomation.com\/index.php\/2022\/11\/01\/cosmac-cdp1802-led-display-counter\/#primaryimage"},"image":{"@id":"https:\/\/bryceautomation.com\/index.php\/2022\/11\/01\/cosmac-cdp1802-led-display-counter\/#primaryimage"},"thumbnailUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-13.png","datePublished":"2022-11-01T23:15:04+00:00","dateModified":"2022-11-02T08:04:09+00:00","author":{"@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7"},"description":"Create a Cosmac CDP1802 LED Display Counter. This program is based on the 1802 processor, and utilizes the LED Display and EF1\/EF2 input pins.","breadcrumb":{"@id":"https:\/\/bryceautomation.com\/index.php\/2022\/11\/01\/cosmac-cdp1802-led-display-counter\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/bryceautomation.com\/index.php\/2022\/11\/01\/cosmac-cdp1802-led-display-counter\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/bryceautomation.com\/index.php\/2022\/11\/01\/cosmac-cdp1802-led-display-counter\/#primaryimage","url":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-13.png","contentUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2022\/10\/image-13.png","width":285,"height":282,"caption":"Introduction to the A18 Assembler for COSMAC"},{"@type":"BreadcrumbList","@id":"https:\/\/bryceautomation.com\/index.php\/2022\/11\/01\/cosmac-cdp1802-led-display-counter\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/bryceautomation.com\/"},{"@type":"ListItem","position":2,"name":"COSMAC CDP1802 LED Display Counter"}]},{"@type":"WebSite","@id":"https:\/\/bryceautomation.com\/#website","url":"https:\/\/bryceautomation.com\/","name":"Bryce Automation","description":"Automating Home and Industry...","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/bryceautomation.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7","name":"Ricky","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/bryceautomation.com\/wp-content\/wphb-cache\/gravatar\/a8f\/a8fe6bf79d292b388ffee281ccb12488x96.jpg","url":"https:\/\/bryceautomation.com\/wp-content\/wphb-cache\/gravatar\/a8f\/a8fe6bf79d292b388ffee281ccb12488x96.jpg","contentUrl":"https:\/\/bryceautomation.com\/wp-content\/wphb-cache\/gravatar\/a8f\/a8fe6bf79d292b388ffee281ccb12488x96.jpg","caption":"Ricky"},"sameAs":["http:\/\/bryceautomation.com","https:\/\/www.facebook.com\/ricky.bryce.7","https:\/\/www.linkedin.com\/in\/ricky-bryce-4367a416\/"],"url":"https:\/\/bryceautomation.com\/index.php\/author\/ricky\/"}]}},"_links":{"self":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/posts\/14075","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/comments?post=14075"}],"version-history":[{"count":0,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/posts\/14075\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/media\/13982"}],"wp:attachment":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/media?parent=14075"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/categories?post=14075"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/tags?post=14075"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}