آشنایی و آموزش ميكرو كنترلر 8051

آشنایی و آموزش ميكرو كنترلر 8051

تعداد صفحات: 74

حجم فایل: 60.0 KB

فرمت فایل: doc

دسته بندی:

قیمت: 979,900 ریال

تعداد نمایش: 1 نمایش

ارسال توسط:

تاریخ ارسال: 2 شهریور 1405

به روز رسانی در: 3 شهریور 1405

خرید این محصول:

پس از پرداخت لینک دانلود برای شما نمایش داده می شود.

979,900 ریال – خرید

ميكرولنترلر 8051 پايه و اساسي است براي يادگيري ديگر ميكروكنترلر ها دستورات اسمبلي اين ميكرو نسبت به AVR خيلي كمتر هست و داراي امكانات كمتري نسبت به ديگر ميكرو ها است به همين دليل يادگيري و فهم آن خيلي راحت و آسان مي باشد كه براي شروع ابتدا بايد مفاهيم منطق و ديجيتال را خوب فهميده باشيد و بعد از آن بايد سخت افرار 8051 و RAM و ROM داخلي آن را درك كرده باشيد تا بتوانيد يك برنامه كاربردي بنويسيد تا يك پروسه را كنترل كند. خيلي ها براي يادگيري ميگن كه ما كه مي خواهيم برنامه نويسي ميكرو را ياد بگيرم پس بهتر بالاترين ميكرو يعني AVR يا PIC ياد بگيريم در صورتي كه به نظر من كاملا اشتاه بوده و كار غلطي است كه اگه بخواهيد تا آخر ادامه دهيد كاري طاقت فرسا خواهد بود. مثل اين خواهد بود كه سقف طبقه اول يك ساختمان را درست نكرده باشيم و بخواهيم طبقه دوم را درست كنيم. در اين وبلاگ من تا بتوانم به زبان ساده و روان مطالب را بيان خواهم كرد كه البته اگه يكم علاقه و پشتكار داشته باشد مطمئن باشيد به ميكرو مسلط خواهيد شد و مي توانيد آن را به راحتي برنامه ريزي كنيد. قيمت اين ميكرو خيلي ارزان مي باشد در حدود 1000 تومان و حافظه ROM آن قابل پاك كردن و استفاده مجدد مي باشد پس شما به راحتي مي توانيد در خانه يا محل كار براي راحتي خود و افراد خانواده چيزهايي با آن بسازيد كه آدم باورش نشه كه اينو خودش ساخته و طراحي كرده.

 

 

تشريح پايه هاي 8051 و RAM و ROM داخلي آن

8051 داراي 4 پورت ورودي يا خروجي مي باشد يعني اينكه هر كدام از اين پورت ها را مي توان در يك لحظه به عنوان ورودي استفاده كرد و همان پورت را دوباره در يك لحظه ديگر به عنوان خروجي از آن استفاده كرد. منظور از پورت چيست؟ پورت در ميكرو يعني 8 عدد پين يا 8 خط ديتا يا ذر اصطلاح 8بيتي، كه 8051 داراي 4 پورت 8 بتي يعني 32 پايه مي باشد.

ميكرو كنترلر AT89C51 داراي 128 بايت RAM و 4KB حافظه برنامه ROM مي باشد. و AT89C52 داراي 256 بايت RAM و 8KB حافظه برنامه ROM مي باشد. و AT89C55 داراي 256 بايت RAM و 20KB حافظه برنامه ROM مي باشد. كه بستگي به حجم برنامه ما دارد كه از كدام ميكرو استفاده كنيم.

كاربرد RAM چست؟ اصلا به چه دردي مي خوره؟

RAM يعني random access memory حافظه با دستيابي تصادفي. از اين حافظه براي ذخيره اطلاعات موقت استفاده مي شود يعني اينكه تا زماني كه تغذيه ميكرو وصل باشد اين اطلاعات از بين نمي روند و با قطع كردن تغذيه اين اطلاعات از بين مي روند. ما در ميكرو 8 ثبات 8 بتي براي ذخيره كردن داده  ها داريم در بعضي از مواقع پيش مي آيد كه اين 8 ثبات در كل برنامه استفاده شوند و ما به يك ثبات 8 بيتي براي ذخيره سازي داده ها داريم مثلا يك شمارنده طراحي كرديم و همه ثبات ها هم استفاده شده و ما مثلا به دو ثبات احتياج داريم كه مي توانيم از هر كدام از خانه هاي RAM استفاده كنيم. منظور از اطلاعات همان داده هاي 8 بيتي مي باشند يعني همون 0 يا 1 ها كه به 8 تا از آنها يك بايت يا يك داده 8 بيتي مي گويند.

حال به تقسيم بندي RAM توجه كنيد. براي برنامه نويسي خيلي مهم است كه ما از چه خانه هاي RAM مجاز هستيم استفاده كنيم آيا مي توانيم در فلان خانه RAM داده را به صورت بيتي دستكاري كنيم  يا داده را 8 بيتي دستكاري كنيم. اصلا در چه محدوده اي از RAM قادر هستيم داده ذخيره كنيم  يا بانك هاي ثباتي در كجاي RAM واقع شده اند و ديگر ثبات ها… به جدول زير كه مربوط به RAM خوب توجه كنيد

عملكرد

ثبات

خانه هاي 8 بتي RAM

آدرس

 

 

 

 

 

 

 

 

 

 

FF

ثبات B

B

F0

F1

F2

F3

F4

F5

F6

F7

F0

ثبات A يا انباره

ACC

E0

E1

E2

E3

E4

E5

E6

E7

E0

كلمه وضعيت

PSW

D0

D1

D2

D3

D4

D5

D6

D7

D0

 

IP

B8

B9

BA

BB

BC

     

     

     

B8

پورت 3

P3

B0

B1

B2

B3

B4

B5

B6

B7

B0

كنترل وقفه ها

IE

A8

A9

AA

AB

AC

     

      

AF

A8

پورت 2

P2

A0

A1

A2

A3

A4

A5

A6

A7

A0

ارتباط سريال

SBUF

قابل آدرس دهي نيست

99

 

SCON

98

99

9A

9B

9C

9D

9E

9F

98

پورت 1

P1

90

91

92

93

94

95

96

97

90

بايت سنگين تايمر 1

TH1

قابل آدرس دهي نيست

8D

بايت سنگين تايمر 0

TH0

قابل آدرس دهي نيست

8C

بايت سبك تايمر 1

TL1

قابل آدرس دهي نيست

8B

بايت سبك تايمر 0

TL0

قابل آدرس دهي نيست

8A

مد تايمر

TMOD

قابل آدرس دهي نيست

89

مد شمارنده

TCON

88

89

8A

8B

8C

8D

8E

8F

88

 

PCON

قابل آدرس دهي نيست

87

بايت سنگين ثبات DPTR

DPH

قابل آدرس دهي نيست

83

بايت سبك ثبات DPTR

DPL

قابل آدرس دهي نيست

82

اشاره گر پشته

SP

قابل آدرس دهي نيست

81

پورت 0

P0

80

81

82

83

84

85

86

87

80

فقط بايتي

 

80 بايت براي خواندن و نوشتن موقت

30تا7F

بيتي و بايتي

 

16 بايت براي خواندن و نوشتن موقت

20تا2F

 

بانك هاي ثباتي شامل R0   R7

R0   R7

بانك 3

18تا1F

R0   R7

بانك 2

10تا17

R0   R7

بانك 1

08تا0F

R0   R7

بانك 0

00تا07

MGH

MGH

MGH

MGH

 

8051 در كل 128 بايت RAM دارد كه به صورت جدول بالا تقسيم بندي مي شود

1)     32 بايت از مكان هاي 00 تا 1F براي بانك هاي ثباتي و پشته كنار گذاشته شده.

2)     16 بايت از 20 تا2F براي خواندن و نوشتن آدرس پذير بيتي كنار گذاشته شده.

3)     80 بايت از مكان هاي 30 تا7F براي خواندن و نوشتن بايتي  و يا آنچه كه عموما داده موقت گفته مي شو به كار مي رود.

 

پاسخ دهید