سلام
نمی دونم دیگه چی کار کنم. فکر نمیکردم روزی تو این مسئله گیر کنم.ولی باور کنید کار نکرد.فکر نکنم از این راحتتر باشه.ولی ادم وقتی لجش میگیره کار نکنه :angry:کریستال داخلی 8 مگ.فیوز بیتو تغییر دادم.تایمر صفر مدنظره.حالا چون 40کیلو هرتزه پس زمان تناوب میشه 25 میکرو.تقسیم کلاک تایمر یکه.حالا باید 12.5 میکرو یک باشه و 12.5 میکرو صفر.حالا برای اینکه 12.5 میکرو رو تایمر بسازه باید تو فرکانس 8 مگ دقیقا 100 تا بشمره.(گل گفتم :applauseمثل اونچه که تو همه ی کتابها نوشته شده و ده تا مدار رو این طوری راه انداختم.یعنی میشه 8M/100 و چون در 2 ضرب میشه فرکانس میشه 40KHZ .برنامه هم که زیر گذاشتم.اساتید با تجربه کمک کنید.جالبه که این برنامه هم تو پروتئوس و هم با اسکوپ واقعی فرکانس 25KHZ نشون داد.پس حتما اشتباه از منه.دوستان کمک.پیشاپیش ممنون
نمی دونم دیگه چی کار کنم. فکر نمیکردم روزی تو این مسئله گیر کنم.ولی باور کنید کار نکرد.فکر نکنم از این راحتتر باشه.ولی ادم وقتی لجش میگیره کار نکنه :angry:کریستال داخلی 8 مگ.فیوز بیتو تغییر دادم.تایمر صفر مدنظره.حالا چون 40کیلو هرتزه پس زمان تناوب میشه 25 میکرو.تقسیم کلاک تایمر یکه.حالا باید 12.5 میکرو یک باشه و 12.5 میکرو صفر.حالا برای اینکه 12.5 میکرو رو تایمر بسازه باید تو فرکانس 8 مگ دقیقا 100 تا بشمره.(گل گفتم :applauseمثل اونچه که تو همه ی کتابها نوشته شده و ده تا مدار رو این طوری راه انداختم.یعنی میشه 8M/100 و چون در 2 ضرب میشه فرکانس میشه 40KHZ .برنامه هم که زیر گذاشتم.اساتید با تجربه کمک کنید.جالبه که این برنامه هم تو پروتئوس و هم با اسکوپ واقعی فرکانس 25KHZ نشون داد.پس حتما اشتباه از منه.دوستان کمک.پیشاپیش ممنون
$regfile = "m8def.dat"
$crystal = 8000000
Config Portd = Output
Config Timer0 = Timer , Prescale = 1
Stop Timer0
Enable Interrupts
Enable Timer0
On Timer0 Freq
Timer0 = 156
Start Timer0
Do
Loop
Freq:
Stop Timer0
Toggle Portd.0
Timer0 = 156
Start Timer0
Return
$crystal = 8000000
Config Portd = Output
Config Timer0 = Timer , Prescale = 1
Stop Timer0
Enable Interrupts
Enable Timer0
On Timer0 Freq
Timer0 = 156
Start Timer0
Do
Loop
Freq:
Stop Timer0
Toggle Portd.0
Timer0 = 156
Start Timer0
Return
دیدگاه