0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

怎样用树莓派制作程序

454398 来源:工程师吴畏 2019-07-26 08:50 次阅读

不要害怕Pi

尽管他是一名狂热的计算机爱好者并且对微控制器非常热衷,但是当它第一次出现时我对Pi非常怀疑。该计算机基于ARM处理器,通常用于运行Linux,具有视频输出和USB输入,并包含GPIO标头。在观察Pi时,我会经常提出问题,包括:

“你如何编程Pi本身?”

“为什么我甚至需要一个如果它只是一台便宜的电脑?“

”Linux对于初学者来说是一个可怕的操作系统,那么这将如何使任何人受益?“

”几乎有没有基于它的硬件项目,那么它怎么能成为硬件控制器?“

”Pi对PIC18系列等微控制器有什么优势?“

虽然许多人可能不同意,但这些问题在Pi首次出现时是有效的。第一台Pi计算机没有网络并使用复合视频输出,这使得它与大多数现代计算机显示器不兼容,除非使用视频转换器。最重要的是,如果程序是用Raspberry Pi作为硬件控制器(类似于PIC)编写的,那么它有多容易?这段代码可以在启动时运行吗?学习有多难? Raspberry Pi是否有专用的外围设备,包括串口,I2C,SPI,定时器ADC等。由于这些问题,我隐藏在我的小洞穴中,堆叠的PIC芯片从未买过覆盆子皮。然而,Raspberry Pi经历了许多变化,其中一项最新的重大变化是板载Wi-Fi。包含板载Wi-Fi对于我决定不再担心和喜欢Pi是至关重要的,因为它很容易让Pi进入物联网领域,正如你所知道的那样(除非你一直生活在岩石下),电子行业的下一件大事。因特网访问对Linux也很重要,因为可以使用sudo apt-get命令轻松添加软件包,而Python等语言可以通过PIP轻松添加库。那么你如何编程Pi?您可以期待什么以及您应该从哪种语言开始?

Python喜欢Pi

Raspberry Pi通常随附Raspbian的副本,如果你还没有它,对于初学者来说绝对是必须的。如果您没有预先编程的SD卡,操作系统可能部分难以安装,为您提供近乎完整的编程和办公室使用环境。列出的编程IDE包括:

BlueJ Java IDE

Geany Programmers Editor

Greenfoot Java IDE

Matematica

Node-Red

Python 2和3

Scratch 1和2

Sense HAT模拟

Thonny Python IDE

Wolfram

最多您可以在Raspberry Pi上使用的常用语言包括C,C ++,Java和Python。 Geany IDE为创建C程序提供了一个简单的无命令行方法,而BlueJ和Greenfoot对Java开发非常有用。 Python程序可以使用Python 2 IDE,Python 3 IDE(推荐使用Python 2)和Thonny编写。如果您不熟悉Python,Thonny可能是标准Python IDE的更好替代品,因为它是为初学者设计的,具有简单的调试系统,可以逐步执行Python代码并看到变量。

您应该使用哪种语言?不知道!话虽如此,经过大量研究并考虑了我的需求(物联网,语音识别,GUI应用,游戏和图形例程),我认为Python是Raspberry Pi的前进方向。

为什么选择Python ?首先,Python是一种非常容易直接进入的语言(特别是如果你已经拥有编程经验),因为几乎没有什么东西可以搞乱。例如,Java程序在执行之前需要进行大量设置的主要功能,而C程序需要make文件,并且很难与GUI等现代功能一起使用。如果打开Python IDE,创建一个新文件,输入“Print(”Hello“)”并运行它,它将打印“Hello”。在运行基本程序时,没有比Python更简单的计算机语言,但可以设计高级程序,其他主要语言也在其脚趾上。当然,与其他语言相比,Python的主要问题是速度慢,但对于大多数项目,Python都适合。

你的第一个Python程序

学习任何计算机语言时,有三种方法可以学习。第一种方式涉及数小时的示例代码和教程,第二种方式是做同样但不喜欢它,第三种方法是想一个你会发现有用的程序,然后尝试制作它。所以我的第一个Python程序,不管你信不信,是一个基于PC的示波器,它涉及来自串行端口的流数据,然后使用PyGame以图形方式显示数据。应该说我是一名经验丰富的程序员,所以我知道在制作程序时应该注意什么,但这不应该阻止你尝试更复杂的东西。

任何语言的黄金法则是GIYF:谷歌是你的朋友。您不会相信Python必须提供的每个库的教程,示例代码和其他源代码的数量。如果您遇到困难而无法解决问题,您可以使用Google错误代码并在线询问其他人。您有机会在10分钟内解决您的问题。

现在,开始营业了!您需要首先加载Python 3 IDE,可以通过单击Raspberry Pi Logo开始菜单(左上角)来完成。单击编程,然后单击Python 3.将弹出一个窗口,这是一个主要的Python接口,可用于直接输入代码或用作Python程序的控制台输出。在主控制台窗口中,您需要单击文件》新建文件,然后在弹出的窗口中单击“另存为”并保存文件。文件的名称无关紧要,但现在只需将其命名为“MyFirstProgram”。保存后,输入以下代码,然后保存文件。

A = 10

B = int(input(“Enter a number: ”))

print(A + B)

使用复制的代码保存文件,然后按F5或运行》运行模块运行程序。您应该被带到主Python控制台并被提示“输入一个数字:”。然后,当您输入一个数字时,控制台应该打印您输入的数字加上10.但是这里发生了什么,为什么会发生?

Python逐行执行代码,与寻找主函数的其他语言不同,Python从文件的第一行执行代码。所以在我们的例子中,Python做的第一件事是创建了一个名为A的变量(我们可以为其分配数字),并为其赋值10.

A = 10

Python执行的第二条指令是创建名为B的变量,然后为其分配用户输入的值。用户输入可以通过使用input()函数在Python中获得,如果我们在输入函数中放入一些文本,Python程序将在获取用户输入之前打印它。所以在我们的例子中,我们想要打印字符串“输入数字:”,所以为了做到这一点,我们将这个字符串放入函数中。但输入返回一个字符串(一个书面句子)而不是一个数字(整数),所以要将用户输入转换为数字,我们在输入函数旁边加上int。

int(输入(“输入”)一个数字:“))

最后一条指令采用变量A和B,然后将两者加在一起。然后将结果打印到控制台窗口,这标志着程序的结束!

打印(A + B)

这个程序尽管很小,但它使用了许多编程范例,包括函数,变量和转换,但这些都非常容易理解。虽然本文不会深入讨论,但您已经可以看到Python的简单性以及如何让程序快速运行。

结论

Raspberry Pi是一款出色的单板计算机,具有大量CPU功能,适用于大多数用户应用程序,GPIO适用于机器人等硬件项目,以及用户友好的Linux发行版,这意味着即使是那些对编程完全不熟悉的人应该没有问题!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 程序
    +关注

    关注

    114

    文章

    3628

    浏览量

    79425
  • python
    +关注

    关注

    51

    文章

    4657

    浏览量

    83380
  • 树莓派
    +关注

    关注

    113

    文章

    1633

    浏览量

    104514
收藏 人收藏

    评论

    相关推荐

    怎样用ADAU1761设计DRC的压缩/扩展?

    请问怎样用ADAU1761设计DRC的压缩/扩展。我在SigmaStudio 4.5的模块中只找到RMS。如果ADAU1761设计DRC要怎样
    发表于 11-28 06:41

    树莓都有哪些功能,是什么编程的?

    怎么学习树莓树莓和传统单片机的区别是哪些,如果有了树莓该学哪些知识
    发表于 11-09 07:51

    怎样用32单片机测电压?

    怎样用32单片机测电压
    发表于 10-31 07:09

    如何用树莓学习Linux内核源码?

    怎么树莓学习Linux内核源码?​
    发表于 10-20 07:09

    树莓Python编程指南分享

    树莓python编程指南
    发表于 10-07 08:43

    树莓传感器教程

    树莓传感器教程
    发表于 10-07 07:13

    树莓的15个应用

    树莓15个应用
    发表于 10-07 06:42

    Arduino的各种传感器树莓也可以吗?

    Arduino的各种传感器,树莓也可以么?
    发表于 09-28 08:13

    树莓3树莓4原理图分享

    提供了树莓3、树莓3B、树莓4版本的原理图
    发表于 09-27 07:58

    PLC中怎样用X和Y两个轴走出直线轨迹?

    PLC中怎样用X和Y两个轴走出直线轨迹呢?那么这两个轴需要配合成速度成线性比例,位置和速度应该如何云运算呢?
    发表于 09-12 09:58 280次阅读
    PLC中<b class='flag-5'>怎样用</b>X和Y两个轴走出直线轨迹?

    怎样用示波器测试lin总线的波特率呢?

    怎样用示波器测试lin总线的波特率呢?有什么方法吗?
    发表于 05-09 11:22

    怎样用FPGA实现FSK调制解调呢?

    最近想做这方面的,怎样用FPGA实现FSK调制解调?但是我一点头绪都没有,哪位高手帮帮忙,讲解一下什么的
    发表于 05-08 17:34

    树莓的故障分析检测

    各位大神,我的树莓B4,经常读不出卡数据,卡换个新的,故障依旧。请指点树莓的故障检查与维修。
    发表于 04-27 11:30

    请问Proteus仿真软件中怎样用探针测电压呢?

    请问Proteus仿真软件中怎样用探针测电压呢?
    发表于 04-26 15:55

    怎样用FPGA实现FSK调制解调呢?

    最近想做这方面的,怎样用FPGA实现FSK调制解调?但是我一点头绪都没有,哪位高手帮帮忙,讲解一下什么的
    发表于 04-06 14:29