ايران ويج

نسخه‌ی کامل: ارسال فركانس
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
سلام
ببخشيد كسي مي تونه لطف كنه و ارسال يه فركانس خاصي به يه پورت رو برا من توضيح بده .
مثلا مي خام فركانس 130 كيلو رو به پورت a.0 بفرستم . ممنون
کد php:
do
    
toggle porta.0
    waitus 6 
loop 

البته این راحت ترین روش هستش و اصلا دقتی نداره !
اگه فرکانسش بیشتر بود تو حلقه به تعداد مورد نیاز دستور NOP رو اضافه کنید !
اگه فرکانس کمتر از مورد نیاز بودش زمان تاخیر رو کم کنین !

نکته : سعی کنید فرکانس میکرو رو تغییر ندین ( بالاتر باشه دقتتون بیشتره )
سلام
اخه اينو كه شما ميگيد خيلي سر خوده يعني كنترل اون سخته ...........
من مي خام بطور دقيقتر از اينكه شما گفتيد عمل كنم و يه فركانس رو به يه پايه بدم . راه ديگه اي نيس؟
خوب باید بیایی سراغ تایمر ها

کد php:
$regfile "M8def.dat" $crystal 8000000

Config Timer0 
Timer   Prescale 1
On Timer0 Ant 
Enable Interrupts Enable Timer0

Do

Loop

Ant
:
    
Toggle PortA.0
Return 

خروجی برنامه فوق الان 8 مگ تقیسم بر 256 هستش !

یعنی 31250 هرتز !

می تونی تایمر رو با یه عدد پیش فرض بارگذاری کنی تا فرکانسش رو بتونی تغییر بدی !

مثلا خروجی برنامه زیر 125000 هرتز است !

کد php:
$regfile "M8def.dat" $crystal 8000000

Config Timer0 
Timer   Prescale 1
On Timer0 Ant 
Enable Interrupts Enable Timer0

Do

Loop

Ant
:
    
Toggle PortA.0
    Timer0 
192
Return 
سلام
ممنون از كمكتون
الان اين برنامه به كريستال خارجي نياز ندارد؟ درسته؟
اين فرمول بدست اوردن فركانس چيه كه بعضي جا نوشتن ؟
يعني فرمول خاصي داره؟
ببخشيد زياد سوال كردم .
فرمولی نداره !

تو روش اول تعداد کلاک های و زمان های هر دستور رو باید بدونی تا دقیق بتونی زمان رو بسازی که متاسفانه تو زبان های سطح بالا مثل بسکام معنی نداره !

تو روش دوم مثل پست قبلی من همون فرمول معروف برای به دست اوردن زمان وقفه تایمر هستش !

یعنی فرکانس میکرو تقسیم بر تقسیم فرکانسی ( همون پرسکالر ) تقسیم بر مقدر شمارش تایمر تا صفر شدن و فعال شدن وقفش !

مثال پست قبلی منو تمرکز کنی می فهمی چی شدش !

چون تایمر صفر 8 بیتی هستش پس از 0 تا 255 می شمره ! یعنی 256 تا

می شه ی عدد پیش فرض داخلش گذاشت تا کمتر شه !
چطور ميشيه سيگنال مربوط به تلفن رو ايجاد و به گوشي ارسال كرد؟
اگه منظورت DTMF هستش که اینو ببین :

http://forum.iranled.com/showthread.php?...#pid108545