بروتيوس خطوة بخطوة

M

muganga

Guest
ويحاول محاكاة البرمجية التالية.لم أجد الخيار : الموافقة المسبقة عن علم وحدة المعالجة المركزية... مجرد رمز مصدر السجلات ، DATAMEMORY ، البرنامج الذاكرة و المكدس.
اريد مساعدة ما قيم العداد المتغير تحصل عليها أثناء تشغيل البرنامج.
هل من الممكن استخدام بروتيوس؟

# تشمل <16C77.h>
# تأخير استخدام (الساعة = 4000000)
# تشمل <lcd.c># int_TIMER0
TIMER0 باطل ()
(
مواجهة كثافة العمليات ؛
set_timer0 (0) ؛
إذا كانت (مكافحة == 15)
(
مكافحة ؛
)
)باطلة الرئيسي () (
setup_timer_0 (RTCC_INTERNAL | RTCC_DIV_256 | RTCC_8_BIT) ؛ / / ساعة interno ؛ prescaler ؛ 8bits
enable_interrupts (INT_RTCC) ؛
enable_interrupts (العالمي) ؛

lcd_init () ؛
lcd_gotoxy (1،1) ؛
lcd_putc ( "بصدد إجراء تجارب") ؛

)tks

فرناندو

 
نعم كان من الممكن في Proteous
بدلا من تحميل *. السعة الهيكس ملف *. بمرفق كولمبوس المداري الخاص بك على رقاقة
هذا وسوف تظهر شفرة المصدر الخاصة بك ومتغيرات جدا
تذكر إذا كان المتغير العالمي ثم الحفاظ على سكان محليون قيمة دائمة يتم إنشاؤها ودمرت
في الوقت المناسب.

 
شكرا جزيلا لك على المعلومات...
لقد فعلت ما كنت sugest لكني لم استطع رؤية مكافحة متغير..
هل تعرفون لماذا؟# تشمل <16C77.h>
# تأخير استخدام (الساعة = 4000000)
# تشمل <lcd.c># int_TIMER0
TIMER0 باطل ()
(
مواجهة كثافة العمليات ؛
set_timer0 (0) ؛
إذا كانت (مكافحة == 15)
(
مكافحة ؛
)
)باطلة الرئيسي () (
setup_timer_0 (RTCC_INTERNAL | RTCC_DIV_256 | RTCC_8_BIT) ؛ / / ساعة interno ؛ prescaler ؛ 8bits
enable_interrupts (INT_RTCC) ؛
enable_interrupts (العالمي) ؛

lcd_init () ؛
lcd_gotoxy (1،1) ؛
delay_ms (100000) ؛
lcd_putc ( "مرحبا بكم في مصر") ؛

)

شكرا مرة أخرى

muganga

 
بروتيوس هو مجرد مضيعة للوقت.....

 
أشكركم على الرد.. لذلك.. ما هو أفضل البرامج لمحاكاة الدوائر؟

tks

muganga

 
أين هو الحرف الأول الموقت لديك مدونة؟أيضا لماذا كنت تفعل هذا

إذا كانت (مكافحة == 15)
(
مكافحة ؛
)

هل تريد أن تفعل مثل هذا
إذا كانت (مكافحة == 15)
(
مكافحة = 0 ؛
)العرقوب

 
الساعة = 4MHz

4 / 4 * 256 * 256 = 0،065536 ليالي

15 * 0،065536 = 1seg

اذا كنت قد تجاوز 15 أضعاف هذا يعني أنني قد 1 ثوانى.وبهذه الطريقة يمكنني الاعتماد 1 ثوانى وأريد عرضها على شاشات الكريستال السائل.

tks

muganga

 
ولكن الشفرة هو الخطأ.
انها لن تقبل مطلقا زيادة العداد كما هو الحال في بداية العد = 0 وبالتالي فإن الشرط إذا عد == 15 لن يكون صحيحا الجواب العد لن تنجح أبدا.العد ستبقى 0x00.

العرقوب

 
يمكنني تغيير رمز ونعرف انها تعمل..

بالنسبة لشخص يتعلمون انقطاع.. أنظر أدناه رمز...# تشمل <16C77.h>
# تأخير استخدام (الساعة = 4000000)
# تشمل <lcd.c>

مواجهة كثافة العمليات ؛
كثافة العمليات ثوانى = 0 ؛
قيمة كثافة العمليات ؛

# int_TIMER0
TIMER0 باطل ()
(
مكافحة ؛
إذا كانت (مكافحة == 15)
(
مكافحة = 0 ؛
ثوانى ؛
)
)باطلة الرئيسي () (

setup_timer_0 (RTCC_INTERNAL | RTCC_DIV_256 | RTCC_8_BIT) ؛
enable_interrupts (INT_RTCC) ؛
enable_interrupts (العالمي) ؛

في حين (1)
(
lcd_init () ؛
lcd_gotoxy (1،0) ؛
printf (lcd_putc ، "\ و الإيقاع : ٪ ط ثوانى" ، ثوانى) ؛
delay_ms (200) ؛
)
)

 

Welcome to EDABoard.com

Sponsor

Back
Top