欢迎来到 常识词典网 , 一个专业的常识知识学习网站!
[ Ctrl + D 键 ]收藏本站
答案 1:
直接操作吧,只不过LINUX下的话要按照LINUX提供的“框”写,比如open,read,ioctl等函数都要写。答案 2:
系统操作GPIO的方式与WIN差不多 底层都是汇编语言所编写,而且LINUX的GCC会支持一些拓展的标准以达到操作底层的目的。作为程序员,想要操作GPIO只能遵循POXIS规范,使用linux的模块机制进行操作 具体可以买linux驱动相关书籍答案 3:
提问者是不是写单片机程序?写单片机C程序的时候会include一个头文件,那个头文件里会定义特殊功能寄存器地址等等,在其他嵌入式处理器里(ARM,DSP等)同样有那些文件,在处理器复位后还没有进入到C程序-in()之前做好一切准备工作。比如S3C2410就有2410init.s,2410addr.s,memcfg.s,option.s等等一堆文件。在未用操作系统的项目里,这些文件都是要添加到工程里的,这部分代码就是所说的“启动代码”。而若你要移植上操作系统,则在操作系统启动时,会先有一个引导系统启动的程序Bootloader启动,相当于X86PC的BIOS程序,而Bootloader里,就包含了前面所说的启动代码文件。只要有了那些文件,无论你是写在操作系统下的驱动,还是写-机程序,都可以不用像汇编里那样非要写地址或者定义地址才能操作IO,而是直接用定义好的名字,比如rGPFDAT=0x0f(S3C2410举例)。不知道你明白了没有?一开始写的答案很简单,但是知乎上的同学都很认真的回答问题,我就静下心来回答一下。我不是高手,好久没接触这方面东西了,回答之中不恰当之处,欢迎大家指正。下一篇:魔兽帐号被盗,但是我半年没玩了,请教被盗的可能的途径? 下一篇 【方向键 ( → )下一篇】
上一篇:对论坛(discuz和p-pwind架构等)研究的人不多,是不是这个形式没有什么商业前途? 上一篇 【方向键 ( ← )上一篇】
快搜