{"id":723,"date":"2008-12-24T08:26:26","date_gmt":"2008-12-24T15:26:26","guid":{"rendered":"http:\/\/mightyohm.com\/blog\/?p=723"},"modified":"2015-09-26T11:11:10","modified_gmt":"2015-09-26T18:11:10","slug":"programming-and-customizing-picmicro-microcontrollers-by-myke-predko","status":"publish","type":"post","link":"https:\/\/mightyohm.com\/blog\/2008\/12\/programming-and-customizing-picmicro-microcontrollers-by-myke-predko\/","title":{"rendered":"Programming and Customizing PICmicro Microcontrollers, by Myke Predko"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" style=\"border:none !important; margin:0px !important;\" src=\"http:\/\/www.assoc-amazon.com\/e\/ir?t=mightyohm-20&amp;l=as2&amp;o=1&amp;a=0071361723\" border=\"0\" alt=\"\" width=\"1\" height=\"1\" \/><a href=\"http:\/\/www.amazon.com\/gp\/product\/0071361723?ie=UTF8&amp;tag=mightyohm-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0071361723\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"894\" data-permalink=\"https:\/\/mightyohm.com\/blog\/2008\/12\/programming-and-customizing-picmicro-microcontrollers-by-myke-predko\/mpbook\/\" data-orig-file=\"https:\/\/mightyohm.com\/blog\/wp-content\/uploads\/2008\/12\/mpbook.jpg\" data-orig-size=\"250,320\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"Programming and Customizing PICmicro Microcontrollers\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/mightyohm.com\/blog\/wp-content\/uploads\/2008\/12\/mpbook.jpg\" class=\"size-full wp-image-894 alignnone\" title=\"Programming and Customizing PICmicro Microcontrollers\" src=\"http:\/\/mightyohm.com\/blog\/wp-content\/uploads\/2008\/12\/mpbook.jpg\" alt=\"Programming and Customizing PICmicro Microcontrollers\" width=\"250\" height=\"320\" srcset=\"https:\/\/mightyohm.com\/blog\/wp-content\/uploads\/2008\/12\/mpbook.jpg 250w, https:\/\/mightyohm.com\/blog\/wp-content\/uploads\/2008\/12\/mpbook-234x300.jpg 234w\" sizes=\"auto, (max-width: 250px) 100vw, 250px\" \/><\/a><\/p>\n<p><a href=\"http:\/\/www.amazon.com\/gp\/product\/0071361723?ie=UTF8&amp;tag=mightyohm-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0071361723\">Programming &amp; Customizing PICmicro Microcontrollers<\/a><img loading=\"lazy\" decoding=\"async\" style=\"border:none !important; margin:0px !important;\" src=\"http:\/\/www.assoc-amazon.com\/e\/ir?t=mightyohm-20&amp;l=as2&amp;o=1&amp;a=0071361723\" border=\"0\" alt=\"\" width=\"1\" height=\"1\" \/>, by <a href=\"http:\/\/www.amazon.com\/gp\/redirect.html?ie=UTF8&amp;location=http%3A%2F%2Fwww.amazon.com%2Fs%3Fie%3DUTF8%26tag%3Dmozilla-20%26index%3Dblended%26link%255Fcode%3Dqs%26field-keywords%3Dmyke%2520predko%26sourceid%3DMozilla-search&amp;tag=mightyohm-20&amp;linkCode=ur2&amp;camp=1789&amp;creative=390957\">Myke Predko<\/a><img loading=\"lazy\" decoding=\"async\" style=\"border:none !important; margin:0px !important;\" src=\"https:\/\/www.assoc-amazon.com\/e\/ir?t=mightyohm-20&amp;l=ur2&amp;o=1\" border=\"0\" alt=\"\" width=\"1\" height=\"1\" \/>, is probably the best book out there for someone who is starting out with the <a href=\"http:\/\/www.microchip.com\/stellent\/idcplg?IdcService=SS_GET_PAGE&amp;nodeId=74\">PIC<\/a> series of microcontrollers from <a href=\"http:\/\/www.microchip.com\">Microchip<\/a>.\u00a0 I used Myke&#8217;s book as both a tutorial and reference when I created my <a href=\"http:\/\/mightyohm.com\/blog\/2008\/09\/generating-analog-rgb-video-with-a-pic-microcontroller\/\">PIC RGB Video Display<\/a>.\u00a0 Since then, I have referred back to this book countless times even when working with other microcontrollers, like Atmel&#8217;s <a href=\"http:\/\/www.atmel.com\/products\/avr\/overview.asp?family_id=607\">AVR family<\/a>, because it contains so much useful architecture-independent technical information.\u00a0 I have referred to this book for information about topics including LCD interfacing, debouncing switches, RS-232 serial interfaces, and multiplexed LED drivers.\u00a0 As a technical reference it easily surpasses the majority of AVR books that are out there.<\/p>\n<p>The book is starting to show it&#8217;s age by not including some of the latest PIC micros in the examples (like the PIC16F628), but the code is easily ported to newer\/faster\/better microcontrollers, a good learning excercise in itself.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Programming &amp; Customizing PICmicro Microcontrollers, by Myke Predko, is probably the best book out there for someone who is starting out with the PIC series of microcontrollers from Microchip.\u00a0 I used Myke&#8217;s book as both a tutorial and reference when I created my PIC RGB Video Display.\u00a0 Since then, I have referred back to this &hellip; <a href=\"https:\/\/mightyohm.com\/blog\/2008\/12\/programming-and-customizing-picmicro-microcontrollers-by-myke-predko\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Programming and Customizing PICmicro Microcontrollers, by Myke Predko<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[40,10],"tags":[132,504,502,44],"class_list":["post-723","post","type-post","status-publish","format-standard","hentry","category-books-and-resources","category-microcontrollers","tag-books","tag-books-and-resources","tag-microcontrollers","tag-pic"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/pioCd-bF","jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"jetpack-related-posts":[{"id":3629,"url":"https:\/\/mightyohm.com\/blog\/2011\/04\/best-book-to-learn-c\/","url_meta":{"origin":723,"position":0},"title":"Best book to learn C?","author":"Jeff","date":"April 4, 2011","format":false,"excerpt":"If you could recommend one book to a total beginner who wants to learn how to program in C, what would it be? It shouldn't be microcontroller-specific (more general is better), but it does need to make sense to someone with zero programming experience (in any language). (Myself, I started\u2026","rel":"","context":"In &quot;Books and Resources&quot;","block_context":{"text":"Books and Resources","link":"https:\/\/mightyohm.com\/blog\/category\/books-and-resources\/"},"img":{"alt_text":"","src":"http:\/\/www.assoc-amazon.com\/e\/ir?t=&l=as2&o=1&a=0131103628","width":350,"height":200},"classes":[]},{"id":1646,"url":"https:\/\/mightyohm.com\/blog\/2009\/04\/new-mightyohmcom-discussion-forums\/","url_meta":{"origin":723,"position":1},"title":"New MightyOhm.com Discussion Forums","author":"Jeff","date":"April 4, 2009","format":false,"excerpt":"Head on over to the new MightyOhm.com Forums to discuss projects from the blog and chat with other members of our small (but awesome) community! At the moment there are forums for: My Wifi Radio project The AVR HV Rescue Shield My Bluetooth Handset Hack The DIY PID Controlled Soldering\u2026","rel":"","context":"In &quot;Books and Resources&quot;","block_context":{"text":"Books and Resources","link":"https:\/\/mightyohm.com\/blog\/category\/books-and-resources\/"},"img":{"alt_text":"A new forum for each major project on the site!","src":"https:\/\/i0.wp.com\/mightyohm.com\/blog\/wp-content\/uploads\/2009\/04\/forums.png?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":1419,"url":"https:\/\/mightyohm.com\/blog\/2009\/03\/introducing-the-avr-hv-rescue-shield\/","url_meta":{"origin":723,"position":2},"title":"Introducing the AVR HV Rescue Shield","author":"Jeff","date":"March 11, 2009","format":false,"excerpt":"This all started last year, when I was playing with an ATmega168 microcontroller and did something silly.\u00a0 I programmed the RSTDISBL fuse bit, which effectively makes it impossible to reflash the chip using an ordinary (serial) programmer. Instead of giving up and throwing out the \"dead\" chip,\u00a0 I decided to\u2026","rel":"","context":"In &quot;Electronics&quot;","block_context":{"text":"Electronics","link":"https:\/\/mightyohm.com\/blog\/category\/electronics\/"},"img":{"alt_text":"AVR HV Rescue Shield with ATmega168 target ","src":"https:\/\/i0.wp.com\/mightyohm.com\/blog\/wp-content\/uploads\/2009\/03\/rescue-shield-with-atmega2_scaled-500x375.jpg?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":1682,"url":"https:\/\/mightyohm.com\/blog\/2009\/05\/avr-eclipse-and-the-mac\/","url_meta":{"origin":723,"position":3},"title":"AVR, Eclipse and the Mac","author":"Jeff","date":"May 12, 2009","format":false,"excerpt":"Pete Harrison at Micromouse Online wrote a short tutorial about using Eclipse to program AVRs. \u00a0 Eclipse is\u00a0 an open source IDE that is supported on many platforms, including OS X on the Mac. I have never used Eclipse myself, so I can't vouch for how well this works, but\u2026","rel":"","context":"In &quot;Books and Resources&quot;","block_context":{"text":"Books and Resources","link":"https:\/\/mightyohm.com\/blog\/category\/books-and-resources\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.micromouseonline.com\/blog\/wp-content\/uploads\/2009\/03\/picture-1.png?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":2063,"url":"https:\/\/mightyohm.com\/blog\/2009\/07\/atmel-retiring-atmega4888168-microcontrollers\/","url_meta":{"origin":723,"position":4},"title":"Atmel retiring ATmega48\/88\/168 microcontrollers","author":"Jeff","date":"July 3, 2009","format":false,"excerpt":"Has anyone else noticed that the ATmega48\/88\/168 family of 8-bit AVR microcontrollers recently joined Atmel's \"mature devices\" list, shown above? Truthfully, I was not surprised to see this, having been tipped off by an Atmel sales rep earlier this year at ESC in San Jose. The good news is that\u2026","rel":"","context":"In &quot;Microcontrollers&quot;","block_context":{"text":"Microcontrollers","link":"https:\/\/mightyohm.com\/blog\/category\/microcontrollers\/"},"img":{"alt_text":"Atmel AVR Microcontrollers - Mature Devices","src":"https:\/\/i0.wp.com\/mightyohm.com\/blog\/wp-content\/uploads\/2009\/07\/avr_mature.png?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":287,"url":"https:\/\/mightyohm.com\/blog\/2008\/09\/i-programmed-the-rstdisbl-fuse\/","url_meta":{"origin":723,"position":5},"title":"I programmed the RSTDISBL fuse.","author":"Jeff","date":"September 23, 2008","format":false,"excerpt":"AVR microcontrollers use \"fuse bits\" to set various operational parameters of the device, such as the speed of the internal oscillator or the watchdog timer settings. Most fuse bits can be set or reset without worry, that is, they can be flashed into one state and then flashed back again\u2026","rel":"","context":"In &quot;Microcontrollers&quot;","block_context":{"text":"Microcontrollers","link":"https:\/\/mightyohm.com\/blog\/category\/microcontrollers\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/mightyohm.com\/blog\/wp-json\/wp\/v2\/posts\/723","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mightyohm.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mightyohm.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mightyohm.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/mightyohm.com\/blog\/wp-json\/wp\/v2\/comments?post=723"}],"version-history":[{"count":18,"href":"https:\/\/mightyohm.com\/blog\/wp-json\/wp\/v2\/posts\/723\/revisions"}],"predecessor-version":[{"id":945,"href":"https:\/\/mightyohm.com\/blog\/wp-json\/wp\/v2\/posts\/723\/revisions\/945"}],"wp:attachment":[{"href":"https:\/\/mightyohm.com\/blog\/wp-json\/wp\/v2\/media?parent=723"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mightyohm.com\/blog\/wp-json\/wp\/v2\/categories?post=723"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mightyohm.com\/blog\/wp-json\/wp\/v2\/tags?post=723"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}