Recent Changes - Search:
<^< PORT E | Course index | ALU >^>

Introduction to Microcontroller Programming * Course Index * Introduction * About the Author * About this Course * Feedback * Course Navigation * Quick Course Navigation * How to use this Course * Acronyms Used and Course Conventions

About PICmicro Chips * What is a PICmicro? * Microcontrollers * Digital versus Analogue * Inputs and Outputs * Memory * Programming * 16F1937 Architecture ## PORT A ## PORT B ## PORT C ## PORT D ## PORT E ##

Memory in the 16F1937 ## ALU ## Timer 1 ## Timer 0 ## RB0 Interrupt ## Port B Interrupt ## A/D Conversion ## Busses

Clocking Your PICmicro Devices * Introduction * The Clock Circuit * Clock Settings * Clock Confusion

E-Blocks * Introduction to E-blocks * Using E-blocks * E-blocks Boards

Flowcode Step By Step * Introduction to Flowcode * Basic Flowcode Functions * Digital Outputs * Digital Inputs * Basic Loops * The LCD Display * Binary Numbers * Decisions * Goto (Connection Point) * 7-Segment Displays * Software Macro * Strings and Memory * A Simple Hi-Fi

PICmicro Projects * Introduction to PICmicro Projects * Construction Methods * Choosing a Power Source * Adding Inputs * Input Conditioning * Adding Outputs * Adding Drivers

Labs * Introduction and Lesson Plan * 1. Output * 2. Delay * 3. Connection Point * 4. Calculations * 5. Loop * 6. Input * 7. Decision * 8. LCD * 9. Keypad * 10. Analogue + EEPROM * 11. Software Macro * 12. External Interrupt * 13. Timer Interrupt

(:Summary:Contains the 'action' links (like Browse, Edit, History, etc.), placed at the top of the page, see site page actions:) (:comment This page can be somewhat complex to figure out the first time you see it. Its contents are documented at PmWiki.SitePageActions if you need help. :) * Print (:comment (:if group Site,SiteAdmin,Cookbook,Profiles,PmWiki*:) (:comment delete if and ifend to enable backlinks:) * %item rel=nofollow class=backlinks accesskey='$[ak_backlinks]'% [[{*$Name}?action=search&q=link={*$FullName} | $[Backlinks] ]] (:ifend:) :) * Login

Memory in the 16F1937

<^< PORT E | Course Index | ALU >^>(:nl:)

Flash

* Flash memory is the memory where the program you write is stored in. * The program you write is 'compiled' by your computer to binary code and then downloaded into the Flash memory of the PICmicro * Flash memory is also used in your memory stick or MP3 player. You can read from, and write to it and it remembers everything, even after a power cut. * The program lines Flowcode generates tell the PICmicro what to do and when to do it. * The Flash memory of the 16F1937 can store up to 8192 program commands.

RAM

* RAM is the memory where the 'variables' (values in your program that alter as your program runs) you declare are stored in. * Data from inputs, outputs, analogue inputs, calculations etc. is typically stored in variables inside Flowcode. * This memory is of the RAM-type. It's erased every time the power gets cut or a reset occurs. * It also contains system 'registers' which control and report the status of the device. * The Flash of the 16F1937 can store up to 512 bytes of data.

EEPROM

* EEPROM is the memory where the variables can be permanently stored * This memory is of the PROM-type. It is preserved every time the power gets cut or a reset occurs. * The EEPROM of the 16F1937 can store up to 256 bytes of data.

Largely simplified block schematic to demonstrate where the 3 types of memory are located in the PIC 16F1937 Architecture:

(:nl:)(:table style="clear:both":)

(:Summary: Website page footer:)

Print - (:comment (:if group Site,SiteAdmin,Cookbook,Profiles,PmWiki*:) (:comment delete if and ifend to enable backlinks:) %item rel=nofollow class=backlinks accesskey='$[ak_backlinks]'% [[{*$Name}?action=search&q=link={*$FullName} | $[Backlinks] ]] (:ifend:) :) Search - Login

Page last modified on September 20, 2011, at 11:25 AM