summaryrefslogtreecommitdiff
path: root/sim/ucsim/s51.src/test/timer.c
diff options
context:
space:
mode:
authorXavier ASUS <xavi92psx@gmail.com>2019-10-18 00:31:54 +0200
committerXavier ASUS <xavi92psx@gmail.com>2019-10-18 00:31:54 +0200
commit268a53de823a6750d6256ee1fb1e7707b4b45740 (patch)
tree42c1799a9a82b2f7d9790ee9fe181d72a7274751 /sim/ucsim/s51.src/test/timer.c
downloadsdcc-gas-268a53de823a6750d6256ee1fb1e7707b4b45740.tar.gz
sdcc-3.9.0 fork implementing GNU assembler syntax
This fork aims to provide better support for stm8-binutils
Diffstat (limited to 'sim/ucsim/s51.src/test/timer.c')
-rw-r--r--sim/ucsim/s51.src/test/timer.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/sim/ucsim/s51.src/test/timer.c b/sim/ucsim/s51.src/test/timer.c
new file mode 100644
index 0000000..057644a
--- /dev/null
+++ b/sim/ucsim/s51.src/test/timer.c
@@ -0,0 +1,27 @@
+#include "timer.h"
+
+
+float Fosc= 11.0592; /* MHz, Oszcillator orajel */
+
+
+/* Adott idoziteshez szukseges szamlalo kezdoerteket szamolja ki.
+ A parametert msec-ben kell megadni (kb 0.02-71 kozott) */
+
+unsigned int T_kezdoertek(float ido /* msec */)
+{
+ float tper; /* szamlalo periodusideje */
+ //float per; /* szukseges periodusok szama */
+
+ tper= 12.0/Fosc;
+ /* atvaltas usec-be */
+ ido*= 1000.0;
+ /* Max 65529 lepes */
+ if (ido > tper*65529.0)
+ return 0;
+ /* Min 20 lepes */
+ if (ido < tper*20.0)
+ return 0xffff-20;
+ //per= ido/tper;
+ return (unsigned int)(65541.0-ido/tper);
+}
+