Quote:
|
Originally Posted by Lessa
Hi guys,
Please help me...
I have a problem with a creating delay on micro controller. How to create one delay for PIC18F8722? if possible in language C.
how?
Thanks!
|
You cannot use a standard delay (I.E. one made with a
while or
for loop) on the RC without asking for trouble ("the red light of death"). Instead, you may want to create a counter, such that every program loop (approx. 26.6ms, though it can be more) increments the counter. When the counter is greater than a certain value, you do whatever the delayed action was.
A more precise way to do this is to set a hardware timer (white paper on the IFI website under legacy documents) to fire every 25ms or so, and increment your counter there.
Hope this helps, and if it's clear as mud just let me know!

__________________
CMUCam not working? Tracks sporadically? Try this instead:
http://www.falconir.com!
PM me for more information if you are interested (it's open source!).
Want the FIRST Email blasts? See here:
http://www.chiefdelphi.com/forums/sh...ad.php?t=50809
"The harder the conflict, the more glorious the triumph. What we obtain too cheaply, we esteem too lightly; it is dearness only that gives everything its value."
-- Thomas Paine
If it's falling apart it's a mechanical problem. If it's spewing smoke it's a electrical problem.
If it's rampaging around destroying things it's a programming problem.
"All technology is run on 'Magic Smoke' contained within the device. As everyone knows, whenever the magic smoke is released, the device ceases to function."
-- Anonymous
I currently speak: English, some German, Verilog, x86 and 8051 Assembler, C, C++, VB, VB.NET, ASP, PHP, HTML, UNIX and SQL