سلام منم همین مشکل رو داشتم یه گشتی زدم این به چشم خورد تو help نرم افزاره keil بود ولی نتونستم استفاده کنم
signal void one_thou_hz (void) {
while (1) { /* repeat forever */
PORTA |= 1; /* set PORTA bit 0 */
swatch (0.0005); /* delay for .0005 secs */
PORTA &= ~1; /* clear PORTA bit 0 */
swatch (0.0005); /* delay for .0005 secs */
} /* repeat */
}
به همین خاطر منم از حلقه for استفاده کردم
یا میتونین خودتون یه تابع wait بنویسین :mrgreen:
It's nice to be important but it's important to be nice!
از اینکه نمی رسم جواب دوستان را بدم معذرت می خوام.
در مورد اون کدهایی که دوستمون گذاشتن باید بگم که Keil یه سیستم عاملی به نام RL-Real Time ... تعریف کرده که همه توابع و متغییرهاش با هم هستند، اگه بخواید ازشون استفاده کنید باید همه با هم به کار گرفته بشه.
من اینطور فهمیدم
بت در بغل و به سجده پیشانی ما کافر زده خنده بر مسلمانی ما
اسلام به ذات خود ندارد عیبی هر عیب که هست در این مسلمانی ماست
by the way
من اومدم یه تا بع delay نوشتم که در شبیه سازی keil حدودا 1 ثانیه طول میکشید ولی در عمل 2 برابر. اومدم یه تابع دیگه نوشتم که 10ms ثانیه طول میکشید و باهاش یه سیگنال ساختم که عرضش شد 20ms .
خلاصه در عمل سرعت نصف شبیه سازی طول میکشید. اومدم و تو تنظیمات گشتم و رسیدم به prescaller اسیلاتور که دیدم 2 هستش، ولی بعد فهمیدم شبیه سازی با در نظر گرفتم اون کار میکنه و مشکل از جای دیگه است.
خلاصه داره دیوونم میکنه.
مشکل بعدی اینه که از اون اول که این برد رو ساختم پایه های Pa0 و PA1 حتی یک بار هم خروجی ندادند، انگار که سوختن. نمیدونم چشونه
ممنون
بت در بغل و به سجده پیشانی ما کافر زده خنده بر مسلمانی ما
اسلام به ذات خود ندارد عیبی هر عیب که هست در این مسلمانی ماست
دیدگاه