slide 1: یدربراک کینورتاکم ۱
faradars.org/fvmec105
سردم :
یناهفصا نایمعنم ریما
کیناکم یسدنهم یارتکد
ریبکریما یتعنص هاگشناد
کینورتاکم یدربراک ۱
1
سرداﺮﻓ
FaraDars.org
slide 2: یدربراک کینورتاکم ۱
faradars.org/fvmec105
موس لصف : رلرتنکورکیم PIC
• همدقم یا رب اهرلرتنکورکیم
– تفرش يپ یاه را دم عمتجم ناکما عمتجم ند رک اه دص را زه روتس ي زنا رت ار رد کي هشا رت دح ا و نکم م تخ اس
– نيل وا اه رتويپماک اب هفاض ا ندرک تاود ا يبنج دننام ،ه ظ فاح ط وط خ یدورو - يج ورخ ، رم ي ات و هريغ هتخ اس دندش
– ش ي ا زفا داي ز مج ح را دم رد کي هشا رت بج وم داج ي ا یاه را دم يعمتجم دش هک لماش هدن زا درپ و تا ودا يبنج دوب
– هب نيا بيترت نيل وا هشا رت کي زي ر ،رتويپماک اي هچن آ هک اه دعب هب نا ونع رلرتنکورکيم هتخ انش ،دش هب و دوج دمآ
2
سرداﺮﻓ
FaraDars.org
slide 3: یدربراک کینورتاکم ۱
faradars.org/fvmec105
3
موس لصف : رلرتنکورکیم PIC
• همدقم یا رب اهرلرتنکورکیم
– هچخ ي رات
– لاس 1 9 69 ، لتني ا نيل وا روسس ورپورکيم 4 يتيب اب تعرس 600 0 لم ع رد ره هيناث ار هنا ور رازاب درک .
– يتدم ،دعب یاه تکرش Intel و TexasInstruments روس س ورپو رکيم 8 يتيب اب مان 8008 ديلوت دند رک .
– سردآ ي ه د kb 16 ، هظ ف اح نتشا د 45 لمع لاروتس د و تعرس 3 0000 0 لمع رد ره ه يناث زا تيلب اق یا ه نيا ر وس س ورپ
دوب .
– نيا روسس ورپورکيم ، ردام هم ه یاه روسس ورپورکيم یزورما تسا
سرداﺮﻓ
FaraDars.org
slide 4: یدربراک کینورتاکم ۱
faradars.org/fvmec105
4
موس لصف : رلرتنکورکیم PIC
• همدقم یا رب اهرلرتنکورکیم
– اه رلرتنکورکيم رد لب اقم اه روس س ورپو رکيم
– توافت رلر تنکورکيم اب روسس ورپورکيم رد درکلم ع تساهن آ
– هب روظنم هد افتسا زا کي روس س ورپو رکيم ، ري اس ا زج ا دننام ،هظ فاح هدنت س رف و هدن ريگ هد ا د و هري غ دي اب هب نآ ا هفاض دوش
– رد رلرتنکورکيم ه م ه ا زج ا مزل یارب درک راک رد را نک رگيدکي هيبعت هدش دنا . هب نيم ه ليلد چي ه هليس و ج راخ ي یرگيد
یارب درکلمع نآ زاين تسين
سرداﺮﻓ
FaraDars.org
slide 5: یدربراک کینورتاکم ۱
faradars.org/fvmec105
5
موس لصف : رلرتنکورکیم PIC
• یخرب میهافم هياپ
– ،تيب ،تياب لبين و هم لک
دادعت ماقرا يرنياب يدنب ميسقت
0
Bit
0000
Nibble
0000 0000
Byte
0000 0000 0000 0000
Word
تياب دادعت يدنب ميسقت
1024 2
10
رازه کي زا شيب
Kilobyte
576 048 1 2
20
نويليم کي زا شيب
Megabyte
824 741 073 1 2
30
درايليم کي زا شيب
Gigabyte
776 627 511 099 1 2
40
درايلرت کي زا شيب
Terabyte
سرداﺮﻓ
FaraDars.org
slide 6: یدربراک کینورتاکم ۱
faradars.org/fvmec105
6
موس لصف : رلرتنکورکیم PIC
• یخرب میهافم هياپ
– هتسب یدنب
– هب لکش یره اظ و دا دعت یاه هياپ کي ،رل رتنکورکيم هتسب یدنب رلر تنکورکيم دنيوگ
– اه رلرتنکورکيم يم دننا وت هب لکش عب رم و اي ليطتسم دشاب
– دا دعت هياپ یاه نآ هتسب هب عو ن رلرتنکورکيم يم دنا وت عو نتم دشاب
– هتسب یدنب OTP رلرتنکورکيم PIC
سرداﺮﻓ
FaraDars.org
slide 7: یدربراک کینورتاکم ۱
faradars.org/fvmec105
7
موس لصف : رلرتنکورکیم PIC
• یخرب میهافم هياپ
– هتسب یدنب
– هتسب یدنب SMT رلر تنکورکيم PIC
سرداﺮﻓ
FaraDars.org
slide 8: یدربراک کینورتاکم ۱
faradars.org/fvmec105
8
موس لصف : رلرتنکورکیم PIC
• یخرب میهافم هياپ
– هتسب یدنب
– هتسب یدنب COB رلر تنکورکيم PIC
سرداﺮﻓ
FaraDars.org
slide 9: یدربراک کینورتاکم ۱
faradars.org/fvmec105
9
موس لصف : رلرتنکورکیم PIC
• یخرب میهافم هياپ
– تمواقم PullUp و PullDown
– ه ک يماگ نه ديلک S1 هت سب تسا تيعض و یدورو 1 و ي ج و رخ 2 لماک
ص خش م و را دي اپ تسا یدورو 1 و يج ورخ رفص تسا
– رد تروص مدع ل ام عا یدورو هب ن يپ 1 عطق د ي لک S1 تيعضو نيا نيپ
رد حلصا روانش هدن ا وخ يم دوش
– رثکا اهتيگ لي ام ت هب یروانش هب تم س تيعضو لاع ف high دنرا د
– نيا تل اح رايسب را دي اپان تسا و ره زي ون يکيرتکلا يم دنا وت ضو تيع اهن آ
ار هب تم س ل اعف ريغ low قوس ده د
سرداﺮﻓ
FaraDars.org
slide 10: یدربراک کینورتاکم ۱
faradars.org/fvmec105
10
موس لصف : رلرتنکورکیم PIC
• یخرب میهافم هياپ
– تمواقم PullUp و PullDown
– نک م م ت سا ت هج لح لکشم ی روانش یرادم هيبش هب ل کش هنش يپ دا
دوش
– اب ل اص ت ا ، ديلک ژ اتلو Vcc هب نيمز ل ص تم يم دوش و ث عاب ل اص ت ا هاتوک
يم دوش
– یراج ند رک ناي رج داي ز و داج ي ا ترارح
سرداﺮﻓ
FaraDars.org
slide 11: یدربراک کینورتاکم ۱
faradars.org/fvmec105
11
موس لصف : رلرتنکورکیم PIC
• یخرب میهافم هياپ
– تمواقم PullUp و PullDown
– رد هک يتروص رد رادم قوف يتمواقم نيب Vcc و نيمز هد ا درا رق ، دوش
تيعضو یدورو رد ره ود ت لا ح زاب و هتسب ند وب ديلک را دي اپ ده ا وخ ش د و
ناي رج یداي ز زين زا را دم روبع ده ا وخ ن درک
– رد ماگ نه عطق د يلک رييغت ژ اتلو ود رس تمواقم ًلم ع رفص يم دن ام و ژ اتلو
یدورو تيگ Vcc يم دوش
– رد نيا ت لا ح ًاح لطص ا هتفگ دوش يم هک هياپ تي گ ط س وت تمواقم R1 ،
pullup هدش تسا
– نييعت نا زيم تمواقم يگتسب هب ناي رج زاجم متس يس درا د
– ،لاثم
K
I
V
R
CC
10
10 5 0
5
3
/
سرداﺮﻓ
FaraDars.org
slide 12: یدربراک کینورتاکم ۱
faradars.org/fvmec105
12
موس لصف : رلرتنکورکیم PIC
• یخرب میهافم هياپ
– تمواقم PullUp و PullDown
– تمواق م pulldown زين راک يهب اشم ما جن ا يم دهد اب نيا توافت هک يب ن
نيمز و یدورو بص ن يم دوش
– درب راک تمواقم pullup يماگنه تسا هک زا رظن حا رط یدورو م ت س ي س رد
تل اح ريغ کي رحت ل اعف ندش ن اه روس نس 1 دشاب
– دربراک تمواق م pull down یارب یدرا وم تسا هک یدورو مت سيس رد
تل اح ک ي رحت هدش ن رفص دشاب
– رد يح ا رط ره متس يس يکيرتکلا هياپ یا ه تيگ ًام تح دي اب pull up اي
pulldown دنو ش ات ل انگيس روانش دوجوب دي اين
سرداﺮﻓ
FaraDars.org
slide 13: یدربراک کینورتاکم ۱
faradars.org/fvmec105
13
• یخرب میهافم هياپ
– ناس ون ،زاس ،تعاس لکيس یراک
– رد اه رلر تنکورکيم هب روظ نم مظ نم نتخ ا س اهتيلا عف و تل و هس ط ابترا ود متسيس یرتويپ ماک ، تيل ا عف کيم ا ه رلر تنکور رب
سا س ا یاه ناب رض يم ظنم هک ط س وت کي ناس ون زاس داج ي ا دوش يم ماجنا يم دريگ
– تهج مظنم تخ اس ناب رض یاه ناس ون زاس زا کي تعاس هد افتسا يم دوش ات هلصاف نيب نيا ود ناب رض ًلماک سکي نا دشاب
– یارب هکنآ ود هليس و ل اتيجي د دننا وتب اب رگيدکي طا بترا را رقرب دننک دي اب یارا د تعاس ناس کي دنش اب
– تعا س ًلوم عم کي لاتس ي رک زتراوک تسا هک نابرض یاه مظ نم داجي ا يم دنک
– ره یروتس د هک ط س وت روتا رپا رد همانرب رلرت نکو رکيم هتشو ن يم ،دوش هب دا دعت ناب رض يصاخ جايتحا درا د ات ب روط ل ماک
ا رج ا دوش
– هب دا دعت يناب رض هک نيرتهات وک روتس د جايتحا درا د ات ا رج ا ،دوش کي لکيس یراک يم دني وگ .
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 14: یدربراک کینورتاکم ۱
faradars.org/fvmec105
14
موس لصف : رلرتنکورکیم PIC
• تمسق یاه فلتخم رلرتنکورکیم
– دح ا و هظ فاح
– هظ فاح يتم سق زا رلر تنکورکيم تسا هک ی هفيظ و نآ هريخذ ی هد ا د تسا
– رد یا ه د ح ا و هظ فا ح اب ند ا د س ردآ هب دح ا و نا وت يم یاو تح م نآ ه ناخ هظ ف اح ار تفاي رد دومن و اي هد ا د یا ار رد نآ ه ناخ
هظ فاح را رق دا د سرداﺮﻓ
FaraDars.org
slide 15: یدربراک کینورتاکم ۱
faradars.org/fvmec105
15
موس لصف : رلرتنکورکیم PIC
• تمسق یاه فلتخم رلرتنکورکیم
– دح ا و هظ فاح
– هظ فاح RAM
– یارب هري خ ذ تقوم همانرب یاه رد ل اح ا رج ا هد افتسا يم دوش
– يماگنه هک رتويپماک اي رلرتنکورکيم شوماخ يم ددرگ عطق قرب ، هد ا د یاه نيا عو ن هظ فاح کا پ يم دوش
– تيفرظ هشا رت یاه هظ فاح لوم عم تروص ب يبراضم زا تيب نايب دوش يم
– رگا رد هتشون یاه ينف زا هشا رت هظ فاح 16M تبحص دش هب ينعم 16 تيباگ م تسا
سرداﺮﻓ
FaraDars.org
slide 16: یدربراک کینورتاکم ۱
faradars.org/fvmec105
16
موس لصف : رلرتنکورکیم PIC
• تمسق یاه فلتخم رلرتنکورکیم
– دح ا و هظ فاح
– هظ فاح ROM
– عو ن یرگيد هظ فا ح د وجو درا د هک تاعلطا نآ اب عطق قرب زا نيب يم ن ،دور و کا پ ند رک و يس ي و نزاب تاعلطا رد نآ هب
يناس آ هظ فاح RAM تسين
– تاعلطا ROM ًلوم عم کي راب لب اق نتشو ن تس ا و سپ زا نآ رگيد کا پ يم ن دوش
– عا ونا یاه هظ فاح ROM دنترا بع زا :
.1 ROM
.2 PROM
.3 EPROM
.4 EEPROM
.5 FlashMemory
سرداﺮﻓ
FaraDars.org
slide 17: یدربراک کینورتاکم ۱
faradars.org/fvmec105
17
موس لصف : رلرتنکورکیم PIC
• تمسق یاه فلتخم رلرتنکورکیم
– دح ا و هظ فاح
– هظ فاح ROM
– هشا رت هظ فاح ROM دننام RAM لماش هکبش یا زا رطس و نو تس تساه
– ره رطس نو تس و رد کي هط قن رگيدکي ار عطق يم دني ام ن هک رد نيا لح م کي نزاخ را رق درا د .
– ژراش و ژراشد ند وب نزاخ رايعم دوجو اي مدع دوجو هد ا د رد نآ هناخ تسا
– هشا رت ROM ، مزلتسم هما نرب يسي ون هريخذ و هد ا د رد نامز ت خ ا س تسا و رييغت نيا ت ا علطا رد هدني آ هب چ ي ه ه ج و
ناکما ري ذپ تسين
– نيا عو ن هظ ف اح ف رص م قرب يم ک ،درا د ل باق دامتعا ت س ا و رد هاگتس د یا ه يکينورتکلا ،کچو ک لماش يمام ت
لمعلاروتس د یاه مزل روظنم ب ل رتنک هاگتس د دروم رظن ده ا وخ دوب .
– هد افتسا زا نيا عون هشا رت اه رد يخ رب زا اه یزا ب بابسا یارب نتخ ا ون ،يقيسوم زاو آ و ... لو ا دتم تسا
سرداﺮﻓ
FaraDars.org
slide 18: یدربراک کینورتاکم ۱
faradars.org/fvmec105
18
موس لصف : رلرتنکورکیم PIC
• تمسق یاه فلتخم رلرتنکورکیم
– دح ا و هظ فاح
– هظ فاح PROM
– ديلوت هشا رت یاه ROM مزلتس م ف رص تقو و هنيزه يئلاب تسا
– نيا عو ن زا هشا رت اه اب تايو تح م يلاخ اب تم يق بسانم هض رع هدش و يم دنا وت ط س وت ره ص خش همانرب یزي ر ند رگ د
– یاه هظ فاح PROM ًافرص کي راب لب اق همانرب یزي ر دنتس ه
– ه ظ ف اح PROM یارا د تم يق بسانم تسا و یا رب ه نومن ی زاس هد ا د یا رب کي ROM ، لبق زا یزير هما نرب ي ي اهن
يي آراک يبو لطم دنرا د .
سرداﺮﻓ
FaraDars.org
slide 19: یدربراک کینورتاکم ۱
faradars.org/fvmec105
19
موس لصف : رلرتنکورکیم PIC
• تمسق یاه فلتخم رلرتنکورکیم
– دح ا و هظ فاح
– هظ فاح EPROM
– هشا رت یاه EPROM ار يم نا وت نيدنچ هبترم زاب يس ي ون درک .
– کا پ ن دومن تايو تح م کي هشا رت EPROM مزلت سم هد افتسا زا هاگتس د يصاخ تسا هک ثعاب عط ا س ند رک کي ناک رف س
صا خ ءاروام ش فنب يم ددرگ
– روظ نم ب يسي ونزاب کي EPROM يم دياب ا دتبا تايوتحم نآ ک اپ ددرگ
سرداﺮﻓ
FaraDars.org
slide 20: یدربراک کینورتاکم ۱
faradars.org/fvmec105
20
موس لصف : رلرتنکورکیم PIC
• تمسق یاه فلتخم رلرتنکورکیم
– دح ا و هظ فاح
– هظ فاح یاه EEPROM و FlashMemory
– رد یاه هظ فاح EEPROM تليه ست ري ز دوجو درا د :
.1 یارب يس ي ون زاب زاين هب ا دج ند ومن هشا رت زا لح م بص ن تسين .
.2 یارب رييغت يش خب زا هظ فاح زاين هب کا پ ند رک مام ت تايو تح م ده ا وخ ن دوب .
.3 لامعا تارييغت مزلتسم هد افتسا زا کي هاگتسد ص اخ تسين .
– رد نيا عو ن ،ه ظف اح دني آر ف ر ييغت دنک تسا و رد یدرا وم هک تا علطا دي اب هب تعرس رييغت ،دننک تع رس مزل و د وج در ا د ن و
یارا د شل اچ یاه صا خ دنش اب يم
سرداﺮﻓ
FaraDars.org
slide 21: یدربراک کینورتاکم ۱
faradars.org/fvmec105
21
موس لصف : رلرتنکورکیم PIC
• تمسق یاه فلتخم رلرتنکورکیم
– دح ا و هظ فاح
– هظ فاح یاه EEPROM و FlashMemory
– ناگ دننکديلوت اب هئا را FlashMemory تيد ودح م هراش ا هدش ار لح دند ومن
– رد نيا تلاح نا وت يم مام ت و اي ش خب یاه يصاخ زا هشا رت ار هک " کلب " هديم ان ،دنوش يم ار ف ذح درک .
– نيا عو ن هظ فاح تبسن هب هظ فاح یاه EEPROM رتعي رس تسا
– یا هظ فاح هک ربراک هما نرب دوخ ار یور نآ رد رلر تنکورکيم دسي ون يم رد تقيقح زا نيا عون هظ فاح تسا
سرداﺮﻓ
FaraDars.org
slide 22: یدربراک کینورتاکم ۱
faradars.org/fvmec105
22
موس لصف : رلرتنکورکیم PIC
• تمسق یاه فلتخم رلرتنکورکیم
– دح ا و شزاد رپ یزکرم
– دح ا و شزادرپ یزکرم راک ش زاد رپ هد ا د اه و یارجا هما نرب اه ار ب ه هده ع درا د و رد تقيقح زغم يلصا رتويپماک تسا
– نيا دح ا و تيلب اق ،برض ميس قت ، قي رفت و ل اقتنا تايو تح م زا کي ناکم هظ فاح هب ناکم رگيد ار درا د
– یا همانرب هک ط س وت ربراک هتشو ن ،دوش يم يتارو تس د هک هليس وب CPU دي اب ماجنا دريگ ار ص خش م دنک يم
– CPU زا راهچ تم سق يلصا ليکش ت هدش تس ا :
.1 تابث اي رتسيجر Register
.2 ALU
.3 ProgramCounter
.4 InstructionDecoder
سرداﺮﻓ
FaraDars.org
slide 23: یدربراک کینورتاکم ۱
faradars.org/fvmec105
23
موس لصف : رلرتنکورکیم PIC
• تمسق یاه فلتخم رلرتنکورکیم
– دح ا و شزاد رپ یزکرم
– اه تابث : CPU تاعلط ا تقوم ار رد اه رتسيجر اه تابث هريخذ دزاس يم
– نيا تاعلطا دننا وت يم یري داقم دنش اب هک دي اب شزادرپ دنو ش و اي سردآ یا هد ا د دشاب هک را رق تسا زا هظ فاح نا وخ هد دوش
– هتسب هب عو ن CPU ، اه رتس يجر يم دننا وت 8 ، 16 ، 32 ، و اي 64 يتيب دنش اب
– ALU : نيا تم سق هفيظو ماجنا ل ام عا يضاير و يقطنم دننام ،عم ج ،قيرف ت ،برض ،ميسق ت AND ، OR و NOT ار
هده ع هب درا د
– Program Counter PC رد یادتب ا ی ا رج ا ،هما ن رب هرامش ن يلو ا یروتس د هک ط س وت CPU دي ا ب ا رج ا دوش ار ن ي يعت
دنک يم
– رد م اگنه ی ا رج ا ره ،روتس د PC کي هرامش ش ي ا زفا دباي يم ات هرامش روتس د یدعب هک ط س وت CPU دي اب ا رج ا دوش ار
ص خش م دنک
– Instruction Decoder : نيا دح ا و يتارو تس د ار هک هب CPU لقتن م دوش ي م و تروص ب دا دعا یرني اب دنتس ه ناب ز ن ي ش ا م
ار ريس فت دنک يم و CPU ار رد تهج یارجا تسرد تا روتس د يي ام نه ا ر دنک يم .
سرداﺮﻓ
FaraDars.org
slide 24: یدربراک کینورتاکم ۱
faradars.org/fvmec105
24
موس لصف : رلرتنکورکیم PIC
• تمسق یاه فلتخم رلرتنکورکیم
– هاگ رد یاه یدورو و يج ورخ
– لاقتن ا لانگيس زا رلر تنک ورکيم هب یا ه هاگتسد ي ج ر اخ ريظ ن کي روتوم DC و س ک ع لا ب راک لاقتن ا لانگيس زا ی اه هاگتسد
يج راخ هب روس نس
– ماگ نه راک اب اه تروپ دي اب ا دتبا تروپ ف ده ص خش م دوش و س پس هد ا د هب نآ ل اسرا و اي زا نآ هتفرگ دوش .
– هتسب هب تام يظنت يلخاد ،رل رتنکو رکيم اه تروپ يم دننا وت هب نا ونع یدورو و اي يج ورخ لمع دننک
– رد يض عب زا اه رلر تنکورکيم اه تروپ دننا وت يم یاه لانگيس گو لا نآ ار زين لقتنم دنيام ن .
سرداﺮﻓ
FaraDars.org
slide 25: یدربراک کینورتاکم ۱
faradars.org/fvmec105
25
موس لصف : رلرتنکورکیم PIC
• تمسق یاه فلتخم رلرتنکورکیم
– سا ب Bus
– ط ابترا CPU اب هظ فاح و یاهتروپ I/O زا قيرط هعوم جم يياه ميس ما جن ا دوش يم هک س اب هديمان دوش يم
– اه سا ب هفيظو ل اقتنا هد ا د تروص ب یاهلانگ يس ل اتيجي د رد یاه تم سق فل تخ م ار هده عب دنرا د
– رد رتويپماک / رلرتنکورکيم هس عو ن سا ب دوجو درا د :
.1 سا ب هد ا د
.2 س اب س ردآ
.3 سا ب ل رتنک
– تهج یرا رقرب طا بترا اب کي ره زا نيا ،اه د ح ا و CPU سردآ نآ ار تر وص ب یرني ا ب زا قي رط سا ب سردآ هب را دم سر دآ باي
DecodingCircuit ل اسرا دنک يم ات تم سق دروم زاين ار ا ديپ دنک
– س پس زا قيرط س اب ،هدا د تاعلط ا ار هب تم سق دروم رظ ن لاس را و اي زا نآ تفايرد دنک يم
– سا ب ل رتنک نييعت دنک يم هک هد ا د دي اب هب تم سق دروم رظن ل اسرا دوش و اي زا نآ هتفرگ دوش
سرداﺮﻓ
FaraDars.org
slide 26: یدربراک کینورتاکم ۱
faradars.org/fvmec105
26
• تمسق یاه فلتخم رلرتنکورکیم
– سا ب Bus
– س اب هد ا د ًلو م عم ود هف رط تسا تهج لاس را و نتفرگ تا علطا . يل و یا رب ي ض ع ب زا اه تم س ق دن نام هحفص ديلک هليسو
یدورو و روتين ام هليس و يج ورخ يم دنا وت هفرط کي دشاب .
– هب ليلد هکنآ اهنت CPU ناکما را رق ند ا د سردآ ار یور سا ب سردآ ار ،درا د ساب سردآ هفرط کي تسا
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 27: یدربراک کینورتاکم ۱
faradars.org/fvmec105
27
موس لصف : رلرتنکورکیم PIC
• تمسق یاه فلتخم رلرتنکورکیم
– طا بترا ل ايرس
– تلک شم يساسا رد لاقتن ا هد ا د ينامز تسا هک رارق دشاب هد ا د رد لصاوف نيدنچ یرتموليک در و لدب دوش
– رگا ضر ف دوش هک اب هس طخ راک ، دوش نيدب بي ترت يکي زا طو طخ ی ا رب ،ند اتسرف يکي یارب تف ايرد و کي ي زين هب ن ا ونع
طخ عجرم یارب نيفرط هدنت س رف و هدن ريگ رد رظن هتفرگ دوش يم
– یارب نيا راک مزل تسا ينين ا وق ار یارب ل دابت هد ا د رد رظن تفرگ . نيا نينا وق لکتورپ مان دنرا د .
– ،لکت ورپ ينون اق زا ش يپ نييعت هدش تسا هک یارب ود فرط لد ابت هدننک هد ا د ص خش م و راک شآ يم دشاب
– ،لاثم
– ات ينامز هک ل افتنا هد ا د دوجو ،درا دن طخ ل اسرا هد ا د هب 1 يقطنم لصو دش اب و ينامز هک ند اتسرف هد ا د عو رش يم ، دوش
یارب تدم نامز T رفص يقطنم دوش
– هدنتس رف 0 و 1 اه ار زا مک ش زرا نيرت تيب ات رپ ش زرا نيرت تيب یور طخ لاس را رارق هد ا د و ره تي ب هب تدم ن امز T
یور طخ دنام يم
– رد اهتن ا اي دعب زا تيب ،متشه طخ هب کي يقطنم هب روظنم نييعت ناي اپ ل اقتنا هد ا د ل وا هدن ا درگ رب دوش يم
سرداﺮﻓ
FaraDars.org
slide 28: یدربراک کینورتاکم ۱
faradars.org/fvmec105
28
موس لصف : رلرتنکورکیم PIC
• تمسق یاه فلتخم رلرتنکورکیم
– طا بترا ل ايرس
– زا يياج نآ هک یارب لاس را و تفايرد ، ط وط خ هناگا دج دوجو درا د ا ذل نا وت يم رد نامز دح ا و هد ا د ار لاس را و تفايرد دومن
– نيا کولب اب تل اح ود هفرط هک نينچ يطابترا ار مه ا رف دروآ يم کولب طا بترا ل ايرس دنمان يم
سرداﺮﻓ
FaraDars.org
slide 29: یدربراک کینورتاکم ۱
faradars.org/fvmec105
29
موس لصف : رلرتنکورکیم PIC
• تمسق یاه فلتخم رلرتنکورکیم
– رم ي ات
– رم ي ات يم دنا وت يتاعل طا ی هرابرد ،نامز تدم نامز نيعم و لکتورپ و ... ده دب و زا نيا ظ احل رايسب تيم ه ا درا د
– تم سق يلصا رم ي ات کي هدن رام ش لقس م تسا هک رد عقا و یرتسي ج ر تسا هک را دقم یددع نآ رد لصا وف ينامز سم ی وا
کي دح ا و داي ز دوش يم
– اب نتسن ا د ري داقم نيا رتس يجر رد نامز یاه t
1
و t
2
، نا وت يم نامز یرپس هدش ار رب سا س ا ف ل ت خ ا ن ي ا ود ن ا م ز هب ت س د
دروآ
سرداﺮﻓ
FaraDars.org
slide 30: یدربراک کینورتاکم ۱
faradars.org/fvmec105
30
موس لصف : رلرتنکورکیم PIC
• تمسق یاه فلتخم رلرتنکورکیم
– رم ي ات Watchdog
– يکي زا یدراوم هک زاين هب هج وت درا د درکلم ع يب بيع رلر تنکورکيم رد نامز راک تسا
– نيا دح ا و زين يکي هدن رام ش لقتس م تسا هک اب رس زي ر ندش را دقم هدن رام ش رلرتنکورکيم ار تسي ر دنک يم
– اب تسي ر ،ندش رلرتنکورکيم یارجا همانرب ار زا رس ده ا وخ تفرگ و رگا يلکش م خر هد ا د دشاب لح ده ا وخ دش
– نيا رم ي ات ً ا م ئا د رد ل اح شرا م ش تسا . هب نيا بيت رت ينامز هک همانرب هب يتس رد ا رج ا ، دوش زاين تسا هک نيا ات رم ي ر فص
هدش و ش رام ش ار زا ا دتبا عورش دنک .
سرداﺮﻓ
FaraDars.org
slide 31: یدربراک کینورتاکم ۱
faradars.org/fvmec105
31
موس لصف : رلرتنکورکیم PIC
• تمسق یاه فلتخم رلرتنکورکیم
– ل دبم گ ولانآ هب ل اتيجي د
– یدورو ADC ژاتل و و يج ورخ نآ کي ددع تسا
سرداﺮﻓ
FaraDars.org
slide 32: یدربراک کینورتاکم ۱
faradars.org/fvmec105
32
موس لصف : رلرتنکورکیم PIC
• تمسق یاه فلتخم رلرتنکورکیم
– طا بترا مام ت اه تم سق
سرداﺮﻓ
FaraDars.org
slide 33: یدربراک کینورتاکم ۱
faradars.org/fvmec105
33
موس لصف : رلرتنکورکیم PIC
• یلاثم زا کي همانرب رد لاح ارجا
– هب نا ونع ل اثم کي CPU یزاجم یارا د یاه رتس يجر A ، B و ... ، 8 تيب سا ب هد ا د و 16 تيب سا ب سردآ تسا
– نيا ربانب CPU هب یاه هناخ هظ فاح زا س ردآ 0000H ات FFFFH يسرتس د درا د
– CPU دي اب ددع 21H ار لخاد رتس يجر A را رق ده د و س پس ري داقم 42H و 12H ار هب نيا رتس يجر هفاضا دنک
– رگا رد همانرب هتشو ن ، هدش دک B0H دک ل اقتنا کي را دقم هب رتس يجر A و 04H دک هفاضا ند رک کي را دقم هب ر ت س يجر A
دشاب و یا همانرب هک دي اب لمع عمج نيا هس ددع ار ماجنا ده د زا هناخ هظ فاح 1400H عو رش دوش
هظفاح هناخ هرامش هظفاح ياوتحم حيضوت
1400
1401
1402
1403
1404
1405
1406
B0H
21H
04H
42H
04H
12H
F4H
code for moving a value to register A
value to be moved
code for adding a value to register A
value to be added
code for adding a value to register A
value to be added
code for halt
سرداﺮﻓ
FaraDars.org
slide 34: یدربراک کینورتاکم ۱
faradars.org/fvmec105
34
موس لصف : رلرتنکورکیم PIC
• یلاثم زا کي همانرب رد لاح ارجا
– يلحارم هک هليس وب CPU یارب یارجا همانرب قوف ماجنا دريگ يم تروص ب ري ز تس ا :
– Program Counter اي PC رد CPU يم دنا وت ريد اقم نيب 0000H ات FFFFH ار رايتخ ا دن ک . رادقم Program
Counter دي ا ب 1400H دوش ات س ردآ نيل و ا دک هما نرب هک دي اب ا رج ا د وش هب CPU يفرع م ددرگ . هب نيا ب يترت CPU ه د ا م آ
ا رج ا دوش يم .
– CPU ددع 1400H ار یور سا ب سردآ ها رم ه اب ل انگيس READ ل اسرا دنک يم
هظفاح هناخ هرامش هظفاح ياوتحم حيضوت
1400
1401
1402
1403
1404
1405
1406
B0H
21H
04H
42H
04H
12H
F4H
code for moving a value to register A
value to be moved
code for adding a value to register A
value to be added
code for adding a value to register A
value to be added
code for halt
سرداﺮﻓ
FaraDars.org
slide 35: یدربراک کینورتاکم ۱
faradars.org/fvmec105
35
موس لصف : رلرتنکورکیم PIC
• یلاثم زا کي همانرب رد لاح ارجا
– CPU هليس وب Instruction Decoder رو تس د B0 ار يي اشگ دک دنک يم . موهفم نيا روتس د ند نا وخ د دع عقا و رد هن اخ
یدعب هظ فاح 1401H و نتشا ذگ نآ رد رتس يجر A تسا
– اب ليمک ت نيا ،نامرف سردآ نامرف یدعب 1402H رد PC را رق دريگ يم .
– زا هناخ هظ فاح 1402H دک 04H هتفرگ دوش يم
– سپ زا يي اش گدک CPU تايو تح م سردآ ید عب 1403H ار روظنم د دع 42H ها رم ه اب را دقم نو رد رتس يجر A هب
ALU لاس را دنک يم ات لم ع عم ج ار ما جن ا ده د
هظفاح هناخ هرامش هظفاح ياوتحم حيضوت
1400
1401
1402
1403
1404
1405
1406
B0H
21H
04H
42H
04H
12H
F4H
code for moving a value to register A
value to be moved
code for adding a value to register A
value to be added
code for adding a value to register A
value to be added
code for halt
سرداﺮﻓ
FaraDars.org
slide 36: یدربراک کینورتاکم ۱
faradars.org/fvmec105
36
موس لصف : رلرتنکورکیم PIC
• یلاثم زا کي همانرب رد لاح ارجا
– س پس يج ورخ ALU ط س وت CPU نو رد رتس يجر A را رق هد ا د دوش يم . رد نيا نيب PC را دقم 1404H ار رايتخ ا دنک يم
– س ردآ 1404H یور س اب س ردآ رارق دريگ يم و دک نآ هب CPU ،هدروآ دک يياش گ و ا رج ا دوش يم
– نيا دک ًا ددج م کي را دقم ار هب رتس يجر A هفاضا دنک يم و هدن رام ش همانرب 1406H دوش يم .
– رد رخ آ یاو تح م سردآ 1406 هتفرگ و ا رج ا دوش يم . روتس د HALT هب CPU دي وگ يم هک زا ش ي ا زفا PC یريگول ج دنک
هظفاح هناخ هرامش هظفاح ياوتحم حيضوت
1400
1401
1402
1403
1404
1405
1406
B0H
21H
04H
42H
04H
12H
F4H
code for moving a value to register A
value to be moved
code for adding a value to register A
value to be added
code for adding a value to register A
value to be added
code for halt
سرداﺮﻓ
FaraDars.org
slide 37: یدربراک کینورتاکم ۱
faradars.org/fvmec105
37
موس لصف : رلرتنکورکیم PIC
• رلرتنکورکیم یاه PIC
– عا ون ا PIC
– ج نپ یرس مهم هد ا وناخ PIC هب تروص ريز هتسد یدنب دوش يم :
.1 یرس PIC10 : یاه هشا رت اب 6 هياپ دنتس ه هک یارب یاه راک هد اس رت و اي طا بترا ل ايرس و ...... هب راک دنو ر يم .
.2 یرس PIC12 : یاه هشا رت اب 8 هياپ دنتس ه هک یارا د تردق يبس ن يبو خ دنتس ه
.3 یرس PIC16 : هشا رت یاه هک رد نيا یرس دوجو دنرا د نيب 18 ات 40 هياپ دنرا د
.4 یرس PIC18 : يياه هشا رت نيا ی رس ی ا راد 18 هياپ و رتش يب دنتسه و زا رظ ن ترد ق یارا د تي لب اق یرتل اب تبسن هب
PIC16 دنش اب يم
.5 یرس PIC24 : نيرت یو ق هشا رت ی اه هد ا ون اخ PIC دشاب يم . نيا عو ن اه ورک يم لق ا دح یارا د 40 هيا پ دنتس ه و زا ر ظن
تاناکما يلخاد تردق یريظن يب دنرا د
سرداﺮﻓ
FaraDars.org
slide 38: یدربراک کینورتاکم ۱
faradars.org/fvmec105
38
موس لصف : رلرتنکورکیم PIC
• رلرتنکورکیم یاه PIC
– عا ون ا PIC
لدم مان
سناکرف
تعاس
MHz
ADC
RAM
تیاب
عبانم
هفقو
سیون همانرب هظفاح ی
لایرس تروپ
Timers
دادعت
اه هیاپ
عون
نب هتسب ید
عون يابوليک ت
EEPROM
16C432
20 0
OTP
5
/
3 0
- WDT
20
CERDIP
16C85
40 0
OTP
3 0
- WDT
18
PDIP
16F84A
20 0 68 4
Flash
75
/
1 64
- WDT
18
PDIP
16F946
20 8
Flash
14 256
- WDT
64
TQFP
18F2455
40 10
Flash
24 256
EUSART/SPI/USB WDT
28
PDIP
12C508
4
-
25 درادن
EPROM
512
تياب
- -
1 8
DIP
12C671
10 4 128 4
EPROM
1024
تياب
-
-
1 8
DIP
سرداﺮﻓ
FaraDars.org
slide 39: یدربراک کینورتاکم ۱
faradars.org/fvmec105
39
موس لصف : رلرتنکورکیم PIC
• رلرتنکورکیم یاه PIC
– عا ون ا PIC
سرداﺮﻓ
FaraDars.org
slide 40: یدربراک کینورتاکم ۱
faradars.org/fvmec105
40
موس لصف : رلرتنکورکیم PIC
• رلرتنکورکیم یاه PIC
– راتخ اس هظ فاح رد رلرتنکورکيم PIC
– بلغا PIC اه یارا د هس عون هظ فاح يلخ ا د يم دنشاب :
.1 هظ فاح هد ا د
.2 هظ فاح همانرب
.3 EpromMemory
– هظ فاح هد ا د
– نيا ه ظف اح هک نامه ه ظفا ح RAM رلرتنک ورکيم تسا هب ی اه ش خ ب
يفلتخ م هب مان کن اب ميس قت دوش يم
– ره کن اب ل ماش ه ظ ف اح ی اه هد ا د ي لو م عم ی ا رب ی ا ه ه دافتسا يموم ع
ربراک و یاه رتس يج ي ر صوص خم دشاب يم
سرداﺮﻓ
FaraDars.org
slide 41: یدربراک کینورتاکم ۱
faradars.org/fvmec105
41
موس لصف : رلرتنکورکیم PIC
• رلرتنکورکیم یاه PIC
– ر ات خ اس هظفاح رد رلرت ن کورکيم PIC
– رد ماگن ه هما ن رب يسيون ، ، ربر ا ک يکن اب زا هظفاح هک دروم ز اي ن تسا ر ا ب اخ ت ن ا
دن ک يم و هم ان رب يسيون ار ما جن ا ده د يم
– هظفاح هما نرب
– یا هما نرب هک طس وت ربر اک هت ش ون دو ش يم رد نيا هظفاح ر ا رق هداد ش يم دو
– PIC اه زا ظا حل عون هظفاح هما نرب هب ر اهچ هت س د مي سقت دن وش يم :
– FlashProgram Memory رد يياه هداون اخ هک مان IC یار ا د F دشاب يم
– EPROM Program Memory رد يياه هد ا ونا خ هک مان IC یا ر ا د C اي
CE دشاب يم
– ROM Program Memory رد يياه هد ا ونا خ هک ما ن IC یار ا د CR
دشاب يم
– EEPROM Program Memory نيا عون اه رلرت ن ک ورکي م یار ا د ه صخش م
L رد مان IC دن ش اب يم .
سرداﺮﻓ
FaraDars.org
slide 42: یدربراک کینورتاکم ۱
faradars.org/fvmec105
42
موس لصف : رلرتنکورکیم PIC
• رلرتنکورکیم یاه PIC
– راتخ اس هظ فاح رد رلرتنکورکيم PIC
– هظ فاح EPROM
– یاه هد ا د هري خ ذ هدش رد هظ فاح هد ا د RAM اب عطق قرب کا پ دوش يم
– رد يي اه درب راک د ننام ل فق را دزمر هک مزل تسا زمر اب عطق ق رب زين ظ فح دو ش و زا يف رط ن اکما رييغت هد ا د زين د ر ره نامز
ط س وت هد افتسا هدنن ک دوجو هتشا د ،دشاب زاين هب یا هظ فاح را دي اپ تسا
– رد PIC هظ فاح EPROM یارب نيا روظ نم هيبعت هدش تسا و یارب هريخذ هد ا د اه رد نيح یارجا هما نرب هب راک دور يم
سرداﺮﻓ
FaraDars.org
slide 43: یدربراک کینورتاکم ۱
faradars.org/fvmec105
43
موس لصف : رلرتنکورکیم PIC
• تاصخشم و هوحن درکلمع ورکیم رلرتنک PIC16F84
– نيا هشا رت نيرت هد اس و رد نيع ل اح ا رف نيرتريگ هشا رت رد هد ا ون اخ PIC تسا .
– ه ظ ف اح هد ا د 8 يتيب درا د و یارا د K 1 ه ظ ف اح هما نرب زا ع ون Flashprogram اب ض رع 14 تيب و تيل باق 1 0 0 0 ر اب ن د ناو خ
و نتشو ن دشاب يم
– نيا رلرتنکورکيم کي هفقو ،يج راخ کي رم ي ات / هدن رام ش و 13 هياپ یدورو و يج ورخ ل اتيجي د درا د
– تم يق نيياپ ها رم هب ف رص م ،نيياپ هرا دا ناس آ و ف اط عن ا یري ذپ رلرتنکورکيم
سرداﺮﻓ
FaraDars.org
slide 44: یدربراک کینورتاکم ۱
faradars.org/fvmec105
44
موس لصف : رلرتنکورکیم PIC
• تاصخشم و هوحن درکلمع ورکیم رلرتنک PIC16F84
– حيرش ت هياپ یاه رلرتنکورکيم PIC16F84
– هياپ یا ه هرام ش 1 ، 2 ، 17 و 18 RA0-RA3 : یاه هياپ ود هف رط
یدورو / يج ورخ هاگ رد تروپ A دنتس ه .
– هياپ 3 RA4/T0CLK : هياپ ود ه فرط مج نپ هاگ رد A و نينچمه
یدورو کلک یارب رم ي ات / هدن رام ش رفص TMR0 تسا .
– هياپ 6 RB0/INT هياپ ود هفرط لو ا تروپ B و نينچم ه هياپ ر يظ ن
هفقو يج راخ تسا .
– هياپ ی اه 7 يل ا 13 RB1-RB7 : هياپ یا ه ود هف رط م ود ات م تش ه
تروپ B
– هياپ 16 OSC1/CLKIN : هياپ یدورو ی ا رب لاتس ي رک ر و تليسا
يلاتسي رک يج راخ و عبنم کلک يج راخ تسا .
سرداﺮﻓ
FaraDars.org
slide 45: یدربراک کینورتاکم ۱
faradars.org/fvmec105
45
موس لصف : رلرتنکورکیم PIC
• تاصخشم و هوحن درکلمع ورکیم رلرتنک PIC16F84
– حيرش ت هياپ یاه رلرتنکورکيم PIC16F84
– هياپ 15 OSC2/CLKOUT : هياپ يجو رخ یا رب روتليسا يل اتسي رک
يج ورخ کلک يج راخ تسا .
– هياپ 5 Vss : نيمز ار ليکش ت ده ديم و هب ليس ناتپ رفص لصو يم دوش .
– هياپ 14 VDD : هيذغ ت تبثم تسا و هب ليس ناتپ V 2 + ات 5 / 5 + ل صو
ده ا وخ دش .
– هياپ 4 MCLR : ر گا هب نيمز لصو دوش ل اعف نييا پ رتنکو رکيم رل ار
تسي ر دنک يم .
سرداﺮﻓ
FaraDars.org
slide 46: یدربراک کینورتاکم ۱
faradars.org/fvmec105
46
موس لصف : رلرتنکورکیم PIC
• تاصخشم و هوحن درکلمع ورکیم رلرتنک PIC16F84
– ناس ون اه زاس Clock
– یاه رلر تنکورکيم PIC رداق دنتسه اب راهچ عون ناس ون زاس فلتخ م راک
دننک
.1 هد افتسا زا زاس ناس ون يلخاد
.2 هد افتسا زا زاس ناس ون تمواقم و نزاخ
.3 هد افتسا زا یاه زاس ناس ون يکي مارس و ديدش ت اه هدننک
.4 هد افتسا زا یاه زاس ناس ون يج راخ
– رد عو ن ، ل وا رلرتنکورکيم زا کي را دم ي لخ ا د تمواقم و نزاخ ی ا رب
داجي ا ناس ون هد افتسا دنک يم
– رد عو ن ، مود زا کي را دم تمواقم و نزاخ هب نا ونع زاس ناس ون ه دافتس ا
دوش يم
سرداﺮﻓ
FaraDars.org
slide 47: یدربراک کینورتاکم ۱
faradars.org/fvmec105
47
موس لصف : رلرتنکورکیم PIC
• تاصخشم و هوحن درکلمع ورکیم رلرتنک PIC16F84
– ناس ون اه زاس Clock
– رد ود تل اح ،ید عب زا یاه لا تسي رک فلتخ م هب تروص يج راخ هد افتسا دوش يم
– اه ل اتسي رک هب 3 هتسد ري ز ميس قت دنو ش يم
.1 LP ل اتسي رک نا وت نيياپ اب هد ودح م 32 ات 200 زتره ول يک
.2 XT ل اتسي رک / دي دشت هدنن ک اب هد ودح م 200 زتره ول يک ات 4 زتره اگم
.3 HS لاتس ي رک تعرس لاب / ديدش ت هدننک اب هد ودحم 4 ات 20 زتره اگ م
– رد ماگ نه یزي ر همانرب رلرتنکورکيم ، تل اح ناس ون زاس نييعت دوش يم
PIC 16F84
OSC1
XTAL
L
C1
C2
OSC2
سرداﺮﻓ
FaraDars.org
slide 48: یدربراک کینورتاکم ۱
faradars.org/fvmec105
48
موس لصف : رلرتنکورکیم PIC
• تاصخشم و هوحن درکلمع ورکیم رلرتنک PIC16F84
– تسي ر ند رک رلرتنکورکيم PIC16F84
– لم ع تسي ر یارب رارق ندا د رلر تنکورکيم رد کي تيعض و مولعم عورش هما نرب راک ب دور يم
– ماگ نه تس ي ر ،ندش هظ فاح RAM نو دب رييغت يقاب دنام يم
– رد جنپ تيعضو رلرتنکورکيم تسي ر دوش يم :
.1 تسي ر ماگ نه ب لصو ندش هيذغ ت
.2 تسي ر ما گنهب راک یداع ورکيم اب رفص ندرک هياپ هرام ش 4
.3 تسي ر ماگ نه ب تشگ رب زا دم با وخ
.4 تسي ر ماگ نه ب زي ررس ندش رم ي ات watchdog
.5 تسي ر ماگ نه ب تفا ژاتلو هيذغ ت ش يب زا دح زاجم
سرداﺮﻓ
FaraDars.org
slide 49: یدربراک کینورتاکم ۱
faradars.org/fvmec105
49
موس لصف : رلرتنکورکیم PIC
• تاصخشم و هوحن درکلمع ورکیم رلرتنک PIC16F84
– تسي ر ند رک رلرتنکورکيم PIC16F84
– هب روظ نم ی ريگولج زا رفص ندش ي فداص ت هياپ ،ت سي ر نيا هياپ زا قيرط کي تمواق م pull –up هب هيذغت تبثم ل ص تم
دوش يم
سرداﺮﻓ
FaraDars.org
slide 50: یدربراک کینورتاکم ۱
faradars.org/fvmec105
50
موس لصف : رلرتنکورکیم PIC
• تاصخشم و هوحن درکلمع ورکیم رلرتنک PIC16F84
– هظ فاح همانرب PIC16F84
– هظ ف اح ه مانرب 16F84 ، زا عون ش ل ف اب ی انهپ 14 تيب هب ی ا زا
ره هناخ هظ فاح و تيفرظ 1 ول يک هم لک دشاب يم
– ينامز هک هيذغ ت ع طق تسا تا علطا هري خ ذ ه دش رد هظ ف ا ح زا
نيب دور يم ن
– س ردآ 0000h : راد رب تسي ر هب نيا س ردآ هراشا دنک يم
– سردآ 0004h : را درب هفقو هب نيا سردآ هراش ا دنک يم
– سردآ 2007h : نيا سر دا رد عقا و یدنبرکيپ PIC ار ص خش م
دنک يم . تا م يظنت هيل و ا یارب د رکلمع رلرتنکورکيم س وت ط ه م لک
یدنبرکيپ هري خ ذ هدش رد نيا سردآ ماجنا دوش يم
– سردآ ربتعم یارب ، ربراک نام ه یاهس ردآ زا 0000h ات 03ffh
يم دشاب
سرداﺮﻓ
FaraDars.org
slide 51: یدربراک کینورتاکم ۱
faradars.org/fvmec105
51
موس لصف : رلرتنکورکیم PIC
• تاصخشم و هوحن درکلمع ورکیم رلرتنک PIC16F84
– هظ فاح هد ا د و DataRAM
– نيا هظ ف اح زا ود کن اب کي ره اب تيفرظ 80 تياب س ردآ 00h
ات 4Fh یا رب کن اب 0 و 80h ات CFh یارب ک ناب 1 دشاب يم
– 12 تياب ل وا زا ره کن اب 00h-0Bh ، SFR هديم ان دنو ش يم
– دي اب ت قد درک هک یا رب راک اب کي تابث SFR ص خش م لثم
TRISA هک رد کن اب 1 رارق ،دراد دياب کن اب 1 لا عف دوش و اي
یارب طا بترا اب ت ابث INTCON هک رد کن اب رفص را رق درا د د ي ا ب
کن اب رفص ل اعف دوش
سرداﺮﻓ
FaraDars.org
slide 52: یدربراک کینورتاکم ۱
faradars.org/fvmec105
52
موس لصف : رلرتنکورکیم PIC
• تاصخشم و هوحن درکلمع ورکیم رلرتنک PIC16F84
– رم ي ات رد PIC16F84
– روط ب يکيزيف کي ،رم ي ات يتاب ث هدن رامش تسا هک رادقم نآ روط ب هتسويپ ش ي ا زفا دباي يم ات هک ني ا ررس زي دوش و ل م ع
شرا م ش زا ا دتبا را رکت دوش
– رلرتنکورکيم 16F84 یارا د کي رم ي ات 8 يتيب تسا و ا ذل دنا وت يم ات هرامش 255 درام شب .
– یارب يبايتس د هب یا ه نامز ينلو ط رت شر ام ش رتش يب ، تم سق ی رگيد رد لخاد رلرتنکورکيم دوجو درا د هک پ شي م سق م
مان درا د
– ش يپ مس قم يم دنا وت تبسن یاه 1 : 2 ، 1 : 4 ، ات 1 : 256 ار رايتخ ا دنک
– نا ونع هب ل اثم رگا ش يپ مس قم یور 1 : 128 ميظنت هدش ،دشاب هب یازا 1 28 کلک یدورو هب ش يپ ،مسق م رم ي ات کي دح ا و
ش ي ا زفا ده ا وخ تفاي
سرداﺮﻓ
FaraDars.org
slide 53: یدربراک کینورتاکم ۱
faradars.org/fvmec105
53
موس لصف : رلرتنکورکیم PIC
• یاه تابث SFR اي تابث یاه دربراک صاخ
– نيا اه ت ابث درکلمع يصاخ دنرا د و ره کي یا رب یاهتمسق ينيعم زا رلرتنکورکيم رد رظن هتفرگ دنا هدش
– تابث Status
– نيا تابث یارا د 8 تيب يم دشاب و رد یاه س ردآ 03h و 83h زا هظ فاح RAM را رق درا د .
– R : ففخ م Readablebit تسا و ناش ن هدنهد نآ تسا هک تيب دروم رظن لب اق ندن ا وخ تسا
– W : ففخ م Writablebit تسا و ناش ن يم ده د هک تيب دروم رظن لب اق نتشو ن تسا
– n : ناش ن يم ده د هک تيب دروم رظن رد ماگ نه نشو ر ندش رلرتنکورکيم هچ یرادقم 0 اي 1 ده ا وخ تشا د .
– x : هب ينعم نآ تسا هک را دقم تيب مولع مان تس ا
سرداﺮﻓ
FaraDars.org
slide 54: یدربراک کینورتاکم ۱
faradars.org/fvmec105
54
موس لصف : رلرتنکورکیم PIC
• یاه تابث SFR اي تابث یاه دربراک صاخ
– تابث Status
– تيب رفص ، C Carryflag ،
– رگا رد نيح لم ع عمج و قي رفت مقر يلقن Carrybit و مقر يض رق borrowbit داج ي ا دوش را دقم نيا تيب زا رفص هب
کي لي دبت دوش يم
– مقر يلقن ينامز داح ي ا دوش يم هک رد عمج ود ددع 8 ،يتيب لصاح 9 تيب دوش
1
→
مقر
یلقن
0 1 1 0 0 1 1 1
1 0 0 0 1 0 1 1 +
1 1 1 0 1 1 0 1 1
سرداﺮﻓ
FaraDars.org
slide 55: یدربراک کینورتاکم ۱
faradars.org/fvmec105
55
موس لصف : رلرتنکورکیم PIC
• یاه تابث SFR اي تابث یاه دربراک صاخ
– تابث Status
– تيب رفص ، C Carryflag ،
– مقر ، يضرق ي نامز داج ي ا دوش يم هک هجيتن تا يلمع ،قيرفت يفنم ه دش و زاين هب ضر ق ند رک ددع کي زا تيب ب ا ه بت رم
رتلاب تسا
یضرق مقر
←
1 0
1 0 1 0 1 1 0 1
1 0 0 1 0 1 0 1 -
0 0 1 0 0 0 0 0
سرداﺮﻓ
FaraDars.org
slide 56: یدربراک کینورتاکم ۱
faradars.org/fvmec105
56
موس لصف : رلرتنکورکیم PIC
• یاه تابث SFR اي تابث یاه دربراک صاخ
– تابث Status
– تيب ،کي DC DigitalCarryflag ، :
– رگا رد ل وط ل م ع عمج و قي رفت مقر يلقن ي نايم ر ه اظ دوش زا تيب 4 هب تي ب 5 مقر ي لقن د وجو هتشا د دشاب را دقم نيا
تيب زا رفص هب کي لي دبت يم دوش
1
→
مقر
یلقن
0 1 0 1 0 1 0 1
1 1 0 1 0 0 0 0 +
1 0 1 0 1 1 0 1
سرداﺮﻓ
FaraDars.org
slide 57: یدربراک کینورتاکم ۱
faradars.org/fvmec105
57
موس لصف : رلرتنکورکیم PIC
• یاه تابث SFR اي تابث یاه دربراک صاخ
– تابث Status
– تيب ،ود Z zeroflag : نيا ،تيب م چ رپ رفص تس ا . رگا هجيتن کي لمع يتابساح م اي ي قطنم رفص ،دوش را دقم يا ن ت ي ب
کي دوش يم
– نينچمه رگا رد تا روتس د يطرش هجيتن ط لغ ،دشاب را دقم نيا تيب ربا رب رفص ده ا وخ دش
– تيب ،هس Power- Down bit : ه ک يماگنه رلرتنکورکيم هب عبنم هيذغ ت لصو د وش يم را دقم نيا تيب ربا رب کي
ده ا وخ دش
– تيب ،راهچ Timer-Outbit : نيا تيب نل عا زي رر س ر م ي ات watchdog تس ا و اب زي ررس رم ي ات watchdog را دقم نآ
رفص دوش يم .
سرداﺮﻓ
FaraDars.org
slide 58: یدربراک کینورتاکم ۱
faradars.org/fvmec105
58
موس لصف : رلرتنکورکیم PIC
• یاه تابث SFR اي تابث یاه دربراک صاخ
– تابث Status
– یاه تيب جنپ و ،ش ش RP
1
RP
0
RegisterBankSelectbits :
– اب تيب 5 نا وت يم نيب ود کن اب رفص و کي چيئ وس درک . تيب مش ش رد 16F84 دروم هد افتس ا را رق دريگ يم ن و هشيمه دي اب
رفص دشاب .
– تيب ،تفه IRP RegisterBankSelectbit :
– هفيظو نيا تيب باختن ا ی اه کن اب 2 و 3 تس ا . را دقم 1 رد نآ هب ينعم باخ تنا ی اهک ناب 2 و 3 و را دقم رفص هب ه لزنم
باختن ا یاه کن اب 0 و 1 تسا .
– نيا تيب رد 16F84 دروم هد افتسا را رق يم ن دريگ و هشيمه دي اب رفص دشاب .
سرداﺮﻓ
FaraDars.org
slide 59: یدربراک کینورتاکم ۱
faradars.org/fvmec105
59
موس لصف : رلرتنکورکیم PIC
• یاه تابث SFR اي تابث یاه دربراک صاخ
– تابث OPTION_REG
– نيا تابث هک رد سردآ 81h زا هظ فاح RAM را رق ،درا د کي تابث لب اق ندن ا وخ و نتشو ن دشاب يم
– لماش یا ه تيب ي لرتنک فل تخ م یارب ص يص خ ت دح ا و ش يپ سا يقم هد نه د هب رم ي ات ،رفص رم ي ات ،نابه گن تنک لر هفقو
،يج راخ ل رتنک رم ي ات رفص و تمواقم یاه pullup تروپ B تسا
– یاه تيب ،رفص کي و ،ود PS0-PS2 PrescalerRateSelectbits :
– نيا هس تيب یارب نييعت را دقم ش يپ مس قم دنش اب يم .
WDT TMR0 BITS
1:1
1:2
1:4
1:8
1:10
1:32
1:64
1:128
1:2
1:4
1:8
1:10
1:32
1:64
1:128
1:256
000
001
010
011
100
101
110
111
سرداﺮﻓ
FaraDars.org
slide 60: یدربراک کینورتاکم ۱
faradars.org/fvmec105
60
موس لصف : رلرتنکورکیم PIC
• یاه تابث SFR اي تابث یاه دربراک صاخ
– تابث OPTION_REG
– تيب ،هس PSA PreScalerAssignmetbit
– نيا تيب یا رب صا ص تخا ش يپ مس قم هب TMR0 اي WDT راکب دور يم
– رگا رادقم نآ کي ،دشاب ش يپ مسقم هب WDT ص ا ص ت خ ا هد ا د دوش يم و رگا رادقم نآ رفص ،دشاب ش ي پ مسقم هب TMR0
صا ص تخا هد ا د دوش يم .
– تيب 4 ، T0SE:TMR0 SourceEdgeSelectbit
– رگا ش ي ا زفا را دقم TMR0 هليس وب یدورو کلک زا قي رط هياپ هرامش 3 ،دش اب نيا تيب یارب نييعت یا هبل تسا هک ت حت
نآ TMR0 ش ي ا زفا ده ا وخ تفاي
– را دقم کي هب ينع م ش ي ا زفا رد هبل نيياپ هدن ور و را دقم رفص هب ينع م ش ي ا زفا رد هبل هدن ورلاب کلک تسا . يا ن تيب ی ا رب
کلک يج راخ هد افتسا دوش يم .
سرداﺮﻓ
FaraDars.org
slide 61: یدربراک کینورتاکم ۱
faradars.org/fvmec105
61
موس لصف : رلرتنکورکیم PIC
• یاه تابث SFR اي تابث یاه دربراک صاخ
– تابث OPTION_REG
– تيب 5 ، T0CS:TMR0 ClockSourceSelectbit
– رم ي ات رفص TMR0 یارب هزا دنا یريگ نامز زاين هب کي کلک یدورو درا د
– هد افتسا زا ک لک يلخ ا د دوخ رلر تنکورکيم ، رد نيا تل اح ک لک رم ي ات کي مرا هچ ک لک رلر تنکورکيم ده ا وخ ب دو
– رد هکيت روص رلرتنکورکيم اب روتليس ا يج راخ راک ،دنک را دقم کلک رم ي ات کي مراهچ کلک روتليس ا ده ا وخ ب دو
– یا هتکن هک مزل تسا هب نآ هراش ا د وش نيا تس ا هک را دقم ميظنت ه دش یا رب Prescaler رب یو ر را دقم دي دج ي نعي
fosc/4 لمع دنک يم
سرداﺮﻓ
FaraDars.org
slide 62: یدربراک کینورتاکم ۱
faradars.org/fvmec105
62
موس لصف : رلرتنکورکیم PIC
• یاه تابث SFR اي تابث یاه دربراک صاخ
– تابث OPTION_REG
– تيب 6 ، INTEDG InterruptEdgeSelectbit
– رد هکيت روص هفقو رد همانرب ل اعف ،دشاب اب ل ام عا یدورو هب هياپ هرامش 6 RBO\INT هفقو ا رج ا يم ددرگ
– رگا رادقم تيب ،ش ش کي ،دشاب هفقو رد هبل لاب هدن ور یدورو ا رج ا ددرگ يم
– تيب 7 ، : PORTB Pull-upEnablebit
– نيا تيب یا رب یزاسلاعف یاهتمو اقم pull –up يلخاد تروپ B راکب يم دور
سرداﺮﻓ
FaraDars.org
slide 63: یدربراک کینورتاکم ۱
faradars.org/fvmec105
63
موس لصف : رلرتنکورکیم PIC
• یاه تابث SFR اي تابث یاه دربراک صاخ
– یاه تابث TRISB و TRISA
– راک نيا ود رتسيجر نييعت تهج هد ا د یدورو - يج ورخ رد یاه تروپ A و B تسا
– یاهتيب رفص ات راهچ TRISA هب بيترت ريظن هياپ یا ه RA0 ات RA4 زا تر وپ A و ی اه تيب رفص ات تفه زا TRISB هب
بيترت ريظن هياپ یاه RB0 ات RB7 زا تروپ B تسا
– یارب في رعت کي هياپ نا ونع هب یدورو ي فاک تسا تيب رظانتم نآ هياپ رد ت ابث TRIS ، کي دوش . را دق م رفص هياپ ر يظن ار
تروص ب يج ورخ في رعت دنک يم .
– نا ونع هب ل اثم رگا را دقم 00h رني اب 0000000 رد ت ابث TRISB را رق ه دا د ،دوش م ام ت هياپ ی اه تر وپ B هياپ یا ه 6 ات
13 رلرتنکورکيم تروص ب يج ورخ في رعت دنو ش يم
– رگا را دقم 0Fh یرني اب 00001111 رد ت ابث TRISB را رق هد ا د ،دوش هياپ ی ا ه 6 ات 9 ر لرتنکورکيم ت روص ب یدورو و
یاه هياپ 10 ات 13 رلر تنکورکيم تروص ب يج ورخ في رعت دنه ا وخ دش
سرداﺮﻓ
FaraDars.org
slide 64: یدربراک کینورتاکم ۱
faradars.org/fvmec105
64
موس لصف : رلرتنکورکیم PIC
• یاه تابث SFR اي تابث یاه دربراک صاخ
– تابث INTCON
– يتابث هک ی هفيظو ل رتنک هفقو ار درا د تابث، ل رتن ک هفقو مان درا د و رد سردآ 0BH و 8BH زا ی هظ ف اح RAM ر ا رق
درا د
– ی هفيظو نيا تابث ل رتنک یارجا ل ا وري ز هفقو اي ا رج ا ند رکن نآ رد ماگ نه هب دوجو ندمآ هفقو تسا
– تيب رفص FlagbitRBIF:RBPortChangeInterrupt
– نيا تيب ، تيب مچرپ رييغت رد تروپ B تسا تيب ص يخ شت هفقو .
– نيا تيب رييغت رد هياپ یاه 4 ، 5 ، 6 و 7 زا تروپ B ار علطا ده د يم
– نيا تيب رب س اسا رييغت نيا هياپ اه یارا د ريد اقم ريز ده ا وخ دوب :
.1 1 : ،لقا دح تيعضو يلبق يکي زا هياپ اه 4 ، 5 ، 6 و 7 رييغت هد رک تسا .
.2 0 : چيه یرييغت رد تيعضو يلبق چيه کي اه هياپزا 4 ، 5 ، 6 و 7 قافتا هد اتفاين تسا .
سرداﺮﻓ
FaraDars.org
slide 65: یدربراک کینورتاکم ۱
faradars.org/fvmec105
65
موس لصف : رلرتنکورکیم PIC
• یاه تابث SFR اي تابث یاه دربراک صاخ
– تابث INTCON
– تيب 1 RB0/INTInterruptFlagbit:INTF
– رد هک يتروص هياپ ه رام ش 6 RBO/INT ن ا ونعب هفقو يج راخ في رعت هدش دشاب لاع ف ندش تيب هرام ش 4 ، INTE ،
هفيظو نيا تيب ص يخ شت عو قو هفقو یور نآ تسا
– تيب 2 TMR0OverflowInterruptFlagbit : TOIF
– نيا تيب ، زا رس زي ر ندش رتس يجر TMRO ربخ ده د يم . رد تروص رس زي ر ندش رم ي ات TMPO نيا تيب کي ده ا وخ دش
– تيب 3 RBPortChangeInterruptEnablebit : RBIE
– نيا تيب ، تيب یزاس ل اعف ،هفقو رد تروص رييغت رد هياپ یاه 4 ، 5 ، 6 و 7 زا تروپ B دشاب يم
– رد عقا و اب نيا تيب هزاجا ل اعف ندش هفقو زا قي رط نيا اه هياپ نييعت دوش يم
سرداﺮﻓ
FaraDars.org
slide 66: یدربراک کینورتاکم ۱
faradars.org/fvmec105
66
موس لصف : رلرتنکورکیم PIC
• یاه تابث SFR اي تابث یاه دربراک صاخ
– تابث INTCON
– تيب 4 INTE:RB0/INTInterruptEnablebit
– نيا تيب ، تيب یزا سلاعف هفقو يج راخ دشاب يم
– تيب 5 Enablebit TOIE:TMR0OverflowInterrupt
– نيا تيب ، تيب ی زاسلا عف هفقو رد ت روص رس زي ر ندش TMRO تسا . رگا نيا تيب 1 ، دشاب رس زي ر TMRO ه ز ا ج ا ل ا ع ف
ند ومن هفقو ار ده ا وخ تشا د .
– تيب 6 EEIE:EEWriteCompleteInterruptEnablebit
– نيا تيب ، تيب یزاسلاعف هفقو رد تروص مام تا نتشو ن رد EEPROM تسا
سرداﺮﻓ
FaraDars.org
slide 67: یدربراک کینورتاکم ۱
faradars.org/fvmec105
67
موس لصف : رلرتنکورکیم PIC
• یاه تابث SFR اي تابث یاه دربراک صاخ
– تابث INTCON
– تيب 7 GIE:GlobalInterruptEnablebit
– نيا تيب ، تيب یزا سلاعف يلصا تسا و اب نيا تيب يم نا وت ما م ت عا ونا اه هفقو ار لاع ف اي ريغ لاع ف درک .
سرداﺮﻓ
FaraDars.org
slide 68: یدربراک کینورتاکم ۱
faradars.org/fvmec105
68
موس لصف : رلرتنکورکیم PIC
• یاه تابث SFR اي تابث یاه دربراک صاخ
– تابث EEDATA
– نيا تابث تهج نتشون و اي ندن ا وخ هد ا د زا EEPROM هد افتسا يم دوش
– تابث EEADR
– نيا تابث هفيظو سردآ يه د هظ فاح EEPROM ار هده عب درا د
سرداﺮﻓ
FaraDars.org
slide 69: یدربراک کینورتاکم ۱
faradars.org/fvmec105
69
موس لصف : رلرتنکورکیم PIC
• یاه تابث SFR اي تابث یاه دربراک صاخ
– هص لخ
سرداﺮﻓ
FaraDars.org
slide 70: یدربراک کینورتاکم ۱
faradars.org/fvmec105
70
موس لصف : رلرتنکورکیم PIC
• یاه هاگرد یدورو و یجورخ رلرتنکورکیم PIC16F84
– رلرتنکورکيم 16F84 یارا د 13 هياپ یدورو / يج ورخ رد ود هاگ رد A جنپ هياپ / تيب و B 8 هياپ / تيب تسا
– نا زيم ناي رج يشک هياپ یاه فلتخ م
– ره کي ی اه هياپ ا ه تروپ ار نا وتيم هب روط هناگا دج ي کت ت روص ب یدورو اي ي ج ورخ في رعت درک . نيا راک ط س وت
SFR یاه TRISA سردآ 85h ، یارب تروپ A و TRISB سردآ 86h ، یارب تروپ B ماجنا دوش يم
– راهچ هياپ تروپ B یارا د تيلب اق ديلوت هفقو دنتس ه و رد عقا و يکي زا عب انم ،هفقو نيم ه هياپ اه دنتس ه
تروپ B تروپ A ره هياپ I\O
mA 150 mA 80 mA 25 نايرج Sink يدورو
mA 100 mA 50 mA 25 نايرج Source یجورخ
سرداﺮﻓ
FaraDars.org
slide 71: یدربراک کینورتاکم ۱
faradars.org/fvmec105
71
• هتشپ رد PIC16F84
– یاض ف هتشپ هن يتم سق زا هظ فاح همانرب تسا و هن يتم سق زا هظ فاح هد ا د
– هتشپ یارب هريخذ رادقم هدن رام ش هما نرب PC ما گنه ينا وخ ا رف ريز اه لا ور هد افتسا دوش يم .
– نيدب بيترت ماگ نه تشگ زاب زا ،لا ورري ز رلورتنکورکيم ده ا وخ تسن ا د هک زا اجک یارجا همانرب ار زا رس دريگب
– ش يپ زا ،شرپ رل رتنکو رکيم سردآ يلع ف دوخ رد همان رب يلصا ار هک رد PC را ر ق درا د رد هتشپ هري خ ذ دنک يم . هب نيا ل م ع
PUSH هتفگ دوش يم
– دعب زا ی ا رج ا لا ورريز رلر تنکورک يم ی ا رج ا هما نرب يلص ا ار زا يسردآ هک رد هتشپ هريخذ هدش ،ت سا زا رس دريگ ي م . هب ن ي ا
لمع POP هتفگ دوش يم .
– PIC16F84 یارا د 8 هاگي اج 13 يتيب یارب هتشپ دشاب يم
– هتشپ 8 يح طس ناش ن ده د يم هک زا 8 همانرب ل ا ورري ز وت رد وت ا دص ند ز ري ز ل ا و ر رد لخاد ر ي ز ل ا ور رگيد ن ا وت يم
هد افتسا درک
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 72: یدربراک کینورتاکم ۱
faradars.org/fvmec105
72
موس لصف : رلرتنکورکیم PIC
• هتشپ رد PIC16F84
سرداﺮﻓ
FaraDars.org
slide 73: یدربراک کینورتاکم ۱
faradars.org/fvmec105
73
موس لصف : رلرتنکورکیم PIC
• تابث W
– نيا ،تابث تابث راک مان درا د و يش قن هيبش روتلوموک ا رد ري اس اه رلرتنکورکيم درا د
– نيا تابث اب ALU رد ط ابترا تسا و ج ي اتن تابساحم ALU ار رد دوخ هگن درا د يم
– تابث W ، نينچمه رد نييعت یدورو - يج ورخ ند وب اه تروپ زين هد افتسا دوش يم .
سرداﺮﻓ
FaraDars.org
slide 74: یدربراک کینورتاکم ۱
faradars.org/fvmec105
74
موس لصف : رلرتنکورکیم PIC
• هدنرامش همانرب رد PIC16F84
– هدن رام ش همانرب اي PC سردآ يلمعلارو تس د هک ط س وت CPU دي اب ا رج ا دوش ار ص خش م دنک يم
– PIC16F84 یارا د کي هدن رام ش هما نرب 13 يتيب تسا
– تياب مک شزرا نآ اب نا ونع PCL هتخ انش دوش يم و يتابث لب اق ندن ا وخ و نتشو ن تسا و تياب اب شزرا نآ اي PCH تسا
– نيا 13 تيب يي انا وت يه د سردآ یارب 8 تياب ول يک زا یاض ف هظ فاح همانرب ار درا د
سرداﺮﻓ
FaraDars.org
slide 75: یدربراک کینورتاکم ۱
faradars.org/fvmec105
75
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– ناب ز يس ي ون همانرب يلصا هد ا ون اخ PIC و هو رگ يعيس و زا اه رلرتنکورکيم ناب ز يلبمسا تسا
– تاروتس د نابز يلبم سا
– روتس د MOVLW : ل اقتنا را دقم تباث هب تابث W
– نيا روتس د هد ا د تشه يتيب K ار هب تابث W لقتنم دنک يم
– MOVLW K
– لاثم
– MOVLW 0x12
– روتس د MOVWF : ل اقتنا تابث W هب تابث F
– نيا ،روتس د هد ا د دوجوم رد تابث W ار هب تابث F لقتنم دنک يم
– MOVWF F
– هب یاج F رد روتس د ،قوف دنا وت يم سردآ نآ را رق دريگ و اي مان تابث هتشو ن دوش
سرداﺮﻓ
FaraDars.org
slide 76: یدربراک کینورتاکم ۱
faradars.org/fvmec105
76
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتس د MOVF :
– MOVF Fd
– رد نيا ،روتس د رگا را دقم d ربا رب رفص ،دشاب هد ا د دوجو م رد F رد W هتخي ر يم دوش و رگا را دقم d کي ،دشاب ه د ا د د و ج وم
رد W ار هب F لقتنم دنک يم
– روتس د ADDLW :
– نيا روتسد کي رادقم تباث تشه يتيب k ار اب تابث W عم ج يم دنک و هجيتن ار رد W دزي ر يم
– ADDLW k
WC7h 0b11000111 MOVLW
F11000111b F is located at address 0Ch of RAM 0x0C MOVWF
W1Ah 0b11010 MOVLW
W9Bh + 1Ah B5h 0x9B ADDLW
سرداﺮﻓ
FaraDars.org
slide 77: یدربراک کینورتاکم ۱
faradars.org/fvmec105
77
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد ADDWF
– نيا روتس د هتسب هب را دقم d ، ددع لخاد رتس يجر F ار اب W عمج يم دنک و هجيتن ار رد F اي W دزي ر يم
– رگا را دقم d ربا رب رفص ،دشاب هجيتن رد W و رگا کي دشاب هجيتن رد F هتخي ر دوش يم .
– ADDWF Fd
W9Bh 0x9B MOVLW
F9Bh F is located at address 0Ch of RAM 0x0C MOVWF
W1Ah 0x1A MOVLW
F9Bh+1Ah 0x0C1 ADDLWF
سرداﺮﻓ
FaraDars.org
slide 78: یدربراک کینورتاکم ۱
faradars.org/fvmec105
78
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد SUBLW : مک ندرک تابث W زا رادقم تباث
– اب یارجا نيا روتس د تابث W زا را دقم تشه يتيب k مک هدش و هجيتن رد تابث W را رق دريگ يم
– SUBLW k
– روتس د SUBWF : مک ند رک تابث W زا تابث F
– اب ی ا رج ا نيا روتس د را دقم تابث W زا تابث F مک دوش يم . رگا را دقم d ر با رب رفص ،دشاب هجيتن رد W و رگا ر ب ا ر ب کي ، د ش ا ب
هجيتن رد F هري خ ذ دوش يم
– SUBWF Fd
W1Ah 0b11010 MOVLW
WFFh – 1Ah E5h 0xFF SUBLW
سرداﺮﻓ
FaraDars.org
slide 79: یدربراک کینورتاکم ۱
faradars.org/fvmec105
79
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد SUBWF : مک ندرک تابث W زا تابث F
– روتس د BCF : رفص ند رک تيب
– نيا روتس د تيب هرامش b زا رتس يج ي ر F ار رفص clear دنک يم
– BCF Fb
– BCFFLAG_REG 7
W11011100b 0b11011100 MOVLW
F11011100b 0x0C MOVWF
W03h 0b11 MOVLW
W11011100b – 11b11011001 0x0C0 SUBWF
سرداﺮﻓ
FaraDars.org
slide 80: یدربراک کینورتاکم ۱
faradars.org/fvmec105
80
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد BSF : کي ندرک تيب
– دننام BCF تسا اب نيا توافت هک تيب هرامش b زا رتس يج ي ر F ار هب یاج ،رفص کي set دنک يم .
– BSF Fb
– BSFFLAG_REG 3
– روتسد BTFSC : تست تيب و ش رپ رد تروص رفص ندو ب
– نيا رو تس د تيب هرامش b زا رتس يج ي ر F ار کچ دنک يم ، رگا رفص دشاب روتس د یدعب ماجنا دوش يم ن و هب روتس د ر ت دعب
دور يم و رد عقا و کي روتس د شرپ يم دنک
– BTFSC Fb
– زا نيا روتسد یارب تايلم ع يطرش لثم IF هد افتسا دوش يم
سرداﺮﻓ
FaraDars.org
slide 81: یدربراک کینورتاکم ۱
faradars.org/fvmec105
81
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد BTFSC : تست تيب و ش رپ رد تروص رفص ندو ب
– روتس د BTFSS : تست تيب و شرپ رد تروص کي ند وب نآ
– نيا روتس د دننام روتس د لبق تيب هرامش b زا رتس يج ي ر F ار کچ دنک يم ، يلو رگا کي دشاب کي روتس د شرپ دنک يم
– BTFSS Fb
موس لصف : رلرتنکورکیم PIC
WC7h 0b11000111 MOVLW
F0b11000111 0x0C MOVWF
check bit 3 whether is 1 or 0 0x0C3 BTFSC
skip this line if bit 3 is 0 0x0C4 BSF
WC7h+9Bh 0x9B ADDLW
سرداﺮﻓ
FaraDars.org
slide 82: یدربراک کینورتاکم ۱
faradars.org/fvmec105
82
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد BTFSS : تست تيب و ش رپ رد تروص کي ندو ب نآ
– روتس د CLRW : رفص ند رک تابث W
– نيا روتس د رتس يج ي ر W ار هد رکرفص و مچرپ Z ار ربا رب رفص را رق ده د يم
– CLRW
WC7h 0b11000111 MOVLW
F0b11000111 0x0C MOVWF
check bit 1 whether is 1 or 0 0x0C1 BTFSS
skip this line bit 1 is 1 0x0C4 BSF
WC7h+9Bh 0x9B ADDLW
سرداﺮﻓ
FaraDars.org
slide 83: یدربراک کینورتاکم ۱
faradars.org/fvmec105
83
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد LRWDT : رفص ندرک رم ي ات نابهگن
– نيا روتس د ثعاب Reset ندش رم ي ات نابه گن دوش يم
– LRWDT
– روتس د COMF : لمک م ند رک تابث F
– نيا روتسد رتسيج ي ر F ار ل م کم ه درک و رد ت روص رفص ن دوب d هجيتن ت ايلم ع رد ت ا بث W و رد تروص کي ندو ب ، نآ
هجيتن رد تابث F را رق دريگ يم
– COMF Fd
موس لصف : رلرتنکورکیم PIC
WC7h 0b11000111 MOVLW
F11000111b F is located at address 0Ch of RAM 0x0C MOVWF
W111000b 0x0C0 COMF
سرداﺮﻓ
FaraDars.org
slide 84: یدربراک کینورتاکم ۱
faradars.org/fvmec105
84
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد DECF :
– نيا روتس د تايو تح م تا بث F ار کي دح ا و ش ه ا ک ده د يم ؛ رد هک يتروص d رفص دشاب هجيتن تايلمع رد تا بث W و رد
يتروص هک کي دشاب ، هجيتن رد تابث F را رق دريگ يم
– DECF Fd
WC7h 0b11000111 MOVLW
F11000111b 0x0C MOVWF
F0xC7 – 1 0xC6 0x0C DECF
سرداﺮﻓ
FaraDars.org
slide 85: یدربراک کینورتاکم ۱
faradars.org/fvmec105
85
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد DECFSZ : ش ه اک تابث F و ش رپ رد تروص رفص ندو ب هجيتن
– اب یا رج ا نيا ،روتس د یاو تح م رتس يج ي ر F کي د ح ا و ش ه ا ک دباي يم . ر گا d ربا رب رفص دشاب هجيتن رد W و رگا ربا رب کي
دشاب لصاح رد F هري خ ذ دوش يم
– رگا هجيتن رفص دوش اي هب يترابع تيب Z رد رتس يجر Status رفص دوش ، زا یور روتس د یدعب شرپ دنک يم
– DECFSZ Fd
W03h 0b11 MOVLW
F11b 0x0C MOVWF
MAIN:
⁞
F11b -1 0x0C1 DECFSZ
GOTO MAIN
W1Ah 0x1A MOVLW
سرداﺮﻓ
FaraDars.org
slide 86: یدربراک کینورتاکم ۱
faradars.org/fvmec105
86
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد INCF : ش ي ا زفا تابث F
– اب ی ا رج ا نيا روتس د هب یاو تح م رتس يج ي ر F کي دح ا و هد وزفا دوش يم رد هک يتروص d رفص دشاب هجي تن رد ت ابث W و رد
تروص کي ند وب d ، هجيتن رد تابث F را رق دريگ يم
– INCF Fd
W11011100b 0b11011100 MOVLW
F11011100b 0x0C MOVWF
W11011100b +111011101b 0x0C0 INCF
سرداﺮﻓ
FaraDars.org
slide 87: یدربراک کینورتاکم ۱
faradars.org/fvmec105
87
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد INCFSZ : ش ي ا زفا تابث F و ش رپ رد تروص رفص ندو ب هجيتن
– اب یارجا نيا روتس د هب یاو تح م رتس يج ي ر F کي دح ا و هد وزفا هدش و لص اح اب هجو ت هب را دقم d نو ر د W اي F ه تخ ي ر
دوش يم
– رگا هجيتن رفص دشاب ًلثم FF → 100 ، کي روتس د شرپ هد رک و روتس د یدعب ا رج ا دوش يم .
– INCFSZ Fd
WFCh 0b11111100 MOVLW
F FCh 0x0C MOVWF
MAIN:
⁞
FFCh + 1 0x0C1 INCFSZ
GOTO MAIN
W1Ah 0x1A MOVLW
سرداﺮﻓ
FaraDars.org
slide 88: یدربراک کینورتاکم ۱
faradars.org/fvmec105
88
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد ANDLW :
– نيا روتس د لمع AND يقطنم ار نيب ود ددع k و تابث W ا رج ا هد رک و هجيتن ار رد W دزي ر يم .
– ANDLW k
– روتس د ANDWF : AND يقطنم تابث W اب تابث F
– نيا رو تس د تايو تح م ود تابث W و F ار اب مه AND يقطنم دنک يم رد هک يتروص d رفص دشاب هجيت ن تايلمع رد W و
رد تروص کي ندو ب هجيتن رد تابث F رارق دريگ يم
– ANDWF Fd
W1Ah 11010 MOVLW
W110101Ah 10011011 ANDLW
سرداﺮﻓ
FaraDars.org
slide 89: یدربراک کینورتاکم ۱
faradars.org/fvmec105
89
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد ANDWF : AND يقط نم تابث W اب تابث F
– روتس د IORLW : OR يقطنم را دقم تباث اب تابث W
– نيا روتس د لمع OR يقطنم ار نيب ود را دقم k و W ماجنا ده د يم و هجيتن ار رد W هري خ ذ دنک يم
– IORKW k
W9Bh 0x9B MOVLW
F9Bh F is located at address 0Ch of RAM 0x0C MOVWF
W1Ah 0x1A MOVLW
F1Ah 0x0C1 ANDWF
W1Ah 0b11010 MOVLW
W11010 OR 10011011 10011011 0b10011011 IORLW
سرداﺮﻓ
FaraDars.org
slide 90: یدربراک کینورتاکم ۱
faradars.org/fvmec105
90
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد IORWF : OR يقط نم تابث W اب تابث F
– نيا روتس د لمع OR يقط نم ار نيب ود را دقم ت ابث F و W ماجنا ده د يم و هجيتن رد هک يتروص را دقم d ربا ر ب رفص ، دشاب
رد W و رگا ربا رب کي دشاب رد F هري خ ذ دنک يم
– IORWF Fd
W9Bh 0x9B MOVLW
F9Bh 0x0C MOVWF
W1Ah 0x1A MOVLW
F9Bh 0x0C1 IORWF
سرداﺮﻓ
FaraDars.org
slide 91: یدربراک کینورتاکم ۱
faradars.org/fvmec105
91
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد XORLW : XOR يقط نم تابث W اب تابث k
– نيا روتس د لمع XOR يقطنم ار نيب ود را دقم k و W ماجنا ده د يم و هجيتن ار رد W هري خ ذ دنک يم .
– XORLW k
– روتس د XORWF : XOR يقطنم تابث W اب تابث F
– نيا روتس د تايو تح م ود تابث W و F ار اب مه XOR دنک يم رد هک يتروص d رفص دشاب هجيتن تاي لمع رد تابث W و رد
تروص کي ندو ب ،نآ هجيتن رد تابث F رارق دريگ يم
– XORWF Fd
W1Ah 0b11010 MOVLW
W11010 XOR 10011011 10000001 0b10011011 XORLW
سرداﺮﻓ
FaraDars.org
slide 92: یدربراک کینورتاکم ۱
faradars.org/fvmec105
92
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد XORWF : XOR يقط نم تابث W اب تابث F
– روتس د RRF : ش خ رچ تابث F هب تم س تس ا ر زا قي رط مقر يلقن
– تايو تح م تابث F زا قي ر ط مقر يلقن کي دح ا و هب تم س تسا ر ل اقتن ا ا ديپ دنک يم . رد تروص رفص ند وب d هجيت ن رد تابث
W و رد تروص کي ند وب d ، هجيتن رد تابث F را رق دريگ يم
– RRF Fd
W9Bh 0x9B MOVLW
F9Bh 0x0C MOVWF
W1Ah 0x1A MOVLW
F81h 0x0C1 XORWF
W10001000b 0b10001000 MOVLW
F10001000b 0x0C MOVWF
F1000100b 0x0C1 RRF
سرداﺮﻓ
FaraDars.org
slide 93: یدربراک کینورتاکم ۱
faradars.org/fvmec105
93
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد RLF : ش خ رچ تابث F هب تم س پچ زا قيرط مقر يلقن
– نيا روتس د دننام روتس د RRF لمع هد رک اب نيا توافت هک تايو تح م تابث F ار کي دح ا و هب تم س پچ ل اقتنا ده د يم
– RLF Fd
– روتس د CALL :
– نيا روتسد یارب ا دص ندز ريز اه لا ور هد افتسا يم دوش
– اب ند زا دص کي ل ا ورري ز ، همانرب يلصا فق وتم دوش يم و همانرب ل ا ورري ز ل ابند دوش يم
– CALLLabel
W10001000b 0b10001000 MOVLW
F10001000b 0x0C MOVWF
F00010001b 0x0C1 RLF
سرداﺮﻓ
FaraDars.org
slide 94: یدربراک کینورتاکم ۱
faradars.org/fvmec105
94
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد RETURN : تشگزاب زا ريز هما نرب
– هدن زا درپ رد ماگ نه یارجا ري ز همانرب اب نديس ر هب نيا روتس د هب همانرب يلصا و طخ دعب زا روتس د CALL ددرگ يمرب
– RETURN
WC7h 0b11000111 MOVLW
F0b11000111 0x0C MOVWF
call label SUB1 CALL SUB1
WC7h+9Bh 0x9B ADDLW
⁞
SUB1:
⁞
return to main program RETURN
سرداﺮﻓ
FaraDars.org
slide 95: یدربراک کینورتاکم ۱
faradars.org/fvmec105
95
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد RETLW
– نيا روتس د هباشم روتس د RETURN لمع دنک يم اب نيا ت واف ت هک لبق زا تشگ زاب هب طخ دع ب زا روتس د CALL ت باث k
ار رد W را رق ده د يم
– RETLW k
WC7h 0b11000111 MOVLW
F0b11000111 0x0C MOVWF
call label SUB1 CALL SUB1
WC7h+9Bh 0x9B ADDLW
⁞
SUB1:
⁞
return to main program and WCFh 0xCF RETLW
سرداﺮﻓ
FaraDars.org
slide 96: یدربراک کینورتاکم ۱
faradars.org/fvmec105
96
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد GOTO
– اب یارجا نيا ،روتس د همانرب هب يلح م هک اب بسچرب یولج GOTO ص خش م يم ،دوش شرپ يم دنک
– توافت نيا رو تس د اب CALL نآ تسا هک رد CALL یارجا همانرب يلصا فق وتم دوش يم و هدن زا درپ یارجا همانرب ر ي ز ل ا و ر
ار زاغآ يم دنک . رد هک يلاح رد روتس د GOTO هب طخ یرگيد زا همانرب يلصا شرپ يم دوش
– GOTO Label
WC7h 0b11000111 MOVLW
F0b11000111 0x0C MOVWF
goto label SUB1 GOTO SUB1
WC7h+9Bh 0x9B ADDLW
⁞
SUB1:
⁞
W1Ah 0x1A MOVLW
سرداﺮﻓ
FaraDars.org
slide 97: یدربراک کینورتاکم ۱
faradars.org/fvmec105
97
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تا روتس د ناب ز يلبمسا
– روتسد RETFIE : تشگزاب زا هفقو
– رگا رد همانرب زا هفقو هد افتس ا هدش ،دشاب اب هد افت س ا زا نيا ،روتس د سپ زا یارجا ري ز همانرب هقفو هب همانرب صا يل
ددرگ يمرب
– RETFIE
– روتسد NOP : مد ع یارجا تايلم ع
– نيا روتس د چيه يلمع ماجنا يم ن ده د و یارب داج ي ا ريخ ات تسا
– NOP
– روتس د SLEEP : را رق نتفرگ رد تل اح نا وت نيياپ
– اب یارجا نيا ،روتسد رلر تنکورکيم هب تل اح Standby دور يم
– SLEEP
سرداﺮﻓ
FaraDars.org
slide 98: یدربراک کینورتاکم ۱
faradars.org/fvmec105
98
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تاکن همانرب يس ي ون يلبمسا
– ش ي ام ن دا دعا
– MOVLW 0X0E
– MOVLW h0E
– MOVLW b00001110
– MOVLW d14
– MOVLW 14
– هفاضا ند رک ،تاحيضوت هد افتسا زا تملع
– نيرخآ روتس د رد ره همانرب يلبمسا ، روتس د end تسا هک هب رلبمسا ناي اپ همانرب ار ملعا درا د يم
سرداﺮﻓ
FaraDars.org
slide 99: یدربراک کینورتاکم ۱
faradars.org/fvmec105
99
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تاکن همانرب يس ي ون يلبمسا
– Directive اه
– يتارابع دنتس ه هک تهج في رعت و نييعت تمرف همانرب لبق زا همانرب را رق دنريگ يم و ثعاب ندش هد اس همانرب دنو ش يم
سرداﺮﻓ
FaraDars.org
slide 100: یدربراک کینورتاکم ۱
faradars.org/fvmec105
100
لاثم لمعلاروتسد حرش لمعلاروتسد
org 0
Sets the starting location of the assembly
programming
ORG
i EQU 0x00C referred to as “equates” CONSTANT / EQU
DEFINE zeroflag STATUS Z
Specify that any time Label is
encountered it is replaced by the string
DEFINE
include “p16F84.inc”
copy a text file
such as the .inc file into the source file
include
PROCESSOR 16F84
This directive is available for
commonality with
earlier Microchip PIC microcontroller
assemblers.
PROCESSOR
variable B Defines a variable variable
CBLOCK Address
Var1 Var2
VarA:2 increment by 2
:
ENDC
Define a starting address for variables or
Var1 Var2 constants that require
increasing values.
CBLOCK
End the CBLOCK label constant value
saving
and updating.
ENDC
ORG 0x02100
DE Value or “string”
Save initialization data for the PIC
microcontroller’s built-in data EEPROM
DE
سرداﺮﻓ
FaraDars.org
slide 101: یدربراک کینورتاکم ۱
faradars.org/fvmec105
101
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– تاکن همانرب يس ي ون يلبمسا
– Directive اه
– ل اثم ري ز درب راک يلمع Directive اه ار رته ب ناش ن ده د يم
”Variable” is a run time variable variable A 37
Test1 185 Test1 equal A 5
Test2 is Evaluated when it is used define Test2 A 5
:
W5 movelw 0b101
A 42 Addwf A1
:
“Test1” is replaced with 185 movlw Test1
:
“Test2” is replaced with A 5 movlw Test2
42 5
210
سرداﺮﻓ
FaraDars.org
slide 102: یدربراک کینورتاکم ۱
faradars.org/fvmec105
102
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– یاه شور يه د سردآ
.1 س ردآ يه د یروف
رد نيا يه د سردآ نو دب هد افتسا زا هناخ ،هظ فاح هد ا د روطب ميقتس م رد دص قم را رق هد ا د دوش يم
دننام روتس د MOVLW0XBF
.2 سردآ يه د ميقتس م
رد نيا ش ور هد ا د روط ب ميقتسم زا هناخ یا هظ فاح هک رد نآ رارق درا د هدن ا وخ اي رد هناخ هظ فاح هتشون دوش يم
Bank1 STATUSRP0 BSF
W0xFF 0xFF MOVLW
Port A is set as input TRISA MOVWF
سرداﺮﻓ
FaraDars.org
slide 103: یدربراک کینورتاکم ۱
faradars.org/fvmec105
103
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– یاه شور يه د سردآ
.3 ش ور سردآ يه د ريغ ميقتسم
هد افتسا زا رتس يجر تروص ب رگ هراش ا Pointer
ه ک يماگنه کي رتس يجر نا ونع هب رگ ه راشا يفرع م ،دوش يم یاو تح م نآ زا رظ ن CPU نا ونع ه ب سردآ رد رظن هتفرگ دوش يم و هن
هد ا د .
یارب س ردآ يهد ه ناخ یا ه RAM ، زا ود تا بث SFR اب یاهمان FSR س ردآ 04h زا ه ظ ف اح RAM و INDF س ردآ 00h زا
هظ فاح RAM هد افتسا يم دوش
اب هد افتسا زا تابث INDF يم نا وت هب تايو تح م يناکم هک FSR هب نآ هراش ا دنک يم تسد تفاي
سرداﺮﻓ
FaraDars.org
slide 104: یدربراک کینورتاکم ۱
faradars.org/fvmec105
104
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– یاه شور يه د سردآ
.3 ش ور سردآ يه د ريغ ميقتسم
نا ونع ب ل اثم رگا رد سردآ 0Fh زا هظ فاح RAM ددع 20 هري خ ذ هدش دشاب
هب نيا بيترت رتس يجر FSR یرگ هراش ا ده ا وخ دوب هک هب سردآ 0Fh هراش ا دنک يم
اب نيا روتسد رادقم 20 رد تابث W رارق ده ا وخ تفرگ
W0x0F 0x0F MOVLW
FSR0x0F FSR MOVWF
W20 value of register at address 0Fh INDF 0 Movf
سرداﺮﻓ
FaraDars.org
slide 105: یدربراک کینورتاکم ۱
faradars.org/fvmec105
105
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– یاه شور يه د سردآ
.3 ش ور سردآ يه د ريغ ميقتسم
همانرب يس ي ون ايو پ
MOVLW 0x0C W0x0C starting address
MOVWF FSR FSR 0x0C starting address
BCF STATUS0 carry flag0
Loop CLRF INDF indf0
INCF FSR next address
MOVLW 228 W228
ADDWF FSR0 W228+FSR
BTFSS STATUS0 test for end of block: if W256 then carry flag1
GOTO Loop do again
سرداﺮﻓ
FaraDars.org
slide 106: یدربراک کینورتاکم ۱
faradars.org/fvmec105
106
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– یاه شور يه د سردآ
.4 ش ور سردآ يه د يبسن
رد یرايسب زا اه درب راک زاين هب کي ل ودج هد ا د دشاب يم هک لب اق رييغت دشاب و اب عطق قرب زا نيب دورن
زا هنومن نيا اه درب راک نا وت يم هب یاه قودنصواگ ل اتيجي د ، نکزابرد یاه را دزمر و یاهمتسيس 7-segment هراش ا درک
سردآ يه د يبس ن زا قي رط رييغت را دقم PC ماجنا دوش يم
نيا لم ع ت روص ب کي ش رپ زا يياج هک هدن رامش هما نرب رارق درا د هب يياه س ردآ هک تبسن هب ناکم يلع ف PC هبساحم د ن ا ه دش ،
ماجنا دوش يم
،لاثم ف ده نآ تسا هک کي ددع ط س وت یدورو رلرتنکورکيم تفاي رد دوش و هجيتن ط س وت تروپ B نا ونع ب ي ج ورخ یور 7-
segment شيامن هد ا د دوش
سرداﺮﻓ
FaraDars.org
slide 107: یدربراک کینورتاکم ۱
faradars.org/fvmec105
107
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– یاه شور يه د سردآ
.4 ش ور سردآ يه د يبسن
دوش هتشون تروپ يور دياب هک يددع
7-segment LED
ددع
زگه تروص هب يرنياب تروص هب
g f e d c b a
3F
00111111 0 1 1 1 1 1 1 0
06
00000110 0 0 0 0 1 1 0 1
5B
01011011 1 0 1 1 0 1 1 2
4F
01001111 1 0 0 1 1 1 1 3
66
01100110 1 1 0 0 1 1 0 4
6D
01101101 1 1 0 1 1 0 1 5
7D
01111101 1 1 1 1 1 0 1 6
07
00000111 0 0 0 0 1 1 1 7
7F
01111111 1 1 1 1 1 1 1 8
6F
01101111 1 1 0 1 1 1 1 9
سرداﺮﻓ
FaraDars.org
slide 108: یدربراک کینورتاکم ۱
faradars.org/fvmec105
108
define a constant named pco equal to PCL ram address 0x02 EQU pco
Select Bank1 STATUS5 BSF
W0x00 0x00 MOVLW
Portb is set as output TRISB MOVWF
W0xFF 0xFF MOVLW
Porta is set as input TRISA MOVWF
Select Bank0 STATUS5 BCF
W Input on porta Porta0 MOVF repeat
call sub Segments CALL
display results Portb MOVWF
Repeat GOTO
pcopco+W the address of this line is y pco1 ADDWF Segments
display code of 0 the address of this line is y+1 0x3f RETLW
display code of 1 the address of this line is y+2 0x06 RETLW
display code of 2 the address of this line is y+3 0x5B RETLW
display code of 3 the address of this line is y+4 0x4f RETLW
display code of 4 the address of this line is y+5 0x66 RETLW
display code of 5 the address of this line is y+6 0x6d RETLW
display code of 6 the address of this line is y+7 0x7d RETLW
display code of 7 the address of this line is y+8 0x07 RETLW
display code of 8 the address of this line is y+9 0x7f RETLW
display code of 9 the address of this line is y+10 0x6f RETLW
سرداﺮﻓ
FaraDars.org
slide 109: یدربراک کینورتاکم ۱
faradars.org/fvmec105
109
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– دنچ ل اثم یدرب راک
1 . ه مانرب یا ديسي ونب هک سپ زا ی ا رج ا ،ه مانرب ود دوي د یور هياپ یاه RB0 و RB1 ار ن امزم ه نشور د نک و نانچمه ي قا ب
دنامب
portb setting demo
Processor 16f84 defining the processor
0x00 Org
select bank1 0x035 BSF
W0x00 0x00 MOVLW
TRISB addr. 0x86W0b00000000
set pins of portb output
0x86 MOVWF
select bank0 0x035 BCF
w 0b00000011 0b00000011 MOVLW
PORTB addr. 0x060b00000011 0x06 MOVWF
endless loop Circle GOTO Circle:
End
سرداﺮﻓ
FaraDars.org
slide 110: یدربراک کینورتاکم ۱
faradars.org/fvmec105
110
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– دنچ ل اثم یدرب راک
2 . یا هما نرب ديسي ونب هک یاه تيب 0 ، 1 و 2 زا ترو پ A و 0 ، 1 ، 4 و 6 زا تروپ B ار هب تروص ي ج ورخ و هيقب اه هياپ ار
تروص ب یدورو في رعت دنک .
Processor 16f84 defining the processor
0x00 Org
select bank1 0x035 Bsf
W0xf8b1111 1000 0xf8 Movlw
TRISA addr. 0x85Wb1111 1000
set pins 012 of porta outputothers input
0x85 Movwf
0xAC to w 0xAC Movlw
TRISB addr. 0x86Wb1010 1100
set pins 0146 of portb inputothers output
0x86 Movwf
endless loop Circle Goto Circle:
End
سرداﺮﻓ
FaraDars.org
slide 111: یدربراک کینورتاکم ۱
faradars.org/fvmec105
111
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– دنچ ل اثم یدرب راک
3 . یا هما نرب ديسي ونب هک هياپ یاه تروپ B ار تروص ب يجو رخ في رعت دنک و س پس هياپ یا ه RB1 و RB2 ار ن شو ر و ر ي ا س
اه هياپ ار شوماخ دنک .
نيا همانرب دننامه همانرب لبق تسا اب نيا توافت هک دي اب رد تروپ B ددع هتشو ن دوش
رد یادتب ا همانرب بس چ رب يي اه هب س ردآ اه تابث بسانتم اب مان اهن آ صا ص تخ ا هد ا د هدش تسا و رد هماد ا همانرب زا ن ي ا
اه بسچ رب هد افتسا يم دوش .
سرداﺮﻓ
FaraDars.org
slide 112: یدربراک کینورتاکم ۱
faradars.org/fvmec105
112
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– دنچ ل اثم یدرب راک
portb demo
processor 16f84 defining the processor
5 Equ Constant
0x06 Equ Portb
0x86 Equ Trisb
0x03 Equ Status
0x00 Org
select bank1 statusconstant BSF
W0x00 0x00 MOVLW
Trisbw setting portb as output Trisb MOVWF
select bank0 status5 BCF
W 0x60b0000 0110 0x06 MOVLW
portbW Portb MOVWF
putting micro in an endless loop Loop GOTO loop
End
سرداﺮﻓ
FaraDars.org
slide 113: یدربراک کینورتاکم ۱
faradars.org/fvmec105
113
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– دنچ ل اثم یدرب راک
4 . هما نرب یا ديسي ونب هک ناکم یاه هظ ف اح RAM زا س ردآ 0Ch ات 15h ار اب رادقم 120 لاميسد و زا س ردآ 2Fh ات 38h ار اب
را دقم یرني اب 01011101 ، را دقم يه د دنک .
Processor 16f84
indf Equ 0x00
fsr Equ 0x04
status Equ 0X03
Org 0x00
BCF status0 carry flag0
MOVLW 0x0c W 0x0c
MOVWF Fsr FSRW 0x0c set start point 1 for data block
Load1 MOVLW 120 W120
سرداﺮﻓ
FaraDars.org
slide 114: یدربراک کینورتاکم ۱
faradars.org/fvmec105
114
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– دنچ ل اثم یدرب راک
MOVWF indf load to address
INCF fsr1 next address
MOVLW 234 W234
ADDWF fsrw check the end address
BTFSS status0 If it is the end address carry flag is set
GOTO Load1 continue
BCF status0 carry flag0
MOVLW 0x2f W0x2f
MOVWF Fsr set start point2
load2 MOVLW b01011101 W93
سرداﺮﻓ
FaraDars.org
slide 115: یدربراک کینورتاکم ۱
faradars.org/fvmec105
115
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– دنچ ل اثم یدرب راک
MOVWF indf load to address
INCF fsr 1 next address
MOVLW 199 W199
ADDWF fsrw check the end address
BTFSS status0 If it is the end address carry flag is set
GOTO load2 continue
END
سرداﺮﻓ
FaraDars.org
slide 116: یدربراک کینورتاکم ۱
faradars.org/fvmec105
116
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– دنچ ل اثم یدرب راک
5 . هما نرب یا ديسي ونب هک ود ددع 35 و 6 ار رد مه برض دنک .
نيا همانرب اب هد افتسا زا عمج یاه يلاوتم هتشو ن دوش يم
هب نيا بيترت هک ي کي زا ا ه د دع ًلو م عم نيرتکچو ک د دع هب نا ونع هد نرامش رد رظن هتفر گ هدش و ددع ر گيد هب عت دا د د دع ل وا
اب شدوخ عمج دوش يم
635 demo
16f84 processor
0x0c Equ N
W6
N W
W0
WW+ 35
NN-1 if N is zero skip the next line
do again
6
N
0x00
35
N1
loop
movlw
movwf
movlw
addlw
decfsz
goto
end
Start
loop
سرداﺮﻓ
FaraDars.org
slide 117: یدربراک کینورتاکم ۱
faradars.org/fvmec105
117
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– دنچ ل اثم یدرب راک
6 . یا هما نرب ديسي ونب هک ود ددع 24 و 80 ار رد مه برض دنک .
رد همانرب يلبق برض لصاح 6 × 35 را دقم 210 دوب هک رتم ک زا 255 تسا و رد کي هناخ رتس يجر کي تياب یاج تفرگ يم
دعب زا ره لمع عمج مچ ر پ يلقن ل رتنک دوش يم ات رگا 1 دشاب ناش ن هد ن ه د زي ر رس زا رتس يجر ، کي دح ا و هب تابث ب سچر ب
هد ز هدش اب مان msb هد وزفا دوش
س پس مچ رپ يلقن ک اپ هدش ات یارب رارکت یدعب هقلح هد امآ دشاب
سرداﺮﻓ
FaraDars.org
slide 118: یدربراک کینورتاکم ۱
faradars.org/fvmec105
118
موس لصف : رلرتنکورکیم PIC
2480 demo
16f84 processor
0x0c
0x0d
0x0e
0x03
Equ
equ
equ
equ
N
main
msb
status
carry flag0
W 24
NW
W0
WW+ 80
If carry0 skip the next line
msb msb+1 if carry flag is set
carry flag0
NN-1 skip the next line if N0
do again
0x00
Status0
24
N
0x00
80
Status0
msb
Status0
N1
Loop
org
bcf
movlw
movwf
movlw
addlw
btfsc
incf
bcf
decfsz
goto
end
Start
loop
سرداﺮﻓ
FaraDars.org
slide 119: یدربراک کینورتاکم ۱
faradars.org/fvmec105
119
موس لصف : رلرتنکورکیم PIC
• همانرب یسيون یلبمسا
– دنچ ل اثم یدرب راک
7 . یا هما نرب ديسي ونب هک یاوتح م ود تابث رد یاهسردآ 0x2f و 0x3f ار رد مه برض دنک .
nm demo
16f84 processor
0x2f
0x3f
0x0e
0x03
equ
equ
equ
equ
num_n
num_m
main
carry
سرداﺮﻓ
FaraDars.org
slide 120: یدربراک کینورتاکم ۱
faradars.org/fvmec105
120
0x00
0x00
main
carry
num_n1
status2
circle
num_m1
status2
circle
status0
0x00
num_m0
status0
carry
status0
num_n1
loop
main
circle
org
movlw
movwf
movwf
movf
btfsc
goto
movf
btdsc
goto
bcf
movlw
addwf
btfsc
incf
bcf
decfsz
goto
movwf
goto
end
start
Loop
circle
W0
main part of product 0
carry part of product 0
test if num_n zero
check z flag
num_n is zero
test if num_m zero
check z flag
num_m is zero
carry flag 0
W 0
W num_m + W
test carry flag
if carry flag 1 then increase carry part
carry flag 0
num_n num_n - 1
do again
main W
endless loop
سرداﺮﻓ
FaraDars.org
slide 121: یدربراک کینورتاکم ۱
faradars.org/fvmec105
121
• همانرب یسيون یلبمسا
– دنچ ل اثم یدرب راک
8 . یا هما نرب ديسي ونب هک ددع 90 ار رب 14 ميسقت دنک .
یارب ماجنا لمع ميس قت زا یاه قي رفت يلاوتم هد افتسا دوش يم
ددع رتکچ وک زا ددع رتگر زب ردقنآ مک دوش يم هک رگيد نا وتن نيا راک ار ماجنا دا د . يترابعب ل ص اح قي رفت ، زا ددع ک رتکچ و
رتم ک دوش .
رد نيا هما نرب هدن ام يقاب رد س ردآ 0Ch و جراخ تم سق رد س ردآ 0Dh رارق دنه ا وخ تفرگ .
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 122: یدربراک کینورتاکم ۱
faradars.org/fvmec105
122
90/14 demo
16f84 processor
0x0c
0x0d
0x03
Equ
equ
equ
quo
rem
status
clear quo
W 90
Rem90
W14
quoquo+1
RemRem-W
if carry flag 0 skip the next line
do again
remrem+W
quoquo-1
0x00
0x00
quo
90
rem
14
quo1
Rem1
status0
loop
rem1
quo1
Org
movlw
movwf
movlw
movwf
movlw
incf
subwf
btfsc
goto
addwf
decf
end
loop
سرداﺮﻓ
FaraDars.org
slide 123: یدربراک کینورتاکم ۱
faradars.org/fvmec105
123
• همانرب یسيون یلبمسا
– داج ي ا هقلح ريخ ات و هبساح م تدم نامز ريخ ات
– کي لکيس یرا ک رد رلر تنکورکيم 16F84 راهچ ربا رب دوي رپ ناس ون زاس تسا
– یارب هبساح م ريخ ات ، لکيس یراک لک همانرب ار دي اب رد نامز کي لکيس یراک برض دومن :
موس لصف : رلرتنکورکیم PIC
×
4
سرداﺮﻓ
FaraDars.org
slide 124: یدربراک کینورتاکم ۱
faradars.org/fvmec105
124
• همانرب یسيون یلبمسا
– داج ي ا هقلح ريخ ات و هبساح م تدم نامز ريخ ات
– ،لاثم
موس لصف : رلرتنکورکیم PIC
W N machine cycle 1 N movlw delay
delW machine cycle 1 del movwf
deldel-1 machine cycle 1 or 2 del1 decfez loop
repeat machine cycle 2 loop goto
ret from subroutine machine cycle 2 return
1 + 1 + − 1 × 1 + 2 + − 1 × 2 + 2 3 + 3
سرداﺮﻓ
FaraDars.org
slide 125: یدربراک کینورتاکم ۱
faradars.org/fvmec105
125
• همانرب یسيون یلبمسا
– داج ي ا هقلح ريخ ات و هبساح م تدم نامز ريخ ات
– ،لاثم کي غا رچ ي ي ام نه ا ر لماش کي دوي د ،زبس کي دوي د ،زمرق و ود د وي د درز يم دشاب . هما نرب یا ديس ي ونب ات با ا دت د وي د
یرون ،زبس د عب زا ريخ ا ت دوي د ،زمرق و س پ س ود دوي د درز نشو ر و رد ر خ آ دوي د درز ل وا ش وماخ و دوي د درز مود ن ش ور
دوش . هياپ یاه RB0 ات RB3 هب بيترت هب LED یاه ،زبس ،درز درز و زمرق لصتم دنتس ه .
موس لصف : رلرتنکورکیم PIC
Org 0
Bsf 0x035 select bank1
Movlw 0x00
Movwf 0x86 set port B as output
Bcf 0x035 select bank0
LOOP Movlw 0x01 w 0b00000001
Movwf 0x06 turn on green LED
BCF 0x032 zero flag 0
Movlw 0xFF number of loops to make delays
Movlw 0x0C Address 0x0C 0xFF
سرداﺮﻓ
FaraDars.org
slide 126: یدربراک کینورتاکم ۱
faradars.org/fvmec105
126
• همانرب یسيون یلبمسا
– داج ي ا هقلح ريخ ات و هبساح م تدم نامز ريخ ات
موس لصف : رلرتنکورکیم PIC
DELAY1 DECFSZ 0x0C1 register0x0C register0x0C - 1
GOTO DELAY1 check zero flag
Movlw 0x08 w 0b00001000
Movwf 0x06 turn on red LED
BCF 0x032
Movlw 0xFF
Movlw 0x0C
DELAY2 DECFSZ 0x0C1
GOTO DELAY2
Movlw 0x06 w0x06 0b00000110
Movwf 0x06 turn on yellow LEDs
BCF 0x032
Movlw 0xFF
Movlw 0x0C
سرداﺮﻓ
FaraDars.org
slide 127: یدربراک کینورتاکم ۱
faradars.org/fvmec105
127
• همانرب یسيون یلبمسا
– داج ي ا هقلح ريخ ات و هبساح م تدم نامز ريخ ات
موس لصف : رلرتنکورکیم PIC
DELAY3 DECFSZ 0x0C1
GOTO DELAY3
Movlw 0x02 w 0b00000010
Movwf 0x06
BCF 0x032
Movlw 0xFF
Movlw 0x0C
DELAY4 DECFSZ 0x0C1
GOTO DELAY4
GOTO LOOP repeat the program
END
سرداﺮﻓ
FaraDars.org
slide 128: یدربراک کینورتاکم ۱
faradars.org/fvmec105
128
• همانرب یسيون یلبمسا
– هقلح یاه ريخ ات ينلوط رت هد افتسا زا هقلح یاه وت رد وت
– یارب داجي ا ريخ ات رتشيب دياب زا یاه ريخ ات دنچ یا هقلح هد افتسا دومن .
موس لصف : رلرتنکورکیم PIC
mc machine cycle 2 delay call
delay
mc 1 M movlw
mc 1 Cnt1 movwf
mc 1 N movlw lout
mc 1 Cnt2 movwf
mc 1.2 Cnt2 decfsz lin
mc 2 Lin Goto
mc 1.2 Cnt1 Decfsz
mc 2 lout Goto
mc 2 return
سرداﺮﻓ
FaraDars.org
slide 129: یدربراک کینورتاکم ۱
faradars.org/fvmec105
129
• همانرب یسيون یلبمسا
– هقلح یاه ريخ ات ينلوط رت هد افتسا زا هقلح یاه وت رد وت
– هبساحم لکيس یرا ک لک هما نرب
– هقلح يلخاد همانرب تروص ب ري ز تسا :
موس لصف : رلرتنکورکیم PIC
mc 1.2 Cnt2 decfsz lin
mc 2 lin goto
− 1 × 1 + 2 + − 1 × 2 3 − 1
سرداﺮﻓ
FaraDars.org
slide 130: یدربراک کینورتاکم ۱
faradars.org/fvmec105
130
• همانرب یسيون یلبمسا
– هقلح یاه ريخ ات ينلوط رت هد افتسا زا هقلح یاه وت رد وت
– هبساحم لکيس یرا ک لک هما نرب
– هقلح يج راخ تروص ب ري ز تسا :
موس لصف : رلرتنکورکیم PIC
mc 1 N movlw lout
mc 1 Cnt2 movwf
mc 1.2 Cnt2 Decfsz lin
mc 2 lin goto
mc 1.2 Cnt1 Decfsz
mc 2 Lout goto
+ + × 3 − 1 + − 1 × 1 + 2 + − 1 × 2 3 + 4 + 1
سرداﺮﻓ
FaraDars.org
slide 131: یدربراک کینورتاکم ۱
faradars.org/fvmec105
131
• همانرب یسيون یلبمسا
– هقلح یاه ريخ ات ينلوط رت هد افتسا زا هقلح یاه وت رد وت
– هبساحم لکيس یرا ک لک هما نرب
– رد تياه ن لکيس یراک لک متس يس ربا رب تسا اب :
موس لصف : رلرتنکورکیم PIC
2 + 1 + 1 + 3 + 4 + 1 + 2 3 + 4 + 7
سرداﺮﻓ
FaraDars.org
slide 132: یدربراک کینورتاکم ۱
faradars.org/fvmec105
132
• اهورکام و لاورريز اه
– یا هتشر زا لمعلاروتس د اه دوجو دنرا د هک رد ره همانرب یا را رکت يم دنو ش
– لا ورريز اه و اه ورکام رارکت يپ رد يپ تاروتس د ار زا نيب يم دنرب و ثعا ب هريخذ یاض ف یدايز زا هظ فاح يم دنوش
– اه ورک ام
– کي ورک ام هعوم جم یا زا تا روتس د تسا هک ط س وت همانرب س ي ون هتشو ن يم دوش و رد کي لي اف اب دنو سپ inc هري خ ذ يم دنک
– رد ره تم سق زا همانرب هک زاين دشاب مان ورک ام ا دص يم دوش
موس لصف : رلرتنکورکیم PIC
Macro - name Macro par1 par2..
Set of instructions
Set of instructions
Endm
سرداﺮﻓ
FaraDars.org
slide 133: یدربراک کینورتاکم ۱
faradars.org/fvmec105
133
• اهورکام و لاورريز اه
– اه ورک ام
– رگا رد هما نرب یا زا ورکام هد افتسا ،دوش دياب لبق زا ا دص ،ندز نآ ار في رعت درک
– هب نا ونع ل اثم یورکام ري ز اب مان bank0 هفيظو ل اعف ند رک کن اب رفص ار رب هده ع درا د :
– نيا اه ورک ام ار دي اب رد کي لي اف ينت م اب دنو سپ inc و مان bank رد يلحم هک مرن را زفا MPLAB بص ن هدش تسا رد
یا هشوپ مانب MCHIP-TOOLS هري خ ذ درک
موس لصف : رلرتنکورکیم PIC
Bank0 macro Macro bank0
Bcf STATUS.5
Reset RPObit
endm End of macro
سرداﺮﻓ
FaraDars.org
slide 134: یدربراک کینورتاکم ۱
faradars.org/fvmec105
134
• اهورکام و لاورريز اه
– اه ورک ام
– یارب هک ني ا یزا ين هب نت شون ا ه ترا بع ی یا دتبا هما نرب دشابن زا يکي زا یا هل ي اف inc اب ما ن p16f84 هک زا لبق هتش ون ه د ش
تسا نا وت يم هد افتسا درک .
– یارب هد افتسا زا نيا لي اف و با نتجا زا نتشو ن تا روتس د ي فاضا رد ه مانرب دي اب زا روتس د include "p16f84" دعب زا
روتس د processor هد افتسا درک
– نينچم ه دياب رطاخب تشا د هک نوچ رد نيا ل ي اف ترا بع يياه نوچ STATUS اب فو رح گرزب هت ش ون هدش ،ت سا م اگ نه
هد افتسا زا اهن آ رد نتم ،هما نرب زين دي اب زا ف ورح گ رزب هد افتسا دومن .
– ا هد افتس زا اه ورک ام همانرب ار ف اط عن ا ري ذپ و رتانا وخ دنک يم يلو لکش م اهن آ یا هظ فاح تسا هک ل اغش ا دننک يم
– اب نتشو ن ورک ام رد ،هما نرب روتس د اي يتارو تس د هک رد ورک ام دوجو ،دنرا د رد همانرب را رق هتفرگ و يي اض ف زا فا ح هظ همانرب ار
ل اغش ا دننک يم
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 135: یدربراک کینورتاکم ۱
faradars.org/fvmec105
135
• اهورکام و لاورريز اه
– اه ورک ام
– ،لاثم یا ه مانرب ديسي ونب هک رد نآ تيعض و ديلک لص ت م هب هياپ رفص تروپ A ار رد LED لص تم هب ی ه ي ا پ رفص ت ر و پ B
ناش ن ده د اب ل اص تا ديلک LED نشو ر و اب نآ شوماخ دوش .
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 136: یدربراک کینورتاکم ۱
faradars.org/fvmec105
136
• اهورکام و لاورريز اه
– اه ورک ام
– ،باوج ی ا رب نتشون هما نرب مزل تسا ا دتبا ود یورکام Ifbit و Ifnotbit رد کي لي اف تحت ما ن microe184.inc
رد Notepad اي ره رگشي ا ري و ينتم رگيد پيات دوش و رد هشوپ MCHIP_Tools هري خ ذ يم دوش
موس لصف : رلرتنکورکیم PIC
par1par2par3 Macro Ifbit
Par1par2 Btfsc
Par3 Goto
Endm
par1par2par3 Macro Ifnotbit
Par1par2 Btfss
Par3 Goto
Endm
سرداﺮﻓ
FaraDars.org
slide 137: یدربراک کینورتاکم ۱
faradars.org/fvmec105
137
• اهورکام و لاورريز اه
– اه ورک ام
– ،باوج
موس لصف : رلرتنکورکیم PIC
16f84 processor
include"p16f84.inc"
Starting point 0x00 Org
Select bank1 STATUSRP0 Bsf
Set 0 pin input TRISA0 Bsf
Set0 pin output TRISB0 Bcf
Select bank0 STATUSRP0 Bcf
سرداﺮﻓ
FaraDars.org
slide 138: یدربراک کینورتاکم ۱
faradars.org/fvmec105
138
• اهورکام و لاورريز اه
– اه ورک ام
– ،باوج
موس لصف : رلرتنکورکیم PIC
include the macro file include "microel84.inc"
a label Main
If RA00 swich on led PROTA0ledoff Ifbit
If RA01 siwch off led PORTA0ledon ifnotbit
Repeat all Main Goto
a label Ledon
Turn on led on RB0 PROTB0 Bsf
Main Goto
a label Ledoff
Turn off led on RB0 PORTB0 Bcf
Main Goto
END
سرداﺮﻓ
FaraDars.org
slide 139: یدربراک کینورتاکم ۱
faradars.org/fvmec105
139
• اهورکام و لاورريز اه
– اه ل ا ورري ز
– ل ا ورر ي ز اه ه عوم جم یا زا تاروتس د دنتسه هک اب کي بسچ رب عورش دنوش يم و اب يکي زا تاروتس د return و اي retlw
ناي اپ دنباي يم
– ل ا ورر ي ز اه ف لخر ب ورک ام اهنت رد کي ناکم زا ه ظفاح همانرب را رق يم دنريگ و ره عقو م رد ل وط یار ج ا همانرب ي نا وخارف
،دنوش همانرب يلصا رد لح م ند زا دص ري ز ل ا ور فق وتم يم دوش و تا را وتس د دوجوم رد ل ا ورري ز ا رج ا ده ا وخ دش
– Lable
– Setofinstructions
– Returnorretlw
– رد اهلا ورري ز يم ن نا وت ريغتم في رعت درک و ل ا ورري ز اه زا یاه ريغتم همانرب يلصا هد افتسا يم دننک
– نينچمه ل ا ورري ز ره هم انرب ص تخ م هب نامه ه مانرب تسا و نا وت يم ن اب نتشو ن نآ رد کي لي اف ،هنا گا دج رد ري اس ب اه همانر
هد افتسا درک .
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 140: یدربراک کینورتاکم ۱
faradars.org/fvmec105
140
• هفقو و راک اب نآ
– هفقو يمزيناکم یا رب يي وگ خس اپ هب ط ي ا رش صاخ و يثدا وح تسا هک رد نآ درکلمع یداع رلرتنکورکيم دي اب م فق وت د وش و
هب ط ي ا رش صا خ يگديس ر دوش
– هفقو رد تقيقح يتم سق زا همانرب ،تسا هک رد ماگ نه زاين ، تيو لوا یارجا نآ زا ري اس یاهتمسق همانرب رتلاب اب دش
– دعب زا یا رج ا ل ا ورري ز هفقو یارجا ی همانرب يلصا زا يي اج هک کرت هدش دوب زا رس هتفرگ يم دوش
– هفقو رد PIC16F84 هب للع ري ز قافتا دتفا يم :
.1 ما م تا نتشون هد ا د رد EEPROM هفقو يلخ ا د
.2 رس زي ر ندش رم ي ات TMRO هفقو يلخاد
.3 رييغت رد هياپ یاه RB6 RB5 RB4 و RB7 زا تروپ B هياپ یاه 10 ات 13 رلرتنکورکيم
.4 هفقو يج راخ زا قي رط رييغت حطس ژاتلو رد هياپ هرامش 6 رلرتنکورکيم RB0/INT
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 141: یدربراک کینورتاکم ۱
faradars.org/fvmec105
141
• هفقو و راک اب نآ
– هب ره کي زا عب انم هفقو ود تيب صا ص تخا هد ا د هدش تسا : کي تيب یارب ل اعف یزاس هفقو و کي تيب یارب شت ص يخ
عو قو هفقو
– نيا تيب اه رد یاهتابث INTCON و EECON1 را رق دنرا د
– دعب زا کي ندش تيب طوبر م اب ،هفقو دي اب نيا تي ب رد همانرب هب هليس و ی همانرب س ي ون کا پ دوش ات نا وتب زا نآ ی ا رب
ص يخ شت ري اس هفقو يي اه زا نيا عو ن هد افتسا درک .
– تيب مهم اب ما ن GIE دوجو درا د هک ما م ت هفقو اه ار اب مه لاع ف اي ريغ لاع ف يم دنک و تيب یزا س لاع ف يلصا ما ن درا د
– اب ل اعف ندش ره هفقو تيب GIE رفص يم دوش و یارب هکنيا هفقو یاه یدعب ل اعف دوش دي اب GIE ار هراب ود کي درک .
– یارب ه کنآ ل ا ورري ز هفقو رد ما گنه ع وقو هفقو ل ا عف ،دوش دي اب ًام تح هل يس وب روتس د org رد سردآ 0x04 زا هظ ف اح همانرب
ا دص هد ز دوش
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 142: یدربراک کینورتاکم ۱
faradars.org/fvmec105
142
• هفقو و راک اب نآ
– رد نيح یارجا هفقو نکم م تسا یاو تح م يض عب زا اه تابث نو چمه W ، STATUS و اي ري اس اه رتس يجر رييغت دنک
– هب نيم ه ليلد یاوتح م نيا اهتابث دياب رد یادتبا لا وري ز هفقو رد يياج هريخذ دوش ردو یاهتنا لا ورريز هفقو اب يباي ز ددرگ
– نيا ود راک PUSH و POP مان درا د
– یارب ماجنا لح ا رم ،قوف ا دتب ا ت ابث w هري خ ذ هدش و س پس status هري خ ذ دوش يم ، ن وچ رد هري خ ذ تابث status زا دوخ
تابث w زين هد افتسا دوش يم
– م اگ نه ل م ع يباي زاب ، ا دتبا رياس ا ه تابث يباي زاب هد ش و اتياهن ت ابث w ي باي زاب دوش يم . ن وچ زاب رد لم ع يباي زاب زا د وخ w
هد افتسا دوش يم .
– هيصوت يم دوش هک یارب تشگ رب زا ري ز ل ا و ر هئا ر ا ،هفقو زا روتس د RETFIE هد افتسا ،دوش ا رچ هک اهنت یروتس د تسا هک
ثعاب يم دوش هراب ود GIE تس دوش و هفقو یاه یدعب زين ی هراجا یرارق رب دنباي
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 143: یدربراک کینورتاکم ۱
faradars.org/fvmec105
143
• هفقو و راک اب نآ
– ،لاثم همانرب یا ديسي ونب هک اب س ل ا پ ل ام عا هدش هب هياپ RB0 ، قي رطزا یزاس ل اعف ،هفقو LED ل ص تم هب هياپ RB7 ار رد
تل اح کمشچ نز نشو ر دنک .
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 144: یدربراک کینورتاکم ۱
faradars.org/fvmec105
144
• هفقو و راک اب نآ
– ،باو ج
موس لصف : رلرتنکورکیم PIC
Processor 16f84
include " p16f84 . inc" microchips inc file
Org 0x00
Goto Main jump over intrupt program line
Org 0x04 put the following command in the intruppt
address 04h
Goto Isr call interrupt servise routineisr
Include"bank.inc" bank select macro
سرداﺮﻓ
FaraDars.org
slide 145: یدربراک کینورتاکم ۱
faradars.org/fvmec105
145
Main bank1 call bank macro to select bank1
Movlw 0b00000001 W1b
Movwf TRISB set RB0 as input and others as
output
Bcf OPTION-REG6 active intrupt on falling edge
Bcf OPTION-REG7 set internal pull-up resistore off
Bank0 call bank macro to select bank0
Clrf PORTB clear portb
Bsf PORTB7 LED on
Bsf INTCONINTE enable interrupt on RB0
Bsf INTCONGIE enable all interrupts
Loop goto Loop stay in the loop until an interrupt
occur
----------------------------- Interrupt service routine---------------------------
-----
Isr Bcf INTCONINTE clear INTF to distinguish later
intrupts
Bcf PORTB7 LED off
Bsf PORTB7 LED on
Retfie
سرداﺮﻓ
FaraDars.org
slide 146: یدربراک کینورتاکم ۱
faradars.org/fvmec105
146
• هفقو و راک اب نآ
– یا همانرب ديس ي ونب هک اب راشف ره کي زا اه ديلک لصتم هب هياپ یاه RB4 ات RB7 رد ،رادم ل ا ورر ي ز هفقو ار ل اعف دنک و
یا هياپ ار هک بج وم هفقو هدش تسا ار اب شوماخ ند رک LED ريظن هياپ یا ه RB0 ات RB3 ص خشم دنک . ن ي ا ع و ن زا
هفقو رد يياه متسيس هد افتسا دوش يم هک اب یر طا ب راک د ننک يم و یژرنا يف رص م رما يمه م تسا . ات نامز ندم آ و ، هفق
رلرتنکورکيم رد ف رص م نا وت نيياپ دم با وخ اب روتس د SLEEP را رق هد ا د دوش يم .
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 147: یدربراک کینورتاکم ۱
faradars.org/fvmec105
147
• هفقو و راک اب نآ
– ،باو ج
موس لصف : رلرتنکورکیم PIC
Processor 16f84
include " p16f84 . inc" microchips inc file
Org 0x00
Goto Main
Org 0x04
Goto Isr interrupt service rotine
Include"bank.inc" bank select macro
سرداﺮﻓ
FaraDars.org
slide 148: یدربراک کینورتاکم ۱
faradars.org/fvmec105
148
Main bank1 select bank1
Movlw 0xf0 set input/output pins
Movwf TRISB
Bank0 select bank0
Movlw 0xff leds on
Movwf PORTB
Bsf INTCON3 RBIE1
Bsf INTCON7 GIE1
Loop goto Loop stay in the loop till interrupt
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 149: یدربراک کینورتاکم ۱
faradars.org/fvmec105
149
Isr bcf INTCON0 clear RBIF
Btfss PORTB7 determining witch button has pressed
Goto led0
Btfss PORTB6
Goto led1
Btfss PORTB5
Goto led2
Btfss PORTB4
Goto led3
Led0 Bcf PORTB0 led0 off
Retfie
Led1 Bcf PORTB1 led1 off
Retfie
Led2 Bcf PORTB2 led1 off
Retfie
Led3 Bcf PORTB3 led1 off
Retfie
END
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 150: یدربراک کینورتاکم ۱
faradars.org/fvmec105
150
• هفقو و راک اب نآ
– ،لاثم اب هد افتسا زا هفقو یا همانرب ديسي ونب هک اب ره راب ند رشف ه م کد کي ددع هب رگشي ام ن هفا ضا ددرگ . رد نيا ل ا ثم
یدورو هم کد هب هياپ INT اي هفقو لصو هدش تسا هياپ 6 .
موس لصف : رلرتنکورکیم PIC
define constants
02 EQU PC
03 EQU STATUS
86 EQU BDIR
06 EQU PORTB
0C EQU CNTR
0D EQU STORE
0B EQU INTCON
jump to SRART START GOTO
interrupt address 04 ORG
INTF 0 INTCON1 BCF
CNTR CNTR + 1 CNTR1 INCF
return from interrupt subroutine RETFIE
سرداﺮﻓ
FaraDars.org
slide 151: یدربراک کینورتاکم ۱
faradars.org/fvmec105
151
clear CNTR CNTR CLRF START
W 90 90 MOVLW
INTCON W INTCON MOVWF
select BANK 1 STATUS5 BSF
01 MOVLW
portB as output BDIR MOVWF
select BANK 0 STATUS5 BCF
W CNTR CNTR0 MOVF LOOP
W W AND 0F to mask 4 msb bits 0F ANDLW
jump to TABLR TABLE CALL
F W STORE MOVWF
W left rotate of STORE STORE0 RLF
portB W PORTB MOVWF
LOOP GOTO
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 152: یدربراک کینورتاکم ۱
faradars.org/fvmec105
152
موس لصف : رلرتنکورکیم PIC
PC PC + W PC1 ADDWF TABLE
show 0 3F RETLW
show 1 06 RETLW
show 2
5B RETLW
show 3 4F RETLW
show 4 66 RETLW
show 5 6D RETLW
show 6 7D RETLW
show 7 07 RETLW
show 8 7F RETLW
show 9 6F RETLW
show A 77 RETLW
show B 7C RETLW
show C 39 RETLW
show D 5E RETLW
show E 79 RETLW
show F 71 RETLW
END
سرداﺮﻓ
FaraDars.org
slide 153: یدربراک کینورتاکم ۱
faradars.org/fvmec105
153
• لاقتنا همانرب هب رلرتنکورکیم و لاصتا یرازفا تخس یاهرلرتنکورکیم PIC
– یاه را زفا مرن توافتم و یاه ناب ز يس ي ون همانرب فل تخ م
– هب نا ونع ،ه نومن رازف ا مرن PICBasicPRO
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 154: یدربراک کینورتاکم ۱
faradars.org/fvmec105
154
• لاقتنا همانرب هب رلرتنکورکیم و لاصتا یرازفا تخس یاهرلرتنکورکیم PIC
– یاه را زفا مرن توافتم و یاه ناب ز يس ي ون همانرب فل تخ م
– هب نا ونع ،ه نومن رازف ا مرن PICBasicPRO
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 155: یدربراک کینورتاکم ۱
faradars.org/fvmec105
155
• لاقتنا همانرب هب رلرتنکورکیم و لاصتا یرازفا تخس یاهرلرتنکورکیم PIC
– یاه را زفا مرن توافتم و یاه ناب ز يس ي ون همانرب فل تخ م
– هب نا ونع ،ه نومن رازف ا مرن PICBasicPRO
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 156: یدربراک کینورتاکم ۱
faradars.org/fvmec105
156
• لاقتنا همانرب هب رلرتنکورکیم و لاصتا یرازفا تخس یاهرلرتنکورکیم PIC
– یاه را زفا مرن توافتم و یاه ناب ز يس ي ون همانرب فل تخ م
– هب نا ونع ،ه نومن رازف ا مرن PICBasicPRO
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 157: یدربراک کینورتاکم ۱
faradars.org/fvmec105
157
• لاقتنا همانرب هب رلرتنکورکیم و لاصتا یرازفا تخس یاهرلرتنکورکیم PIC
– هاگتس د ل اقتنا همانرب
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 158: یدربراک کینورتاکم ۱
faradars.org/fvmec105
158
• لاقتنا همانرب هب رلرتنکورکیم و لاصتا یرازفا تخس یاهرلرتنکورکیم PIC
– هاگتس د ل اقتنا همانرب
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 159: یدربراک کینورتاکم ۱
faradars.org/fvmec105
159
• لاقتنا همانرب هب رلرتنکورکیم و لاصتا یرازفا تخس یاهرلرتنکورکیم PIC
– هاگتس د ل اقتنا همانرب
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 160: یدربراک کینورتاکم ۱
faradars.org/fvmec105
160
• لاقتنا همانرب هب رلرتنکورکیم و لاصتا یرازفا تخس یاهرلرتنکورکیم PIC
– ل اص تا تخ س یرازف ا
موس لصف : رلرتنکورکیم PIC
سرداﺮﻓ
FaraDars.org
slide 161: یدربراک کینورتاکم ۱
faradars.org/fvmec105
161
ناياپ موس لصف
سرداﺮﻓ
FaraDars.org
slide 162: یدربراک کینورتاکم ۱
faradars.org/fvmec105
سردارف رد هدش حرطم تاکن یانبم رب اه ديلسا نيا
« یدربراک کینورتاکم شزومآ ۱ »
تسا هدش هیهت .
دیيامن هعجارم ريز کنیل هب شزومآ نيا دروم رد رتشیب تاعلطا بسک یارب
faradars.org/fvmec105
یدربراک کینورتاکم ۱
faradars.org/fvmec105
سرداﺮﻓ
FaraDars.org