قسم الميكروكنترولر والروبوت ودوائر الاتصال بالحاسب الالي قسم المتحكمات الـ microcontroller و المعالجات microprocessor و التحكم الرقمي بالكمبيوتر CNC والانظمة الآلية والروبوت Robots

أدوات الموضوع

haled
:: مهندس ::
تاريخ التسجيل: Aug 2006
المشاركات: 24
نشاط [ haled ]
قوة السمعة:0
قديم 26-03-2014, 06:16 AM المشاركة 1   
افتراضي احتاج المساعده بخصوص ادخال رقم الى مصفوفه Twitter FaceBook Google+



الاخوه الكرام
السلام عليكم
كيف يمكن ادخال رقم مثل هذا الرقم 7490233 الى مصفوفه لكي يتم تخزينه بذاكرة الميكروكنترول pic16f887a باستخدامfor (i=0,i<7,i++) الى ذاكرة EEprom
هذا مااقصده

int num[6]=7490233
for (i=0; i<7; i++) {
temp = ADD + i;
] EEPROM_Write(temp,Num[i);
}
ولكم جزيل الشكر


التعديل الأخير تم بواسطة : haled بتاريخ 26-03-2014 الساعة 07:30 AM
اعلانات

batma97
:: مهندس متواجد ::
تاريخ التسجيل: Nov 2012
المشاركات: 60
نشاط [ batma97 ]
قوة السمعة:0
قديم 26-03-2014, 02:00 PM المشاركة 2   
افتراضي



اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )
  

haled
:: مهندس ::
تاريخ التسجيل: Aug 2006
المشاركات: 24
نشاط [ haled ]
قوة السمعة:0
قديم 26-03-2014, 03:40 PM المشاركة 3   
افتراضي


اخي الباش مهندس الفاضل
السلام عليكم
اشكرك جزيل الشكر . الله يبارك فيك

لقد اضفت هذا الكود ولاكن عند القراه النتيجه دائما تكون اصفار .هذا هو الكود اين هو الخطء في هذا الكود

// LCD module connections
sbit LCD_RS at RB0_bit;
sbit LCD_EN at RB1_bit;
sbit LCD_D4 at RB2_bit;
sbit LCD_D5 at RB3_bit;
sbit LCD_D6 at RB4_bit;
sbit LCD_D7 at RB5_bit;

sbit LCD_RS_Direction at TRISB0_bit;
sbit LCD_EN_Direction at TRISB1_bit;
sbit LCD_D4_Direction at TRISB2_bit;
sbit LCD_D5_Direction at TRISB3_bit;
sbit LCD_D6_Direction at TRISB4_bit;
sbit LCD_D7_Direction at TRISB5_bit;
// End LCD module connections

char message1[] = "1.READ";
char message2[] = "2.WRITE";
char message3[] = "3.Delete";
char message4[] = "WRITE COMPLETED";
char message5[] = "Read Data";
char message6[] = "Data Deleted";

char digi[] = "0000000000";
unsigned short i, NUM ;
unsigned int ADD = 0, temp; // Start EEPROM Location
unsigned long hum =9845261;
char ary[7];
char j;

void main() {
CMCON |= 7; // Disable Comparators
TRISB = 0x0F;
PORTB = 0x00;
Lcd_Init();
start:
Lcd_Cmd(_LCD_CLEAR); // Clear display
Lcd_Cmd(_LCD_CURSOR_OFF); // Cursor off
Lcd_Out(1,1,message1); // Write message1 in 1st row
Lcd_Out(1,8,message2);
Lcd_Out(2,1,message3);
do {
// Read Operation
if (Button(&PORTD, 0, 1, 1)) { // Detect logical one to zero
Delay_ms(300);
Lcd_Cmd(_LCD_CLEAR);
Lcd_Out(1,1,message5);
for (i=0; i<=8; i++) {
temp = 0x20+i;
NUM = EEPROM_Read(temp);
digi[i] = NUM+48;
}
Lcd_Out(2,1,digi);
delay_ms(3000);
goto start;
}
// Write Operation
if (Button(&PORTD, 1, 1, 1)) { // Write
Delay_ms(300);




for (j=0;j<8;j++){
IntToStr(hum,ary);
EEPROM_Write(0x02,ary[j]);
}
Lcd_Cmd(_LCD_CLEAR);
Lcd_Out(1,1,message4);
delay_ms(2000);
goto start;
}


// Delete Operation
if (Button(&PORTD, 2, 1, 1)) { // Detect logical one to zero
Delay_ms(300);
Lcd_Cmd(_LCD_CLEAR);
Lcd_Out(1,1,message6);
for (i=0; i<=8; i++) {
temp = 0x20+i;
EEPROM_Write(temp, 0);
}
delay_ms(2000) ;
goto start;
}

} while(1);
}


الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,688
نشاط [ حسن هادي محمود ]
قوة السمعة:136
قديم 27-03-2014, 07:53 AM المشاركة 4   
افتراضي


اخي الباش مهندس الفاضل
السلام عليكم
اشكرك جزيل الشكر . الله يبارك فيك

لقد اضفت هذا الكود ولاكن عند القراه النتيجه دائما تكون اصفار .هذا هو الكود اين هو الخطء في هذا الكود

// LCD module connections
sbit LCD_RS at RB0_bit;
sbit LCD_EN at RB1_bit;
sbit LCD_D4 at RB2_bit;
sbit LCD_D5 at RB3_bit;
sbit LCD_D6 at RB4_bit;
sbit LCD_D7 at RB5_bit;

sbit LCD_RS_Direction at TRISB0_bit;
sbit LCD_EN_Direction at TRISB1_bit;
sbit LCD_D4_Direction at TRISB2_bit;
sbit LCD_D5_Direction at TRISB3_bit;
sbit LCD_D6_Direction at TRISB4_bit;
sbit LCD_D7_Direction at TRISB5_bit;
// End LCD module connections

char message1[] = "1.READ";
char message2[] = "2.WRITE";
char message3[] = "3.Delete";
char message4[] = "WRITE COMPLETED";
char message5[] = "Read Data";
char message6[] = "Data Deleted";

char digi[] = "0000000000";
unsigned short i, NUM ;
unsigned int ADD = 0, temp; // Start EEPROM Location
unsigned long hum =9845261;
char ary[7];
char j;

void main() {
CMCON |= 7; // Disable Comparators
TRISB = 0x0F;
PORTB = 0x00;
Lcd_Init();
start:
Lcd_Cmd(_LCD_CLEAR); // Clear display
Lcd_Cmd(_LCD_CURSOR_OFF); // Cursor off
Lcd_Out(1,1,message1); // Write message1 in 1st row
Lcd_Out(1,8,message2);
Lcd_Out(2,1,message3);
do {
// Read Operation
if (Button(&PORTD, 0, 1, 1)) { // Detect logical one to zero
Delay_ms(300);
Lcd_Cmd(_LCD_CLEAR);
Lcd_Out(1,1,message5);
for (i=0; i<=8; i++) {
temp = 0x20+i;
NUM = EEPROM_Read(temp);
digi[i] = NUM+48;
}
Lcd_Out(2,1,digi);
delay_ms(3000);
goto start;
}
// Write Operation
if (Button(&PORTD, 1, 1, 1)) { // Write
Delay_ms(300);




for (j=0;j<8;j++){
IntToStr(hum,ary);
EEPROM_Write(0x02,ary[j]);
}
Lcd_Cmd(_LCD_CLEAR);
Lcd_Out(1,1,message4);
delay_ms(2000);
goto start;
}


// Delete Operation
if (Button(&PORTD, 2, 1, 1)) { // Detect logical one to zero
Delay_ms(300);
Lcd_Cmd(_LCD_CLEAR);
Lcd_Out(1,1,message6);
for (i=0; i<=8; i++) {
temp = 0x20+i;
EEPROM_Write(temp, 0);
}
delay_ms(2000) ;
goto start;
}

} while(1);
}
السلام عليكم
أيمكنك ارفاق مشروع لكي نستطيع مساعدتك بشكل أفضل

إضافة رد

العلامات المرجعية

«     الموضوع السابق       الموضوع التالي    »
أدوات الموضوع

الانتقال السريع إلى


الساعة معتمدة بتوقيت جرينتش +3 الساعة الآن: 09:40 AM
موقع القرية الالكترونية غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي موقع القرية الالكترونية ولايتحمل الموقع أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)

Powered by vBulletin® Version 3.8.6, Copyright ©2000 - 2025