Страниц: [1]
  Печать  
Автор Тема: Pomogite s LPT  (Прочитано 2517 раз)
elektronik
Участник
*
Offline Offline

Сообщений: 0


Просмотр профиля
« : Марта 13, 2004, 07:46:22 pm »

Dobrij  den pomogite s LPT portom. U menia est kod.  Ja hocu ego skompilirovat pod "PhAB" no nikak ne polucaetsia.
U menia "QNX NC". Zdes est 3 funkcii no kak sozdat otdelnih 3 funkcii esli naprimer na modul okna polozit "button" to v "callbacks" na "activate" vid mozno opredelit 1 funkciju. A mozet i nenado sozdovat otdelnih 3 funkcii.Pomogote kto mozet esli udastsia etot kod skompilirovat podskazite
kak vi eto zdelali.Zaranije spasibo.
Vot kod:
#include <stdio.h>
#include <sys/neutrino.h>
#include <stddef.h>
#include <stdlib.h>
#include <sys/dispatch.h>
#include <hw/inout.h>

int intf=0;

struct sigevent event;

const struct sigevent* lptint( void* p, int  b)
{
     return (&event);
}


void *int_thread (void *arg)
{
   unsigned int id, time = 0;
   ThreadCtl(_NTO_TCTL_IO, 0);
   
   event.sigev_notify = SIGEV_INTR;
   out8(0x37A, 0x10 );// enable interrupt    
   id = InterruptAttach( 7, lptint, NULL, 0, 0 );      
   
   printf(" thread INT id = %d
", id );
   printf(" thread Hello LPT
" );
   
   while (1)
    {
        InterruptWait (NULL, NULL);
      printf("thread INT = %d
", time++ );
   }
   
   InterruptDetach( id );   
}      



int main(void)
{
   int time=0;
   
   ThreadCtl(_NTO_TCTL_IO, 0);
    pthread_create (NULL, NULL, int_thread, NULL);
   
   while( 1 ) {
   
      printf("Waiting .. %d
", time++ );
      out8(0x378,0);
       sleep( 1 );
       out8(0x378, 1);
       sleep( 1 );
   }
   printf("leaving programm ..
" );
}
Записан
Страниц: [1]
  Печать  
 
Перейти в: