• am335x -- kio 控制接口


    //example
    #include <stdio.h>
    #include <stdlib.h>
    #include <unistd.h>
    #include <string.h>
    #define GPIO_TO_PIN(bank, gpio) (32 * (bank) + (gpio))

    int main(int argc, char * argv)
    {
            int i, n, fd;
            char num,val;
            int ret;
            fd = open("/dev/kio", O_RDWR);                //打开设备
            if (fd < 0)
            {
                printf("can't open /dev/kio! ");
                exit(1);
            }
            sleep(1);
            ioctl(fd, 1, GPIO_TO_PIN(1,22));                //设置gpio1-22为输出(user:led3)
            ioctl(fd, 0, GPIO_TO_PIN(2, 1));                //设置gpio2-1 为输入(p8-18)
            while (1)
            {
                    num = 1;
                    ret = write(fd,"1",GPIO_TO_PIN(1,22)); //置高
                    if(ret < 0)
                    {
                            perror("write");
                            return -1;
                    }
                    sleep(1);
                    ret = write(fd,"0",GPIO_TO_PIN(1,22));//置低
                    if(ret < 0)
                    {
                        perror("write");
                        return -1;
         }

          ret = read(fd, &val, GPIO_TO_PIN(2,1)); //读取电平

                 if(ret == 1) //高电平

                     printf("val==1 ");

                 if(ret == 0) // 低电平

                     printf("val == 0 ");

      }

    }

  • 相关阅读:
    YII2中andWhere多个or查询
    PHP中使用date获取上月最后一天出现的问题
    使用PHP生成并导出CSV文件
    如何开启MySQL慢查询日志
    PHP使用递归按层级查找数据
    PHP设计模式之单例模式
    Yii2中多表关联查询
    剑指Offer_编程题_合并两个排序的链表
    剑指Offer_编程题_反转链表
    Java自带的性能监测工具_jstack
  • 原文地址:https://www.cnblogs.com/zym0805/p/4276205.html
Copyright © 2020-2023  润新知