完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
【MYD-JX8MMA7】 (二)GPIO控制-Python&C 一、C语言LED 1.程序代码 /* Copyright 2018 Tronlong Elec. Tech. Co. Ltd. All Rights Reserved. */ #include <stdio.h> #include <stdlib.h> #include <stdint.h> #include <stdbool.h> #include <string.h> #include <getopt.h> #include <signal.h> #include <unistd.h> #include <errno.h> #include <libgen.h> /* Get array size */ #define ARRAY_SIZE(array) sizeof(array) / sizeof(array[0]) /* User-operable LEDs */ static char *g_leds[] = { "/sys/class/leds/user1", "/sys/class/leds/user1", "/sys/class/leds/user1", "/sys/class/leds/user1" }; /* Exit flag */ volatile bool g_quit = false; /* Short option names */ static const char g_shortopts [] = ":n:vh"; /* Option names */ static const struct option g_longopts [] = { { "number", required_argument, NULL, 'n' }, { "version", no_argument, NULL, 'v' }, { "help", no_argument, NULL, 'h' }, { 0, 0, 0, 0 } }; static void usage(FILE *fp, int argc, char **argv) { fprintf(fp, "Usage: %s [options]\n\n" "Options:\n" " -n | --number Number of LEDs, range of 1 to 4 \n" " -v | --version Display version information\n" " -h | --help Show help content\n\n" "", basename(argv[0])); } static void opt_parsing_err_handle(int argc, char **argv, int flag) { /* Exit if no input parameters are entered */ int state = 0; if (argc < 2) { printf("No input parameters are entered, please check the input.\n"); state = -1; } else { /* Feedback Error parameter information then exit */ if (optind < argc || flag) { printf("Error: Parameter parsing failed\n"); if (flag) printf("\tunrecognized option '%s'\n", argv[optind-1]);
} void sig_handle(int arg) { g_quit = true; } int main(int argc, char **argv) { int i = 0; int c = 0; int num = 0; int flag = 0; char cmd[64] = {0};
} 2、makefile 代码 tl_led_flash:tl_led_flash.c clean: rm -f tl_led_flash *.o *~ install: cp tl_led_flash $(PREFIX) 2.将代码文件和makefile文件上传到开发板 3.LED引脚查看 因为开发应用程序需要知道系统内LED的定义 4.代码编译和运行 5.开发板上蓝色LED正常按设计交替闪烁。 二、Python代码 1.python代码 Python代码文件尾椎是.py,python代码属于脚本文件,所以不用在进行编译,相对很方便。 #!/usr/bin/env python3 - - encoding: utf-8 - -''' [url=home.php?mod=space&uid=1455510]@file[/url] : tl_led_flash.py [url=home.php?mod=space&uid=26400]@TIME[/url] : 2020/04/26 09:05:54 [url=home.php?mod=space&uid=284375]@desc[/url] : None ''' here put the import libimport signal, time import os, sys, getopt version = "1.0" class Led(object): quit_flag = False
def sig_handle(signum, frame): print ("ctrl + c ...") Led.stop() def usage(): print ("Usage: %s [options]\n" "Options: \n" " -v | --version Display version information\n" " -h | --help Display help\n" % sys.argv[0]) if name == ' main ': """ parse parameter """ try: options, remainder = getopt.getopt(sys.argv[1:], 'vh', ['version', 'help']) for opt, arg in options: if opt in ('-v', '--version'): print ('version: %s' % version) exit(0) elif opt in('-h', '--help'): usage() exit(0)
led.flash_led() 2.代码上传至开发板 3.运行python文件 4.实际效果 蓝色LED指示灯交替闪烁。。。 |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
【米尔-紫光PG2L100H国产FPGA开发板试用】米尔-紫光PG2L100H国产FPGA开发板开箱评测
534 浏览 0 评论
【米尔-国产瑞芯微RK3568开发板试用体验】评测一 系统配置
461 浏览 0 评论
【米尔NXP i.MX 93开发板试用评测】5、安装Debian和排除启动故障
506 浏览 2 评论
【米尔NXP i.MX 93开发板试用评测】2、异构通信环境搭建和源码编译
665 浏览 2 评论
【米尔NXP i.MX 93开发板试用评测】05.OpenWRT的构建-构建完成和烧录
1181 浏览 0 评论
【米尔-瑞米派兼容树莓派扩展模块-试用体验】基于ROS系统的三麦轮小车自主导航
3528浏览 2评论
【米尔NXP i.MX 93开发板试用评测】5、安装Debian和排除启动故障
507浏览 2评论
【米尔NXP i.MX 93开发板试用评测】2、异构通信环境搭建和源码编译
667浏览 2评论
【米尔-瑞米派兼容树莓派扩展模块-试用体验】Free RTOS应用开发环境部署
1281浏览 1评论
【米尔-芯驰D9开发板- 国产平台试用】- 03- 外设接口测试-U盘、485总线
6783浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-9 17:40 , Processed in 0.843165 second(s), Total 67, Slave 50 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号