Intel8051 hotline@sarnikoff.fr ℜ(ε)+ℑ(ζ) ψΘψ Sarnikoff 2018 h=∫∞ dt WIKI EXPERIMENTAL NON SECURE OUVERT A TOUS VENTS
Microcontroleur Intel8051 Originalité :
Le multiplexage du port P0 permet l' "économie" de 8 pins, puisque en l'absence du mode d'adressage externe, ces 8 pins deviennent un port d'entré-sortie. L'architecture de ce microcontroleur a été adoptée par de nombreuses marques
(Intel, Siemens, Philips, Dallas, Atmel ... ) TimerValue= 65536 - ((Delay * ClockFreq)/Machine Cycle)

Exemple pour un "delay" de 1ms et un quartz de 11.0592MHz
65536-((1ms * 11.0592Mhz)/12) = 65536 - 921= 0xFC67

Timer needs a clock source. If C/T = 0, the crystal frequency attached to the 8051 is the source of the clock for the timer. The value of crystal frequency attached to the microcontroller decides the speed at which the timer ticks. Now suppose that crystal frequency is 11.059MHz.

Timer clock frequency:

The frequency for the timer is always 1/12th of the frequency of the crystal attached to the 8051.
TF = 1/12 x 11.059MHz = 921583 Hz Fréquence du timer

Timer clock period:
The time delay of one machine cycle is given below. We use this to generate the delay.
TP = 1/ 921583= 1.085 µ sec Période du timer

For delay of 10ms:
Firstly divide the desired time delay value (10 ms) by the timer clock period.
N= 1 / 1.085us
N= 10000µs / 1.0859usec
N=9208 (pour un délais de 10ms il faudra donc 9208 période de timer)

Subtract the value of N from the maximum number of counts possible for 16 bit timer i.e. 2^16 = 65536. (Comme le timer "compte à l'envers")
M=65536-N
M=65536-9208
M= 56328

Attention à l' homogénéité des unités de mesure
65536 - (Delay / TIC12) (DTR : délais TIC12 période du timer)

Convert this value to hexadecimal and write in TH and TL registers.
MH=DC08H
TH=DCH
TL=08H hotline@sarnikoff.fr ℜ(ε)+ℑ(ζ) ψΘψ Sarnikoff 2018 h=∫∞ dt WIKI EXPERIMENTAL NON SECURE OUVERT A TOUS VENTS 27/09/21 06:12:28

Intel8051