树莓派C语言开发

ops/2024/9/24 14:22:24/

安装C语言编译器和开发工具

sudo apt update
sudo apt install build-essential

此命令会安装GCC编译器以及make等其他工具,这些都是C语言程序开发过程中必需的。

配置文本编辑器

树莓派默认安装了几个文本编辑器,如Nano和Vim。如果你对这些编辑器不熟悉,或者想寻找一个更友好的图形界面编辑器,可以考虑安装Geany或Code::Blocks。

我个人倾向于使用Geany,它轻量级,界面友好,支持多种编程语言,非常适合初学者。安装Geany非常简单:

sudo apt install geany

正常来说,树莓派桌面有自带的

编写一个简单的C程序

让我们从编写一个简单的C程序开始,该程序将打印“Hello, Raspberry Pi!”到终端。首先,打开你安装的文本编辑器,输入以下代码:

#include <stdio.h>int main() {printf("Hello, Raspberry Pi!\n");return 0;
}

保存文件为 hello_pi.c

编译和运行程序

保存你的C程序后,接下来需要编译它。打开终端,先导航到你保存文件的目录!!!,然后运行以下命令来编译程序:

gcc hello_pi.c -o hello_pi

这条命令会调用GCC来编译源文件hello_pi.c,并将输出文件(即可执行文件)命名为hello_pi

编译完成后,通过输入以下命令来运行程序:

./hello_pi

你将看到终端输出了Hello, Raspberry Pi!。成功

举下一个例子

建立led.c


#include <wiringPi.h>
#include <unistd.h>
#include <stdbool.h>
int main()
{
//初始化环境wiringPiSetup();
//设置PIN0为输出模式 对应于,wiringpi的图标号应该是0.这里特别注意pinMode(0,OUTPUT);while(true){sleep(1);
//写入高电平digitalWrite(0,HIGH);sleep(1);
//写入低电平digitalWrite(0,LOW);}}

编译等命令

gcc -Wall -lwiringPi -o blink led.c

执行

./led


http://www.ppmy.cn/ops/40110.html

相关文章

CMake创建跨平台OpenGL工程(学习笔记)

一、跨平台环境基本配置 1、环境搭建 1&#xff09;linux OpenGL环境搭建参考&#xff1a;ubuntu18.04 OpenGL开发&#xff08;显示YUV&#xff09;_ubuntu opengl-CSDN博客 https://blog.51cto.com/cerana/6433535 本文使用的是QTCreator 2&#xff09;windows下环境搭建…

【CV】计算机视觉是什么?

计算机视觉是一门研究如何使机器“看”的学科&#xff0c;旨在实现从图像或视频中获取信息的技术和方法。它涵盖了图像处理、模式识别、机器学习等多个领域&#xff0c;是人工智能领域的重要分支之一。以下是计算机视觉的一般概要介绍&#xff1a; 概要介绍&#xff1a; 图像…

一对一WebRTC视频通话系列(四)——offer、answer、candidate信令实现

本篇博客主要讲解offer、answer、candidate信令实现&#xff0c;涵盖了媒体协商和网络协商相关实现。 本系列博客主要记录一对一WebRTC视频通话实现过程中的一些重点&#xff0c;代码全部进行了注释&#xff0c;便于理解WebRTC整体实现。 一对一WebRTC视频通话系列往期博客 一…

小红的字符串构造和小红的排列构造

小红的字符串构造 小红希望你构造一个长度为nnn的、仅包含小写字母的字符串&#xff0c;其中恰好有kkk个长度大于1的回文子串。你能帮帮她吗&#xff1f;输入两个整数n,k&#xff0c;用空格隔开。 1≤n≤10^5,0≤k≤n/2.一个字符串。如果有多解输出任意即可。 可以证明&#x…

SpringSecurity集成第三方登录

SpringSecurity 集成第三方登录 认证及自定义流程 首先我们提供一个实现了AbstractAuthenticationProcessingFilter抽象类的过滤器&#xff0c;用来代替UsernamePasswordAuthenticationFilter逻辑&#xff0c;然后提供一个AuthenticationProvider实现类代替AbstractUserDetail…

GAME101-Lecture06学习

前言 上节课主要讲的是三角形的光栅化。重要的思想是要利用像素的中心对三角形可见性的函数进行采样。 这节课主要就是反走样。 课程链接&#xff1a;Lecture 06 Rasterization 2 (Antialiasing and Z-Buffering)_哔哩哔哩_bilibili 反走样引入 ​ 通过采样&#xff0c;得到…

初级银行从业资格证知识点(十)

中国银保监会近年来启动了银行业保险业清廉金融文化建设活动&#xff0c;旨在通过全覆盖参与、全过程融入、全方位提升&#xff0c;增强金融从业人员清廉从业意识&#xff0c;培育清廉金融理念&#xff0c;通过文化的渗透力和影响力&#xff0c;厚植清廉根基&#xff0c;提升金…

使用海外云手机为亚马逊店铺引流

在全球经济一体化的背景下&#xff0c;出海企业与B2B外贸企业愈发重视海外市场的深耕&#xff0c;以扩大市场份额。本文旨在探讨海外云手机在助力亚马逊店铺提升引流效果方面的独特作用与优势。 海外云手机&#xff0c;一种基于云端技术的虚拟手机&#xff0c;能够在单一硬件上…