امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
کمک درتبدیل برنامه C به بیسیک (لطفا بخونید)
نویسنده پیام
sarfraz3 آفلاین
تازه وارد

ارسال‌ها: 8
موضوع‌ها: 2
تاریخ عضویت: شهریور ۱۳۹۰

تشکرها : 7
( 1 تشکر در 1 ارسال )
ارسال: #1
کمک درتبدیل برنامه C به بیسیک (لطفا بخونید)
سلام ، یه برنامه زبان C دارم که برای یه میکرو pic نوشته شده، میخوام این برنامه به بیسیک برای میکروهای AVR مثلا ATMEGA 32 بنویسم ، دوستان اگه به این دو زبان تسلط دارند ممنون میشم که این برنامه به بیسیک تبدیل کنند. خیلییی خیلیییییییی ممنون.Rolleyes
شکل مدار پیوست کردم .
این هم خود برنامه :

/*
Description : CapMeter based on RC time constant
MCU: PIC16F28A
Oscillator: HS, 4.0000 MHz externa

*/

// LCD module connections
sbit LCD_RS at RB2_bit;
sbit LCD_EN at RB3_bit;
sbit LCD_D4 at RB4_bit;
sbit LCD_D5 at RB5_bit;
sbit LCD_D6 at RB6_bit;
sbit LCD_D7 at RB7_bit;
sbit LCD_RS_Direction at TRISB2_bit;
sbit LCD_EN_Direction at TRISB3_bit;
sbit LCD_D4_Direction at TRISB4_bit;
sbit LCD_D5_Direction at TRISB5_bit;
sbit LCD_D6_Direction at TRISB6_bit;
sbit LCD_D7_Direction at TRISB7_bit;

sbit Va at RA0_bit;
sbit Switch at RB0_bit;

char message1[] = "Capacitance";
char message2[] = "Meter";

unsigned int T_Value, Num;
unsigned short i, j, TimerValue, OverRange = 0;
char Capacitance[] = "00.000 uF";

void interrupt(){
if(PIR1.TMR2IF){
TMR2 = TimerValue;
Num ++;
if(Num > 9999) OverRange = 1; // Range is 99.99 uF
PIR1.TMR2IF =0; // Clear TMR0 interrupt flag
}
}

void Display_Cap(unsigned int n){
Capacitance[0] = n/10000 + 48;
Capacitance[1] = (n/1000)%10 + 48;
Capacitance[3] = (n/100)%10 + 48;
Capacitance[4] = (n/10)%10 + 48;
Capacitance[5] = (T_Value*10)/153 + 48;
Lcd_Cmd(_Lcd_Clear);
Lcd_Out(1, 1, "C = ");
Lcd_Out(1, 5, Capacitance);

}

void reset(){
TRISA = 0b00000100;
CMCON = 7;
RA1_bit = 0;
Delay_ms(2000);
TRISA = 0b00000110;
CMCON = 5;
}

void main(){

char cap_size;
TRISB = 0b00000001;
PORTB = 0;
TRISA = 0b00000110;
OPTION_REG.T0CS = 0;
INTCON.GIE = 1; //Enable global interrupt
INTCON.PEIE = 1; //Enable peripheral interrupt

// Configure Timer2 module
PIE1.TMR2IE = 1; // Enable Timer2 interrupt
T2CON = 0; // Prescaler 1:1, and Timer2 is off initially
PIR1.TMR2IF =0; // Clear int bit

// Configure Comparator module
CMCON = 5; // Independent comparator between RA1 (-) and RA2(+)

Lcd_Init();
Lcd_Cmd(_Lcd_Clear);
Lcd_Cmd(_LCD_CURSOR_OFF);
Lcd_Out(1, 1, message1);
Lcd_Out(2, 1, message2);
delay_ms(2000);
Lcd_Cmd(_Lcd_Clear);

Lcd_Out(1, 1, "C = ");
Lcd_Out(1, 5, Capacitance);
Va = 0;
TimerValue = 108; // 104 + 4 additional clock cycles delay on branching to ISR
while(1){
if(!Switch) {
Num = 0;
OverRange =0;
Lcd_Cmd(_Lcd_Clear);
Lcd_Out(1, 1, "Testing.");
Lcd_Out(2, 1, "...");
TMR2 = TimerValue; // Initialize Timer2
Va = 1; //apply voltage
T2CON.TMR2ON = 1; // start timer
while(CMCON.C2OUT) {
if(OverRange) break;
}
T2CON.TMR2ON = 0; // stop timer
T_Value = TMR2 - TimerValue; // T_Value is used for improved resolution
Va = 0;
//---------------------------------
if(!OverRange){
Display_Cap(Num*10);
}
else{
OverRange = 0;
Lcd_Cmd(_Lcd_Clear);
Lcd_Out(1, 1, "Out of Range!");
}
reset();
}
}
}


فایل‌(های) پیوست شده بندانگشتی (ها)
   
(آخرین ویرایش در این ارسال: ۱۶-آذر-۱۳۹۱, ۱۴:۳۳:۰۵، توسط sarfraz3.)
۱۶-آذر-۱۳۹۱, ۱۴:۲۹:۵۸
ارسال‌ها
پاسخ
تشکر شده توسط : soy1345
sarfraz3 آفلاین
تازه وارد

ارسال‌ها: 8
موضوع‌ها: 2
تاریخ عضویت: شهریور ۱۳۹۰

تشکرها : 7
( 1 تشکر در 1 ارسال )
ارسال: #2
RE: کمک درتبدیل برنامه C به بیسیک (لطفا بخونید)
دوستان لطفا کمک کنید ، یعنی کسی با این برنامه آشنا نیست ، تقریبا یکروز شده ولی کسی پاسخی نداده .!!!!!
خواهشا اگه می تونید راهنمایی کنید، من با زبان C یکم آشنایی دارم ولی با میکرو pic کار نکردم نمی تونم تبدیلش کنم به بیسیک .

حالا ما یکبار کمک خواستیم کسی نیست جواب بده ، هرچند انتظار اینو نداشتم ولی کم کم نامید شدم از اینکه کسی پاسخ بده.Sad
سایت با این همه مطالب متنوع و جالب ، پس این افراد کجا هستند یکی بیاد یه نگاهی به این برنامه کنه .017
(آخرین ویرایش در این ارسال: ۱۷-آذر-۱۳۹۱, ۰۰:۳۴:۵۰، توسط sarfraz3.)
۱۶-آذر-۱۳۹۱, ۲۳:۴۱:۳۰
ارسال‌ها
پاسخ
jansfred آفلاین
كاربر دو ستاره
**

ارسال‌ها: 147
موضوع‌ها: 19
تاریخ عضویت: مهر ۱۳۹۱

تشکرها : 95
( 47 تشکر در 23 ارسال )
ارسال: #3
RE: کمک درتبدیل برنامه C به بیسیک (لطفا بخونید)
سلام
من تازه وارد و تازه كارم
گمون نميكنم بشه
مگه اينكه از اول برنامه ي بيسك رو بنويسي
يا متوجه بشي كار اين برنامه به زبان c چي هست بعد معادل اونو به زبان بيسيك بنويسي
حالا صبر كنيد دوستان حرفه اي تر نظر بدند
۱۷-آذر-۱۳۹۱, ۱۴:۰۰:۰۳
ارسال‌ها
پاسخ
sarfraz3 آفلاین
تازه وارد

ارسال‌ها: 8
موضوع‌ها: 2
تاریخ عضویت: شهریور ۱۳۹۰

تشکرها : 7
( 1 تشکر در 1 ارسال )
ارسال: #4
RE: کمک درتبدیل برنامه C به بیسیک (لطفا بخونید)
میدونم برنامه چیکار میکنه ، فقط فکر میکنم بعضی از دستورات مخصوص همون pic باشه نمی تونم تغییر بدم، تازه اونقدر به C تسلط ندارم ، بخاطر همین از دوستان که به این زبان آشنایی دارند میخوام که کمک کنند.
۱۷-آذر-۱۳۹۱, ۱۹:۴۷:۱۳
ارسال‌ها
پاسخ
omid_phoenix آفلاین
مدیر بخش
*****

ارسال‌ها: 2,238
موضوع‌ها: 108
تاریخ عضویت: شهریور ۱۳۹۱

تشکرها : 12682
( 15433 تشکر در 4574 ارسال )
ارسال: #5
RE: کمک درتبدیل برنامه C به بیسیک (لطفا بخونید)
سلام
متاسفانه کار با pic تو ایران زیاد جانیافتاده و اکثریت بدلیل راحتی کار با avr، این میکرو رو به pic ترجیح میدن.
برای تبدیل حتما باید کار مدار رو بدونید و برنامه جدیدی واسش بنویسید واگرنه تبدیل لاین به لاین یا ممکن نیست یا حداقل زمان زیادی لازم داره.
شما می تونید یه کتاب برنامه نویسی بگیرید یا از سایت دانلود کنید تا متوجه بشید مدار چه عملکردی رو داره و بعد برنامه بیسیک رو بنویسید.

(آخرین ویرایش در این ارسال: ۱۷-آذر-۱۳۹۱, ۲۱:۱۶:۴۴، توسط omid_phoenix.)
۱۷-آذر-۱۳۹۱, ۲۱:۱۵:۲۲
ارسال‌ها
پاسخ
sarfraz3 آفلاین
تازه وارد

ارسال‌ها: 8
موضوع‌ها: 2
تاریخ عضویت: شهریور ۱۳۹۰

تشکرها : 7
( 1 تشکر در 1 ارسال )
ارسال: #6
RE: کمک درتبدیل برنامه C به بیسیک (لطفا بخونید)
متاسفانه اینو باید هر جوری شده به بیسیک بنویسم ، یا یه برنامه بیسیک به خوبی این برنامه بنویسم ، چون من این برنامه در پرتئوس شبیه سازی کردم و خیلی عالیی بود هرچند رنجش از یک نانو تا 99 میکرو بود ، ولی اگه من این برنامه به بیسیک بنویسم میتونم رنجش زیاد کنم مثلا از پیکو تا فاراد ، ایدش تو ذهن دارم ، حالا اگه یکی بیاد کمک کنه کم کم اینو درستش کنیم عالی میشه.
۱۷-آذر-۱۳۹۱, ۲۱:۳۲:۳۵
ارسال‌ها
پاسخ
omid_phoenix آفلاین
مدیر بخش
*****

ارسال‌ها: 2,238
موضوع‌ها: 108
تاریخ عضویت: شهریور ۱۳۹۱

تشکرها : 12682
( 15433 تشکر در 4574 ارسال )
ارسال: #7
RE: کمک درتبدیل برنامه C به بیسیک (لطفا بخونید)
(۱۷-آذر-۱۳۹۱, ۲۱:۳۲:۳۵)sarfraz3 نوشته است: متاسفانه اینو باید هر جوری شده به بیسیک بنویسم ، یا یه برنامه بیسیک به خوبی این برنامه بنویسم ، چون من این برنامه در پرتئوس شبیه سازی کردم و خیلی عالیی بود هرچند رنجش از یک نانو تا 99 میکرو بود ، ولی اگه من این برنامه به بیسیک بنویسم میتونم رنجش زیاد کنم مثلا از پیکو تا فاراد ، ایدش تو ذهن دارم ، حالا اگه یکی بیاد کمک کنه کم کم اینو درستش کنیم عالی میشه.

فایل کامل پروژه رو بزارید رو سایت یه نگاه بندازیم، شاید بشه کمکتون کردWink

۱۷-آذر-۱۳۹۱, ۲۱:۴۷:۰۱
ارسال‌ها
پاسخ
sarfraz3 آفلاین
تازه وارد

ارسال‌ها: 8
موضوع‌ها: 2
تاریخ عضویت: شهریور ۱۳۹۰

تشکرها : 7
( 1 تشکر در 1 ارسال )
ارسال: #8
RE: کمک درتبدیل برنامه C به بیسیک (لطفا بخونید)
باشه ، خود برنامه که گذاشتم ، این هم شبیه سازیش . فقط هرچه زودتر یکی کمک کنه.
http://www.up2up.org/images/t5dxpmw63xtytd69ju1p.rar
۱۷-آذر-۱۳۹۱, ۲۲:۲۰:۵۳
ارسال‌ها
پاسخ
sarfraz3 آفلاین
تازه وارد

ارسال‌ها: 8
موضوع‌ها: 2
تاریخ عضویت: شهریور ۱۳۹۰

تشکرها : 7
( 1 تشکر در 1 ارسال )
ارسال: #9
RE: کمک درتبدیل برنامه C به بیسیک (لطفا بخونید)
چی شد!!!!! ، فایل شبیه سازیش هم که گذاشتم.
۱۹-آذر-۱۳۹۱, ۱۹:۴۱:۰۵
ارسال‌ها
پاسخ
ashkanzx1 آفلاین
تازه وارد

ارسال‌ها: 3
موضوع‌ها: 0
تاریخ عضویت: اسفند ۱۳۹۰

تشکرها : 0
( 2 تشکر در 2 ارسال )
ارسال: #10
RE: کمک درتبدیل برنامه C به بیسیک (لطفا بخونید)
سلام
برای یاد گیری avr با زبان سی© شروع کنم یا ویرژال بیسیک؟
۱۱-دى-۱۳۹۱, ۲۳:۰۰:۳۰
ارسال‌ها
پاسخ
hadikh73 آفلاین
مدیــر کـل سایـت
*******

ارسال‌ها: 1,219
موضوع‌ها: 43
تاریخ عضویت: شهریور ۱۳۹۱

تشکرها : 13641
( 14739 تشکر در 4686 ارسال )
ارسال: #11
RE: کمک درتبدیل برنامه C به بیسیک (لطفا بخونید)
(۱۱-دى-۱۳۹۱, ۲۳:۰۰:۳۰)ashkanzx1 نوشته است: سلام
برای یاد گیری avr با زبان سی© شروع کنم یا ویرژال بیسیک؟
سلام
با هر کدوم که آشنایی داری (منظورم زبان برنامه نویسیشه) اگر با هیچ کدوم آشنایی نداری بهتره از بیسیک شروع کنی چون خیلی ساده تر و قابل فهم ترهWink
در کل فرقی ندارن فقط c قدرتش یکم بیشتره
بازم میگم اگر کاملا مبتدی هستی بهتره بیسک شروع کنیWink

۱۲-دى-۱۳۹۱, ۰۱:۱۱:۳۳
ارسال‌ها
پاسخ
تشکر شده توسط : omid_phoenix


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  درخواست راهنمایی منو سازی برای Atmega32 به زبان بیسیک برویglcd armin111 9 6,171 ۱۶-شهریور-۱۳۹۶, ۱۱:۳۹:۲۵
آخرین ارسال: sky_man847
  مشکل در ساخت تایمر لطفا کمک کنید omidsafari 8 6,502 ۰۹-مرداد-۱۳۹۵, ۱۷:۲۸:۰۹
آخرین ارسال: omidsafari
  glcd با بیسیک mohebbat 9 3,466 ۲۷-بهمن-۱۳۹۴, ۱۶:۲۹:۲۴
آخرین ارسال: mohebbat
Shy راهنمایی کنید لطفا .... ماکان 3 3,102 ۲۱-اردیبهشت-۱۳۹۴, ۱۳:۰۶:۴۹
آخرین ارسال: omid_phoenix
Exclamation برنامه دزدگیر اماکن به زبان بیسیک a.mehran 5 4,789 ۲۱-آبان-۱۳۹۳, ۱۶:۰۳:۳۷
آخرین ارسال: a.mehran
Rolleyes دوستان راهنمایی کنید ..لطفا ماکان 42 18,776 ۲۷-مهر-۱۳۹۳, ۱۸:۲۷:۳۰
آخرین ارسال: a.mehran
  پروژه قفل رمز 8 رقمی به زبان بیسیک a.mehran 0 2,280 ۱۰-شهریور-۱۳۹۲, ۲۱:۲۰:۵۶
آخرین ارسال: a.mehran
  تحلیل یه برنامه به زبان بیسیک رسول21 1 2,840 ۱۴-فروردین-۱۳۹۲, ۱۲:۰۲:۳۳
آخرین ارسال: EBKA
  تصحیح مدار شبیه سازی پروتئوس و برنامه به زبان بیسیک rezarazeghi 6 6,791 ۱۸-آبان-۱۳۹۱, ۰۰:۱۵:۵۳
آخرین ارسال: vigraz
  برنامه اسمبلی در بیسیک parsegade 7 5,563 ۱۰-آبان-۱۳۹۱, ۱۰:۴۴:۱۴
آخرین ارسال: parsegade

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 2 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS