c - gcc 编译器中的 outp() 对应项是什么?

标签 c linux gcc parallel-port

在我的学校里,我的项目是制作一个控制 LED 灯的简单程序

我的教授说 outp() 在 conio.h 中,我知道 conio.h 不是标准的。

outp() 的例子

//assume that port to be used is 0x378
outp(0x378,1); //making the first LED light

提前致谢

最佳答案

只要您对 /dev/port 具有写入权限(root 或某些用户具有写入权限)。您可以在 shell 中使用:

echo -en '\001' | dd of=/dev/port bs=1 count=1 skip=888

(注意 888 十进制是 378 十六进制)。我曾经用这种方式完全用 shell 脚本为 Linux 编写了一个可工作的并行端口驱动程序。 (虽然它相当慢!)

你可以像这样在 Linux 中用 C 实现:

f = open("/dev/port", O_WRONLY);
lseek(f, 0x378, SEEK_SET);
write(f, "\01", 1);

显然,添加#include 和错误处理。

关于c - gcc 编译器中的 outp() 对应项是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7634549/

相关文章:

c - 关于无限循环和内存崩溃

c - 我有一个点在图像周围弹跳。需要计算像素组(物体表面)的反射角

node.js - NodeJS - 错误 : connect ECONNREFUSED 127. 0.0.1:port (chrome-remote-interface)

c++ - 如何计算内存分配的数量

c - 如何为 Glade 的 GTK 按钮分配命令?

c - header 中的 EXPORT_SYMBOL 导致 "exported twice"错误

c - 基本 C 位运算示例

Linux - 替换字符串

c - 如何在不使用 LD_LIBRARY_PATH 的情况下链接 makefile 中共享库的特定版本?

c - 如何在 Linux 中使用 C 在单独的终端上编写?