elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


  Mostrar Temas
Páginas: 1 [2]
11  Informática / Electrónica / Error en las interrupciones por overflow del timer en: 2 Agosto 2006, 12:22 pm
HOla, estoy trabajando con el emulador Softec inDART-HC08 y un micro MC908JL8CPE. En él tengo conectado un LED al PTA_PTA0, un zumbador al PTD_PTD3 y 4 switchs en PTA_PTA1, PTA_PTA2, PTA_PTA3 y PTA_PTA4.

Tengo el siguiente codigo en C escrito. Estoy trabajando con el Freescale CodeWarrior.
Cuando voy a compilar me da un error extraño. Me dice "Empty declaration" en la rutina para la interrupción.

Código:
<?php

#include "hidef.h"
#include "derivative.h" /* include peripheral declarations */


//-- Valor para conseguir overflow cada 100ms
#define T100ms  0x0EF7

void rsi_ov1 (void) interrupt 6
{
  //-- Desactivar flag de interrupcion
  T1SC=(~0x80);
//
//-- Cambiar de estado bit 0 del puerto B
pitar(1);
}

#pragma DATA_SEG SHORT _DATA_ZEROPAGE
void delay (unsigned int dly);
void pitar (int parametro);
void luz (int parametro2);
void leerp (void);
int leido;
int i;
unsigned char valor;



void main (void)
{
       

         //***Inicialización
         
         EnableInterrupts                        // Enables Global Interrupt
         CONFIG1 |= 0x01;                        // Disables COP

         DDRD_DDRD3=1; //Zumbador as output
         DDRA_DDRA0=1; //LED as output
         
         DDRA_DDRA1=0; //Switch as input
         DDRA_DDRA2=0; //Switch as input
         DDRA_DDRA3=0; //Switch as input
         DDRA_DDRA4=0; //Switch as input
         
         PTAPUE_PTAPU1=1;  //Pullup
         PTAPUE_PTAPU2=1;  //Pullup
         PTAPUE_PTAPU3=1;  //Pullup
         PTAPUE_PTAPU4=1;  //Pullup
         
          /*-----------------------------*/
        /*- Configurar el temporizador */
        /*-----------------------------*/
T1SC = 0x76;    // Prescaler: Div entre 64

//-- Establecer modulo del contador
//-- IMPORTANTE!: Se debe realizar en este orden
//-- primero la parte alta y luego la baja
T1MODH = 0x0E;   // Parte alta
T1MODL = 0xF7;   // Parte baja

//-- Habilitar las interrupciones
_asm CLI _endasm;
//-- Activar temporizador
T1SC&=~(0x20);

        //***
       
       
        for(;;) { // Forever
   
         //pitar(1);
         //luz(0);
        // leerp();
         
         }
}

void delay (unsigned int dly)
{
int i;

do
{
for(i=0; i<100; i++)
;
}
while(dly-- > 0);
}

     
void pitar (int parametro)
{
if (parametro==0)
{
PTD_PTD3=0;
}
else
{
PTD_PTD3=1;
}
}

void luz (int parametro2)
{
if (parametro2==0)
{
PTA_PTA0=0;
}
else
{
PTA_PTA0=1;
}
}

void leerp (void) {
leido=PTA_PTA1+PTA_PTA2+PTA_PTA3+PTA_PTA4;
}

//////////////////////////////////////////////////////////////////////////////
// IRQ Interrupt Handler
// ---------------------
// This subroutine is needed to implement the "Halt" debugging command.
//////////////////////////////////////////////////////////////////////////////
void irq_isr (void)
{
asm {
wait_irq:
        bil     wait_irq                        // Waits for the IRQ signal to go high
        swi                                     // Jumps to monitor code
        rti
        }
}

Alguien sabe como solucionar estos errores???

Graciass

Salu2 ;)
12  Informática / Electrónica / Programacion en sobre micro Motorola MC68HC908JL8 en: 31 Julio 2006, 09:15 am
Hola, yo siempre he estado trabajando sobre micros programando en ASM pero ahora al dejarse de fabricar un modelo que yo utilizaba me veo obligado a utilizar otro micro distinto pero programando en C.

En C más o menos me manejo, pero para aplicaciones para ordenador. Algo me he mirado también sobre como programar PICs en C y ya tengo una idea.

El micro con el que tengo que trabajar es un Motorola MC68HC908JL8. Yo ya le tengo aquí montado con un LED en el PTA_PT0 pero no se como hacerlo funcionar.
Me gustaría que si alguien a trabajado antes con este micro que cuente que tal le fue y si alguien sabe donde puedo encontrar algun manual o ejemplos de codigo fuente pues mejor que mejor.

Muchas gracias,
Salu2  ;)
13  Programación / Programación Visual Basic / Evento OnIMWindowCreated en la API de Messenger en: 29 Junio 2006, 14:08 pm
Estoy intentando crear un programa que cierre la ventana de conversación del messenger si esta es de cierto contacto (encarta@conversagent.com x ejemplo xD) usando la API de Messenger.

El código que uso es el siguiente pero es como si no me detectara que se abre la ventana ni nada. A ver si alguien me sabe ayudar.

Código:
Public WithEvents MSN As Messenger 'API de Messenger
Private WithEvents objMessenger As MessengerAPI.Messenger

Private Sub Form_Load()
Set objMessenger = New MessengerAPI.Messenger
Set MSN = New Messenger
End Sub

Private Sub objMessenger_OnIMWindowCreated(pIMWindow As Object)
Dim Contactoshablan As IMessengerContacts
Dim ventana As IMessengerConversationWnd
Set ventana = pIMWindow
Set Contactoshablan = ventana.Contacts
If Contactoshablan.SigninName = "encarta@conversagent.com" Then
ventana.Close
End If
End Sub

Salu2  ;)


14  Programación / Programación Visual Basic / Ejecutar aplicación infectada = inyección en un proceso ?? en: 27 Junio 2006, 21:57 pm
Pues tenía esa pequeña duda. Si nos inyectamos en un proceso podemos pasar desapercibidos por muchos firewalls. Mi duda es infectando un ejecutable que tiene permisos por el firewall también podríamos pasar desapercibbidos.

A ver si alguien sabe responderme

Salu2  ;)
15  Programación / Programación Visual Basic / API para usar el NET SEND en VB de forma anonima en: 26 Mayo 2006, 22:41 pm
Hola!
Estoy con un código de la API-Guide que lo que hace es a través de la API NetMessageBuff erSend enviar un mensaje por LAN como si fuera un "net send".
El código que viene es este:

Código:
Código:
Private Declare Function NetMessageBufferSend Lib _
  "NETAPI32.DLL" (yServer As Any, yToName As Byte, _
  yFromName As Any, yMsg As Byte, ByVal lSize As Long) As Long
Private Const NERR_Success As Long = 0&
Public Function SendMessage(RcptToUser As String, _
   FromUser As String, BodyMessage As String) As Boolean
 
   Dim RcptTo() As Byte
   Dim From() As Byte
   Dim Body() As Byte

   RcptTo = RcptToUser & vbNullChar
   From = FromUser & vbNullChar
   Body = BodyMessage & vbNullChar

   If NetMessageBufferSend(ByVal 0&, RcptTo(0), ByVal 0&, _
        Body(0), UBound(Body)) = NERR_Success Then
     SendMessage = True
   End If

End Function
Private Sub Form_Load()
    'Example created by X-MaD (x-mad@zolnetwork.com)
    'Visit his website at http://www.zolnetwork.com/x-mad
    Dim RetVal As Boolean
    RetVal = SendMessage("Utente", "FromUser", "BodyText")
End Sub


Pues bien. Asi, si tienes el servicio Messenger activo, funciona. El  caso es que todo lo hace bien excepto lo de poner el From que se lo come en la funcion y pone un ByVal 0&.
He pensado que para conseguir que mandara el From podría cmabiar una parte de la función:

   If NetMessageBuff erSend(ByVal 0&, RcptTo(0), From(0), _
        Body(0), UBound(Body)) = NERR_Success Then
     SendMessage = True
   End If

Pero  al hacer esta modificación deja de funcionar. Alguien sabe como hacer que funcione??

Gracias y salu2
16  Programación / Programación Visual Basic / Enviar caracter nulo (0 hexadecimal en ASCII)a traves de MSComm en: 7 Abril 2006, 21:38 pm
Estoy creando un programa para Windows Mobile con eVB 3.0 que se conecta mediante el puerto RS232 con un dispositivo. El caso es que la información que transmito la debe convertir a hexadecimal ya que es lo único que entiende el dispositivo. Yo la cadena que tengo que transmitir de la PDA al dispositivo es:(la H significa que es un valor hexadecimal)

Citar
55H 2H 1H 2H 3H 4H 5H 6H 7H 8H 9H 0H 8H 7H 6H 5H y el checksum XoR de toda la cadena.

Lo que hago es pasarlo a Ascii y luego enviarlo. La función que cree para hacerlo es la siguiente:

Código:
Function pascii(ByVal fdez As String) As String
pascii = Chr(CInt("&H" & fdez))
End Function

Hasta aquí todo bien. lo que hago es poner:
Código:
Comm1.Output = pascii(55) & pascii(2) & .....

El problema viene cuando tiene que pasar el 0 ya que tiene que crear un valor nulo. He probado con vbnullstring pero me envia un 0decimal. Mi pregunta es si alguien sabe que hago para pasar ese 0 a ascii.

Gracias de antemano
salu2
17  Programación / Programación Visual Basic / Sobrescribiendo y eliminando boot.ini en: 17 Enero 2006, 20:10 pm
Hola, yo utilizo el siguiente código para sobrescribir el boot.ini con lo que yo quiera. (Ya se que si Windows no está instalado en la carpeta "\windows" no funcionaria). El caso es que como el boot.ini está oculto y protegido, Visual basic da error denegando la acción.
Quería saber si alguien sabe como hacerlo o si sabe como borrarlo (kill boot.ini) sin que de ese error.
Gracias

Dim win
Dim sys
Set obj = CreateObject("Scripting.FileSystemObject")
Set win = obj.GetSpecialFolder(0)
win = Replace(win, "WINDOWS", vbNullString)
Open (win & "boot.ini") For Output As #1

18  Programación / Programación Visual Basic / Quitar carácteres de una variable en: 15 Enero 2006, 16:43 pm
Hola,
por más que he buscado no he encontrado como quitar algunos carácteres de una variable. Les explico. He creado un programa que devuelve unos valores hexadecimales y detrás de cada valor la letra "H" que indica que es un valor hexadecimal y yo quiero que posteriormente clicando en un button (por ejemplo) quitar las Hs de esa variable.
Por ejemplo:

Yo tengo este contenido en una variable:
45H73H74H65H20H65H73H20H65H6CH20H63H6FH6EH74H65H6EH69H64H6FH20H64H65H20H6CH61H20H76H61H72H69H61H62H6CH65H

Y quiero que al pulsar en un botón la variable se quede igual pero sin las Hs:
4573746520657320656C20636F6E74656E69646F206465206C61207661726961626C65

No se si me he explicado bien pero si no se entiende me lo comentais.

saludos,

Miguel
Páginas: 1 [2]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines