Problema :temporizador 8254 del pc como controlador de int
| #1 Problema :temporizador 8254 del pc como controlador de int |
| #2 |
|
_Eduardo_
|
Puede que te este jodiendo Windows.
En lugar de redireccionar Int08 (Timer Interrupt) , redirecciona la Int 1Ch (User Timer Tick). Int 1Ch no es una interrupcion por hardware, es llamada en cada ciclo por Int 08 y normalmente apunta a un IRET. Es una interrupcion mas 'legal' y no necesita enmascarar interrupciones ni el out2020 final. |
|||||||||||
|
|
||||||||||||
| #3 |
|
Sylivan
|
no trabajo bajo windows en la simulacion, trabajo bajo ms-dos, pero de todas formas probare, aun asi puede ser que haya algo raro en el programa, si lo veis decidmelo
|
|||||||||||
|
|
||||||||||||
| #4 |
|
_Eduardo_
|
Hago correr tu programa en una ventana de XP y entra lo mas bien en la rutina de retardo.
El unico desliz es que lo hace cada 1.5" porque esta mal el valor de reinicio del contador (ahi esta mal pero en otra parte esta bien) |
|||||||||||
|
|
||||||||||||
| #5 |
|
Sylivan
|
|
|||||||||||
|
|
||||||||||||
| #6 |
|
_Eduardo_
|
Al Turbo Debugger no le gusta que le cambien 'algunos vectores' y le modifiquen 'algunas direcciones de memoria'.
Hace mucho que no programo bajo DOS asi que no me pidas detalles porque no me acuerdo, tampoco investigue mucho, a medida que me encontraba con algo y concluia que era el debugger veia como esquivarlo. Donde mas jode es con las ejecuciones pasa a paso, ahi en general zafas ejecutando de corrido el bloque problematico con un breakpoint al final, despues seguis paso a paso. Con las interrupciones, lo que usaba era insertar rutinas auxiliares que me escribieran algo en pantalla o en memoria. En tu programa puse un macro sencillo que incrementa un numero decimal en pantalla, (no usa el DOS), si ves actividad, es porque esta pasando por ahi. El macro que use fue: Flash_Dec MACRO Ypos,Xpos ; Ypos,Xpos posicion en pantalla LOCAL flash, skip jmp $+3 flash db '0' push es di ax mov ax,0B800h mov es,ax mov di, 2*(80*Ypos+Xpos) inc flash mov al,flash cmp al,'9' jbe skip mov al,'0' mov flash,al skip: mov es:[di],al pop ax di es ENDM A la rutina retardo le inserte el macro en dos puntos: retardo proc far push ax push bx push ds mov ax,Data ; mov ds,ax ;Apuntamos a Data, para la variable tiempo Flash_Dec 10,1 mov al,tiempo cmp al,00h jz final Flash_Dec 14,1 dec al ;Decrementamos en 1 el tiempo mov tiempo,al ........................................................... Lo ejecuto y los contadores se van incrementando --> OK --> se pueden borrar. El error de reinicio estaba en secuen1 mov tiempo,28d ;Restauramos el tiempo para interrupciones 18.2ms*28=0,5s Y estaba bien en secuen2 mov tiempo,10d ;Restauramos el tiempo para interrupciones 54.92ms*10=0,5s |
|||||||||||
|
|
||||||||||||
| #7 |
|
Sylivan
|
eduardo muchisimas gracias por la ayuda prestada, y por las molestias que te has tomado, te lo agradezco un monton
|
|||||||||||
|
|
||||||||||||
|
| Temas de interés | |
|---|---|
| Destacado: Data cable siemens RS-232 | |
| Data Cable Nokia RS-232: Forum | |
| Diagrama de construcción data cable Nokia DKU-5 (USB) | |
| Data cable para siemens c65 | |
| Construcción del data cable Nokia 3595 | |
| Foros de Electronica |
| ||
Cuestiones Elementales de Electrónica ||
Fuentes de alimentacion ||
Circuitos de radio ||
Diseño de circuitos en general || || Sistemas de Audio: Preamplificadores, Ecualizadores || Amplificadores || Reparación || Discusión || || Microcontroladores y sistemas embebidos || Circuitos logicos combinacionales y secuenciales || Interfaces y Programacion || Dudas en general || Sistemas de Video || PC Hardware || Telematica y comunicaciones || Tecnologias moviles || Software Electronico || Robotica, Domotica y Mecatronica || Autotrónica || Automatizacion, Electronica industrial y de Potencia || Documentacion, circuitos y esquemas || Donde Las Ideas Convergen... || Tutoriales y Manuales || Proyectos Prácticos || |
Site Map
© Foros de Electrónica
Comunidad Internacional de Electrónicos
Powered by phpBB © 2001, 2005 phpBB Group
Acerca de || Política de privacidad
Generada en = 0.15687 segundos, Consultas = 15
© Foros de Electrónica
Comunidad Internacional de Electrónicos
Powered by phpBB © 2001, 2005 phpBB Group
Acerca de || Política de privacidad
Generada en = 0.15687 segundos, Consultas = 15

