现在我先说一下的心情,对,就是有点冲动的那种。平时作为一个Python程序员写很多代码也没这么高兴过/手动流汗滑稽。
废话我也就不多说了,在这个过程中我遇到一些问题从今天早上搞到现在,也是挺累的。
VS 我之前也有下载过,但是基本没用过,就是因为要开发树莓派的程序我才用了。
最后实现了我只需要在VS中重新编译,以及在我的配置文件修改是否需要编译和是否要添加多的编译参数实现在树莓派端直接编译和运行!>___<
第一步就是安装我们写代码需要的一些库:
什么,你说VS 不能激活?
https://blog.csdn.net/gaokao2011/article/details/78433593
我反手就给你个链接!
现在我们新建第一个程序
这里新建成功之后是个后缀为cpp的c++文件,我们这个在解决方案管理器里面重命名给他改成main.c,代码内容我也改了一些
#include
#include
// LED Pin - wiringPi pin 0 是 BCM_GPIO 17。
//利用 wiringPiSetupSys 进行初始化时必须使用 BCM 编号
//选择其他 pin 编号时,请同时使用 BCM 编号
//更新 Property Pages - Build Events - Remote Post-Build Event 命令
//它使用 gpio 导出进行 wiringPiSetupSys 的设置
#define LED 1
int main(void) {
if (wiringPiSetup() == -1) {
printf("Setup error!");
}
//wiringPiSetupSys();
pinMode(LED, OUTPUT);
int i = 5;
while (i) {
digitalWrite(LED, HIGH); //开
delay(500); // 毫秒
digitalWrite(LED, LOW); //关
delay(500);
i--;
}
return 0;
}
这里点击工具里面 点选项然后 点跨平台
到这里之后我们可以发现 他可以编译,也可以成功显示成功编译。
但是实际上他是用的g++编译的而且这里加不了我们想要的参数,-lwiringPi
http://www.cnblogs.com/Harley-Quinn/p/7465517.html
这个博客我看了,也试过了但是不能达到我想要的效果。
我自己百度,找了两三个小时,想改它的解决方案的属性里的命令行,但是没有找到“解决方案” #____<
但是我改不了,而且它如果这个项目里面,我想新建单个的C文件,我想在这个项目里可以加文件夹,文件夹下面有我的树莓派的测试的代码例子,我可以点亮LED灯等等操作,也是不行,最后我作为一个Python程序员,发现了VS的这个操作它会把要编译文件上传到我新建的这个项目的文件夹 (这里我在VS创建的项目名称就叫树莓派)有时候这里使用VS重新生成会报错,但是不影响我们主要是看Text.txt这个文件有没有被修改。Text.txt 是我自己新建的
这里传送门为:
https://blog.csdn.net/qq_36848370/article/details/82597157
也就是这个步骤:
这里我就想着通过修改这个Text.txt文件的内容让Python来编译和运行的操作,
于是我写了如下代码:
这里我上传到码云了,也提高下我的访问量。。。>___<
https://gitee.com/1428743731/auto_compiler
下载之后在自己的linux账户下运行即可(这里就是我们的树莓派上运行,码云上有说明运行方法)
这是运行日志
我这里是用的VNC Viewer软件连接的这是两个终端。。。
这里我重点要说明一下这个Text.txt这个文件的配置
# 文件名为1的会编译后运行5秒后结束线程
# 文件名后面加了-args会在编译的时候加上这个参数,可以是多个,中间用空格隔开
# 编译的参数要写在运行的后面
# 如果你添加的新的C文件在编译的时候需要添加其他的参数,比如
#gcc /home/pi/projects/树莓派/main.c -o /home/pi/tmp/shumeipi/main -lwiringPi -lpthread
# 你可以这样写main-args=-lpthread(即文件夹名+-agrs=要加的参数中间可以用空格隔开)
如果不需要编译那么配置为:
文件名=0
需要编译就是:
文件名=1
#需要编译后运行就是
文件名=2
下面是示例
main-args=-lpthread
mc=1
main=2
rgb_led=0
好了,有问题随时留言我。