Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

Въпросчета за таймер
http://mcu-bg.com/mcu_site/viewtopic.php?f=7&t=3707
Страница 1 от 1

Автор:  Cobraggg [ Нед Фев 11, 2007 1:06 am ]
Заглавие:  Въпросчета за таймер

Здравейте.Искам да попитам как се изчислява таймер(формула).Примерно имам PIC18F452 с 20MHz кварц и ползвам Таймер0.Настройвам Т0CS е 0,Т08BIT е 0 демек 16bit,ТМR0 му записвам FFFF и прескалера 1:2.
1.CLK0 равно ли е на Fosc/4?
2.Може ли някои да ми напише формулата по която да се изчисли времето за което се препълва брояча.
3.Можете ли да дадете съвет как мога примерно 3 цифрено число(123) да го разбия на 1,2 и 3.Аз ползвам % и делене обаче става много тромаво.
Благодаря предварително

Автор:  Nico [ Нед Фев 11, 2007 3:34 am ]
Заглавие: 

http://www.mcu-bg.com/mcu_site/viewtopic.php?t=3065
Виж това дали няма да ти свърши работа

Автор:  Predator_MF [ Пон Фев 12, 2007 12:55 pm ]
Заглавие: 

@Cobraggg, незнам къде си го видял това CLK0, определено го няма като дефиниция в PDF-а на 18F452.
1. Ако приемем че така си кръстил входната честота на Timer0, тя е Fosc/4.
2. Формулка...за кое? Имаш 16-битов брояч, на който подаваш Fosc/4, прескалера ти е 1:2, тоест разделяш още на две, значи имаш Fosc/8 като входна честота....един тик на таймера ще е 20'000'000/8 = 2'500'000Hz (2.5MHz), обърнато във време това са 400ns такт. Брояча върти от 0 до FFFF, това са 65536 такта за да се препълни, значи времето за което ще ти се генерира прекъсване е 65536*(4*10Е-7) = 26.2144ms ...можеш да си изведеш формулка въз основа на тази теория
3. Има го написано в поне 5 теми в Академия...пишеш BCD в търсачката на форума и воала - http://www.mcu-bg.com/mcu_site/viewtopi ... hlight=bcd например :)

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/