【 phi lăng OK113i-S khai phát bản thí dụng 】 ứng dụng trình tự biên tả khống chế gpio hòa led
Hoàn cảnh:
Đáp kiến hư nghĩ cơ, sang kiến cộng hưởng văn kiện giáp, tại cộng hưởng văn kiện giáp trung dụng vscode biên tả. Cảo liễu cá sh văn kiện xuất lai biên dịch. Dụng sfpt công cụ hạ tái biên dịch đích trình tự đáo thiết bị bản tử.
Tại thiết bị đích điều thí xuyến khẩu hạ thí thí gpio hòa tâm khiêu đích led chẩm ma khống chế
gpio203 đích khống chế tựu thị na cá tại nữu khấu điện trì biên thượng đích
Hạch tâm bản tâm khiêu led đích khống chế
Trình tự biên tả
gpio203 đích khống chế bộ phân đích trình tự biên tả
Hạch tâm bản tâm khiêu bộ phân đích khống chế bộ phân đích trình tự biên tả
Hoàn chỉnh đại mã như hạ
#include<stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <string.h>
int main(int argc,char **argv[])
{
printf( "--- hello gpio 203---! \n" );
//control gpio203
FILE *export_f =fopen( "/sys/class/gpio/export", "w" );
if(export_f == NULL){
perror( "Error to open GPIO export file" );
return -1;
}
fprintf(export_f, "203" );
fclose(export_f);
chardirection_p[50];
snprintf(direction_p,sizeof(direction_p),"/sys/class/gpio/gpio203/direction");
FILE *d_f =fopen(direction_p,"w");
if(d_f ==NULL){
perror("Error to open gpio203 direction file");
return-1;
}
fprintf(d_f,"out");
fclose(d_f);
charvalue_p[50];
charcat_command[100];
snprintf(value_p,sizeof(value_p),"/sys/class/gpio/gpio203/value");
snprintf(cat_command,sizeof(cat_command),"cat %s",value_p);
FILE *value_f =fopen(value_p,"w");
if((value_f ==NULL)){
perror("Error to open gpio203 value file");
return-1;
}
for(inti=0;i<6;i++){
fprintf(value_f,"1");
fflush(value_f);
system(cat_command);
sleep(2);
fprintf(value_f,"0");
fflush(value_f);
system(cat_command);
sleep(2);
}
fclose(value_f);
FILE *unexport_f =fopen("/sys/class/gpio/unexport","w");
if(unexport_f ==NULL){
perror("Error to open gpio unexport file");
return-1;
}
fprintf(unexport_f,"203");
printf("--- hello gpio heartbeat leds---! \\\\n");
charbrightness_p[50];
charcat_command2[100];
snprintf(brightness_p,sizeof(brightness_p),"/sys/class/leds/heartbeat/brightness");
snprintf(cat_command2,sizeof(cat_command2),"cat %s",brightness_p);
FILE *v_f =fopen(brightness_p,"w");
if((v_f ==NULL)){
perror("Error to open heartbeat leds brightness file");
return-1;
}
for(inti=0;i<6;i++){
fprintf(v_f,"1");
fflush(v_f);
system(cat_command2);
sleep(2);
fprintf(v_f,"0");
fflush(v_f);
system(cat_command2);
sleep(2);
}
fclose(value_f);
return0;
}
Biên dịch trắc thí hạ tái đáo bản tử khán kết quả