‫للعتاديين‬ ‫البرمجة‬
‫اليوم‬ ‫محتوى‬
( ‫الذواكر‬ ، ‫السجل ت‬ ، ‫المخارج‬ ‫و‬ ‫)المداخل‬ ‫الردوينو‬ ‫عن‬ ‫مراجعة‬
) ‫العتادية‬ ‫البرمجة‬ ‫لغا ت‬...
Digital PINs
Analog digital converter ADC PINs
crystal
Atmega328
Bootloader
Programme
d with hex
file
PinMode(10,INPUT);
‫التعليمة‬ ‫هذه‬ ‫داخل‬
‫العادية‬‫السي‬‫بلغة‬
DDRB |= 0X08 ;
Flash
‫التنفيذي‬ ‫البرنامج‬ ‫لتوضع‬ ‫ذاكرة‬
‫المتحكم‬ ‫على‬
x
SRAM
‫بعض‬ ‫و‬ ‫المتحولت‬ ‫لتوضع‬ ‫ذاكرة‬
‫التنفيذ‬ ‫أثناء‬ ‫المتغيرة‬ ‫الأمور‬
‫الذواكر‬
‫كتابة‬ / ‫قراءة‬ ‫التستخدام‬ ‫التليشي‬ ‫قابلية‬ ‫الذاكرة‬
( )‫تنفيذ‬ ‫قراءة‬
( )‫البرنامج‬ ‫حرق‬ ‫كتابة‬
‫التنف...
‫الرخرى‬ ‫العتادية‬ ‫البرمجة‬ ‫لغات‬
Assembly .
HDL .
Parallel languages .
C language .
Embedded systems & RTOS .
http://c...
‫برمجية‬ ‫لغة‬ ‫ل ي‬ ‫الرئيسية‬ ‫المكونا ت‬
const int buttonPin = 2;
int buttonState;
int lastButtonState = LOW;
long lastDebounceTime = 0;
long debounceDelay = 50;
v...
#define a 8
byte seven_seg_digits[10][7] = {//a,b,c,d,e,f,g
{ 1,1,1,1,1,1,0 }, // = 0
{ 0,1,1,0,0,0,0 }, // = 1
{ 1,1,0,1,...
H-bridge
# ‫نصيحة‬1. ‫التنفيذ‬ ‫قبل‬ ‫التخطيط‬
# ‫نصيحة‬2. ‫النمطية‬
# ‫نصيحة‬3. ‫الأجايل‬
# ‫نصيحة‬4. ‫التطوير‬ ‫و‬ ‫التعديل‬ ‫قاب...
Programming for hardwarians
Programming for hardwarians
Programming for hardwarians
Programming for hardwarians
Upcoming SlideShare
Loading in...5
×

Programming for hardwarians

120

Published on

البرمجة للعتاديين

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
120
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Programming for hardwarians

  1. 1. ‫للعتاديين‬ ‫البرمجة‬
  2. 2. ‫اليوم‬ ‫محتوى‬ ( ‫الذواكر‬ ، ‫السجل ت‬ ، ‫المخارج‬ ‫و‬ ‫)المداخل‬ ‫الردوينو‬ ‫عن‬ ‫مراجعة‬ ) ‫العتادية‬ ‫البرمجة‬ ‫لغا ت‬HDL – parallel languages – C -ROTS( . ‫برمجي‬ ‫حل‬ ‫و‬ ‫لغة‬ ‫ل ي‬ ‫الساسية‬ ‫المكونا ت‬ ‫مثال‬ – ‫القاطعة‬ : ‫أول‬ ‫)مثال‬ ‫عتادية‬ ‫مشكلة‬ ‫لحل‬ ‫العتادية‬ ‫البرمجة‬ ‫استخدام‬ ‫قيادة‬ : ‫الثاني‬seven segment( . ‫العتاد‬ ‫في‬ ‫البرمجي‬ ‫الكود‬ ‫كتابة‬ ‫عند‬ ‫عملية‬ ‫نصائح‬
  3. 3. Digital PINs Analog digital converter ADC PINs crystal Atmega328 Bootloader Programme d with hex file
  4. 4. PinMode(10,INPUT); ‫التعليمة‬ ‫هذه‬ ‫داخل‬ ‫العادية‬‫السي‬‫بلغة‬ DDRB |= 0X08 ;
  5. 5. Flash ‫التنفيذي‬ ‫البرنامج‬ ‫لتوضع‬ ‫ذاكرة‬ ‫المتحكم‬ ‫على‬
  6. 6. x SRAM ‫بعض‬ ‫و‬ ‫المتحولت‬ ‫لتوضع‬ ‫ذاكرة‬ ‫التنفيذ‬ ‫أثناء‬ ‫المتغيرة‬ ‫الأمور‬
  7. 7. ‫الذواكر‬ ‫كتابة‬ / ‫قراءة‬ ‫التستخدام‬ ‫التليشي‬ ‫قابلية‬ ‫الذاكرة‬ ( )‫تنفيذ‬ ‫قراءة‬ ( )‫البرنامج‬ ‫حرق‬ ‫كتابة‬ ‫التنفيذي‬ ‫البرنامج‬ ‫متلشية‬ ‫غير‬ flash ( )‫تنفيذ‬ ‫قراءة‬ ( )‫البرنامج‬ ‫حرق‬ ‫كتابة‬ ‫الثابتة‬ ‫المعطيات‬ ‫متلشية‬ ‫غير‬ EEPROM ‫كتابة‬ ‫و‬ ‫قراءة‬ ‫المتحولت‬ ‫متلشية‬ SRAM
  8. 8. ‫الرخرى‬ ‫العتادية‬ ‫البرمجة‬ ‫لغات‬ Assembly . HDL . Parallel languages . C language . Embedded systems & RTOS . http://concurrency.cc/ Hex + avrdude http://www.bertos.org/
  9. 9. ‫برمجية‬ ‫لغة‬ ‫ل ي‬ ‫الرئيسية‬ ‫المكونا ت‬
  10. 10. const int buttonPin = 2; int buttonState; int lastButtonState = LOW; long lastDebounceTime = 0; long debounceDelay = 50; void setup() { pinMode(buttonPin, INPUT); } lastButtonState = reading; } void loop() { int reading = digitalRead(buttonPin); if (reading != lastButtonState) { lastDebounceTime = millis(); } if ((millis() - lastDebounceTime) > debounceDelay) { if (reading != buttonState) { buttonState = reading; } }
  11. 11. #define a 8 byte seven_seg_digits[10][7] = {//a,b,c,d,e,f,g { 1,1,1,1,1,1,0 }, // = 0 { 0,1,1,0,0,0,0 }, // = 1 { 1,1,0,1,1,0,1 }, // = 2 { 1,1,1,1,0,0,1 }, // = 3 { 0,1,1,0,0,1,1 }, // = 4 { 1,0,1,1,0,1,1 }, // = 5 { 1,0,1,1,1,1,1 }, // = 6 { 1,1,1,0,0,0,0 }, // = 7 { 1,1,1,1,1,1,1 }, // = 8 { 1,1,1,0,0,1,1 } // = 9 }; void setup() { //debug led pinMode(9,OUTPUT); //7 seg outputs pinMode(a,OUTPUT); //a pinMode(7,OUTPUT); //b pinMode(6,OUTPUT); //c pinMode(5,OUTPUT); //d pinMode(4,OUTPUT); //e pinMode(3,OUTPUT); //f pinMode(2,OUTPUT); //g //switch input pinMode(9,INPUT); } } void segdisply(byte num) { byte pin=2 ; for (byte segCount = 6; segCount < 0; --segCount) { digitalWrite(pin, seven_seg_digits[num][segCount]); ++pin; } /* } void loop() { delay(10000); segdisply(2); 7 seg driver
  12. 12. H-bridge
  13. 13. # ‫نصيحة‬1. ‫التنفيذ‬ ‫قبل‬ ‫التخطيط‬ # ‫نصيحة‬2. ‫النمطية‬ # ‫نصيحة‬3. ‫الأجايل‬ # ‫نصيحة‬4. ‫التطوير‬ ‫و‬ ‫التعديل‬ ‫قابلية‬ # ‫نصيحة‬5. ‫الملحظات‬ ‫و‬ ‫التوثيق‬
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×