[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

/dev/lp0



>>  кто работал с параллельным портом в смысле программирования?
>>  тут понадобилось временный девайс сделать нули/единички с компа выдать.
>>  чтобы схему не собирать подумалось с парпорта выдать...
>> 
>>  ну и сунулся я в хаутушки, а что-то невнятно
>> 
>>  пишут что
>>  base_address+0 - егойная шина данных
>>  base_address+1 - входные линии управления
>>  base_address+2 - выходные линии управления
> 
> Это не про  /dev/lp0, это про гораздо более низкий уровень.
вот повсюду противоречивая информация на эту тему

=cut include/linux/lp.h
/* 
* bit defines for 8255 status port
* base + 1
* accessed with LP_S(minor), which gets the byte...
*/
#define LP_PBUSY  0x80  /* inverted input, active high */
#define LP_PACK   0x40  /* unchanged input, active low */
#define LP_POUTPA 0x20  /* unchanged input, active high */
#define LP_PSELECD  0x10  /* unchanged input, active high */
#define LP_PERRORP  0x08  /* unchanged input, active low */
/* 
* defines for 8255 control port
* base + 2 
* accessed with LP_C(minor)
*/
#define LP_PINTEN 0x10  /* high to read data in or-ed with data
out */
#define LP_PSELECP  0x08  /* inverted output, active low */
#define LP_PINITP 0x04  /* unchanged output, active low */
#define LP_PAUTOLF  0x02  /* inverted output, active low */
#define LP_PSTROBE  0x01  /* short high output on raising edge
*/
=cut

а lp.c соответственно его включает

вроде это совпадает с 
http://www.faqs.org/docs/Linux-mini/IO-Port-Programming.html

только не понятно к чему относится базовые адреса vs устройства.

в общем буду искать пример программы работы с этими портами :(


> /dev/lp0 - это интерфейс к ядерному драйверу, а это про доступ к
> железным портам ввода-вывода. Работать на таком уровне из userspace
> программ в Linux не полагается (хотя если очень хочется то можно - man
> ioperm). Обычно для работы на таком уровне пишется ядерный модуль.
про ioperm я читал, мне охота из скриптов покрутить портом, потому я
пока по этому варианту идти не хотел бы :(

> В общем, рекомендую поискать информацию про устройство Covox - была в
> свое  время популярна такая штука - устройство для создания звука,
> которое люди самостоятельно паяли из резисторов и вешали на параллельный
> порт. Драйвер Covox для Linux точно существовал.
ага, сейчас погуглю



Reply to: