CAN sur 68hc11e2

CAN sur 68hc11e2 - ASM - Programmation

Marsh Posté le 16-10-2002 à 10:50:59    

bon voila je doi faire un prog en assembleur pour faire un convertisseur analogique numerik
 
entre portE
sorti 8bit port B
 
pouvez vous me donne le principe pour le faire et pkoi pas un embryon de code svp

Reply

Marsh Posté le 16-10-2002 à 10:50:59   

Reply

Marsh Posté le 16-10-2002 à 11:10:37    

heuuu...... j'ai fais ca dans ma jeuneusse  :D  
Il me semble que le 68hc11 a dj un CAN integré? Tu veux faite quoi en faire, entré une valeur numérique sur le port analogique puis la resortir sous forme d'un entier de 8 bit?
Il faut d'abord que tu configure ton portE en entré et le port B en sortie, ensuite si mes souvenir son bon il faut initialisé les paramètres de CAN (taux d'échantionnage...), puis faire une petite boucle qui va lire la valeur du CAN et la rebalance sur le portB. Attention, il faut prévoir un circuit electronique pour mettre en forme ton signale avant de l'envoyer sur le port E!


Message édité par thecoin le 16-10-2002 à 11:11:27
Reply

Marsh Posté le 16-10-2002 à 11:14:36    

j'ai trouvé ca:
 

Code :
  1. ORG $B600 ; start of EEPROM
  2. *
  3. * read A/D from port E, pin 0-3, write to port B
  4. * port E pins 4-5 determine which A/D is read
  5. *
  6. ldx #$1000  ; needed for the brclr command
  7. ldaa #%10010000 ; Power up A/D with clock delay
  8. staa $39,x
  9. Main
  10. ldaa #%00010000 ; single scan, multi-mode, pins e0-3
  11. staa $30,x  ; write starts conversion
  12. Conversion_not_done
  13. brclr $30,x $80 Conversion_not_done
  14. ldab $0a,x  ; get port E digital inputs
  15. lsrb
  16. lsrb
  17. lsrb
  18. lsrb
  19. andb #$03  ; set bits 4-5 to 0-1 and set all others to 0
  20. abx   ; x = x + b
  21. ldaa $31,x  ; get value from pin E0, E1, E2, or E3
  22. ldx #$1000  ; needed for the brclr command
  23. staa $04,x  ; store it to port B
  24. bra Main  ; let's do it again

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed