ערכתי לאחרונה בתאריך 28.05.08 בשעה 21:21 בברכה, Phinox
בס"דממצב? 
תראה... כדי לתכנת מיקרו-בקרים, אתה צריך שני דברים, תוכנה (ואין כאן הכוונה לתוכנה שאתה כותב עבור המיקרו-בקר) וחומרה.
כשאני אומר תוכנה, הכוונה היא לסביבת פיתוח. את הסביבת פיתוח הזאת אתה מריץ על המחשב הביתי שלך, או על המחשב במעבדה או על כל מחשב שדרכו אתה מתכנת בעצם. סביבת פיתוח מכילה בתוכה, לרוב, ארבעה מרכיבים עיקריים: עורך טקסטים (שבו אתה כותב את הקוד של התוכנה שעתידה להפעיל את המיקר-בקר/מעבד), מהדר (מה שהופך לך את הקוד בסופו של דבר לקובץ פעיל, שאתה יכול להפעיל/לצרוב על המיקרו-בקר/מעבד המיועד), דיבאגר (תוכנת עזר שבעזרתה אתה מאתר ומנפה תקלות בקוד שלך) ולעיתים גם אימולטור (שזה, בעצם, תוכנה שמדמה לך איך התוכנה שכתבת תרוץ על המיקרו-בקר/מעבד המיועד).
בקטע של החומרה, זה די נחלק לשני מצבים בעצמו: אם אתה כותב תוכנה למיקרו-בקר, אזי נדרשת חומרה טיפה שונה, ואם אתה כותב תוכנה למיקרו-מעבד, אזי גם נדרשת חומרה מעט שונה. מיקרו-מעבדים, לרוב, קוראים מהתקני זיכרון חיצוניים (כמו במחשב שאתה משתמש בו ברגע זה ממש). זה בדיוק מה שקורה כשאתה מתכנת תוכנה רגילה, במחשב ביתי. התוכנה נשמרת על ההארד-דיסק, המעבד של המחשב קורא את התוכנה מההארד-דיסק, ומבצע אותה.
במיקרו-בקרים, הסיפור לרוב הוא שונה, אולם, ישנם גם מיקרו-בקרים שיכולים לעבוד באותה האנאלוגיה כמו מיקרו-מעבדים (היינו, קריאה מהתקני זיכרון חיצוניים). במרבית המיקרו-בקרים, הזיכרון הלא-נדיף (ה"הארד-דיסק") נמצא על השבב עצמו, וע"מ לכתוב אליו, אתה נדרש בעצם "לצרוב" את השבב, פעולה שבה אתה לוקח את הקוד שכתבת, ומעתיק אותו אל הזיכרון הנדון של המיקרו-בקר.
ע"מ לעשות זאת, משתמשים לרוב במה שנקרא "צורב", שזה מעגל אלקטרוני שיודע לקחת את הקוד שכתבת ולצרוב אותו אל הזיכרון הלא-נדיף של המיקרו-בקר.
אז, לסיכום, מה שאתה צריך בעצם זה שני דברים: סביבת פיתוח, וצורב שבבים.
כשיש לך את שניהם, כל מה שאתה צריך לעשות זה לכתוב את הקוד בסביבת פיתוח, ואחרי שאתה בטוח שהוא תקין, פשוט לחבר את הצורב למחשב (לרוב דרך שקע USB), להכניס לתוכו את המיקרו-בקר, לתת לסביבת פיתוח פקודת צריבה (אחרי שהגדרת לה לאן מחובר הצורב, כמובן), ומשם הרומן כבר ממשיך לבד ביניהם... ;)
הייתי ממליץ לך על כמה צורבים וסביבות פיתוח, אבל אין לי מושג עם איזה מיקרו-בקר אתה עובד..! :(
תראה... לפי השאלות שלך, אני מניח שאתה לא כ"כ מנוסה בעניין, אז תן לי להמליץ לך גם על מיקרו-בקר להתחיל איתו, ואז אני גם אוכל להמליץ לך על סביבת פיתוח וצורב, ומשם גם תוכל להמשיך ולהתפתח.
אני, בעצמי, התחלתי עם PIC מבית Microchip, ועל סדרת המיקרו-בקרים הזאת אני ממליץ לך גם כן בתור התחלה. המיקרו-בקרים האלו בנויים לחובבנים/מתחילים/מתלמדים באלקטרוניקה (הן מבחינה פיסית והן מבחינת קושי השימוש וההבנה של המיקרו-בקר).
יש עליהם ה-מ-ו-ן (ואני מתכוון ה-מ-ו-ן) מידע (באינטרנט/ספרים), הם נתמכים נורא (משמע, קהל משתמשים נורא גדול, משמע פורומים אקטיביים והרבה אנשים לפנות אליהם ע"מ לקבל ייעוץ), הם נורא חזקים (היינו, תדר שעון גדול, המון אפשרויות תקשורת עם רכיבים אחרים וכו') ונורא איכותיים (המיקרו-בקר לא ישרף/יפסיק לעבוד לך תוך שתי נגיעות. הם בנויים נגד חשמל סטטי, עם זיכרון פלאש שמקנה לך י-ם פעמים של ניסוי ותהייה עם המיקרו-בקר וכו'), נ-ו-ר-א זולים (בכלל, כל המוצרים של Microchip זולים בהשוואה למה שתמצא בחוץ) ושוב, נורא נ-ו-ר-א קלים לעבודה ולהבנה בעבור מתחילים. 
הנה האתר בית של היצרן: http://www.microchip.com.
כשתכנס אל האתר הזה אתה תשים לב שזו בעצם הנקודה היחידה שתצטרך לבקר בה ע"מ להתחיל לעבוד עם המיקרו-בקרים שלהם. הם מספקים חנות ישירה לרכישת כל מגוון המוצרים שהם מציעים (מיקרו-בקרים, זיכרונות, צורבים, ספרים וכו'), וכמובן, המון מאמרים (במיוחד בעבור מתחילים), דפי נתונים של הרכיבים שלהם וכו'.
ועכשיו, להמלצות! 
בנוגע לסביבת פיתוח, בעבור מתחיל, אין טובה יותר מזאת ש-Microchip בעצמם פיתחו, MPLAB IDE. היא חינמית, היא נ-ו-ר-א עוצמתית, היא תומכת בכל המיקרו-בקרים שלהם, ולדעתי, היא פשוט מושלמת בעבור מתחילים.
אם אתה רוצה המלצה ישירה לצורב, הייתי ממליץ לך על ה-PICSTART Plus שלהם. הוא תומך במרבית (אם לא בכל) המיקרו-בקרים שלהם ובא בתאימות מושלמת עם הסביבת פיתוח שלהם, MPLAB IDE.
האמת היא, אבל, שלא הייתי ממליץ לך לקנות את אלו ולהתחיל איתם. מיקרו-בקר לא שווה הרבה, אלא אם הוא בא מובנה במעגל אלקטרוני מסויים, מה שאומר שאתה תצטרך לתכנן גם מעגל אלקטרוני בשביל המיקרו-בקר, ולא רק את התוכנה שתרוץ עליו.
מה שכן הייתי ממליץ לך לעשות זה לקנות את הערכת פיתוח שלהם, PICKit 1 Flash Starter Kit. זה בעצם לוח אלקטרוני שהוא גם צורב, אבל גם מאפשר לך לבדוק את הקוד שלך ע"י נורות (לדים) שנמצאים לך על הלוח ומחוברים למיקרו-בקר.
בערכה הזאת אתה מקבל את הלוח האלקטרוני המדובר, מיקרו-בקר דגם PIC12F675 (מושלם בעבור מתחילים) וכמובן דיסק שמכיל את הסביבת פיתוח MPLAB IDE, קבצי קוד-מקור לדוגמה, ו-, הכי חשוב בשבילך, מדריכים שמסבירים איך בעצם לצירוב מיקרו-בקר, איך לתקשר איתו וכו'.
אגב, מה שיפה הוא שהחברה הזאת (Microchip) מציע לך המון לוחות פיתוח שמתחברים ללוח הזה, לוחות עם מנועים, מסכי LCD ועוד שאר טובין, מה שמאפשר לך בעצם להתנסות ולהתלמד בתחומים חדשים..!
הכל, כמובן, בא כמיטב המסורת -- עם מדריכים, קוד-מקור מוכן וכיוצ"ב... ;)
אני מניח שזה הזמן לציין שמה שהמלצתי לך לעיל אלו לא הסביבת פיתוח והצורב היחידים שקיימים בעולם כולו בעבור המיקרו-בקרים האלו. ממש לא! המיקרו-בקרים האלו כ"כ נפוצים ונמצאים בשימוש כ"כ גדול, שיש עוד המון סביבות פיתוח אחרות וצורבים אחרים, חלקם יקרים יותר, חלקים זולים יותר -- אבל מה שבטוח, נכון לעכשיו, כמתחיל, מה שהמלצתי לך עליו יספק אותך מעל ומעבר.
בנוגע לספרות בנדון, חפש באמאזון (http://www.amazon.com) בעבור השאילתא: "Microchip PIC Microcontroller", ותראה כמה הוא ימצא לך. פשוט תבחר אחד, תזמין לארץ, ושיהיה ר-ק בהצלחה ובהנאה..!
(החנות הזאת מייצאת ספרים לארץ, והיא נורא בטוחה ואמינה -- מניסיון. ככה שאין לך מה לחשוש מלרכוש דרכה ספרים.)
החנות של מיקרו-צ'יפ, מיקרו-צ'יפ דיירקט (http://www.microchipdirect.com), מייצאת לארץ גם כן, ככה שתוכל להרגיש חופשי לקנות גם משם. (שוב, בטוח ואיכותי, בדיוק כמו אמאזון. מניסיון! ;))
חח וואו... זה יצא ארוך משחשבתי...
זהו זה, בכל אופן... מקווה שעזרתי... 
בברכת כל טוב והצלחה רבה (!) בכל, אריה. 
נ.ב: הייתי ממליץ לך בחום (!) ללמוד קודם כל את שפת C, ורק אח"כ להשתמש בה. אתה פשוט עשוי להתקל בדברים או לראות קטע קוד שאתה חושב שאתה מבין מה הוא עושה, אבל לא ממש לעומק, וזה מה שידפוק אותך באיזשהו שלב בתכנון/יישום של המעגל אותו אתה מתכנן. גם לזה יש לי המלצות לספרים, רק תבקש... 
בברכת כל טוב (בשנית), אריה. ;)
