刚闪电入门了树莓派:斩获不止Python,Linux,goLang,还有架构,格局...

  • 引子
    • 如何以闪电的速度入门树莓派
    • 获得了一个自己可掌控的Python程序
    • goLang说,我是来打酱油的!
    • 我们不是程序猿,我们是代码的搬运工......

引子

前段时间有个项目需要一个IoT的微小Server,类似中继网关吧。成本被限制在300元人民币以内,愁是不管用的,只能考虑我那些吃灰好多年的树莓派了,其实派们进宫后,朕绝对是没有宠幸过,派们都没怀过孕!2代树莓派说,人家都老了,还是个雏!

如何以闪电的速度入门树莓派

原则是一定要拿软硬件都现成开源的简单的东西上手,那就是:

代码简单—— 一眼能看透因果,不用review那么多代码,就能预测结果。
教程详细、逻辑缜密——任何简单的东西对于没碰过的人来说,都会是很难的,每一个操作都会想到10000种可能,一个说不清楚的教程,是图财害命。
东西实用——练过手的东西实际项目还能用,就像是嫁给唐僧,玩烦了还能拿来吃肉。

按图索骥(上面的原则都是手中无贱,心里有贱,毕竟88年就开编Basic程序了)我看到了一枚小东西,人家叫TFOLED,就是集成了时钟,风扇控制和OLED屏显示的一个扩展板,28元,还不贵。极速用TFOLED某宝找了两个回来。

其实,我是在知乎上撸到的:https://www.zhihu.com/question/35801849/answer/1484766665
问题是:用树莓派做一个服务器是否可行?
其中有一句话:一个颠仆不灭、准确的时钟,是服务器应尽的义务。
让我知道了作者的段位,那一定是特别熟悉计算机网络架构的人才会这么肯定的说。段位在那里,弄得教程必然清晰,丝丝相扣,决不给你10000种试探的机会。我看回答的赞同过500个了。

获得了一个自己可掌控的Python程序

后面的事都是趸他的教程,这个教程在简书上(当然我可以搬到CSDN来…可我手中无贱啊…)。
https://www.jianshu.com/u/9c64e438d428

树莓派的烧写,apt update upgrade时间有些长,但是只要想宠幸树莓派,换到国内镜像升级树莓派,那你是逃不掉这一个小时的,依旧是撸到教程文章弄的。

TFOLED教程其实,半个小时就弄完了,写作用词严禁,没有歧义。让我想起来一句诗:无为在歧路,儿女共沾巾。翻译过来是:你这教程,别说不清楚,就算有了歧义,那编程儿女也得哭死过去。


它的主程序是Python写的,用Linux的脚本启动了守护进程rc-local,用的是systemctl守护,老朽也是第一次了解这个Linux能够无人值守,不重启运行好多个月的神器,这真是Linux和Windows的软件架构的重大不同。
现在有了个模版就放心了,有个模版,去改,比一行一行想代码,那高级很多。

goLang说,我是来打酱油的!

我看到哪个介绍TFOLED文章说,能不改代码运行goLang,就让我做goLang的同事弄了个小程序,对Linux编译了,还就真能运行!

ipshow.go 文件内容:

package mainimport ("fmt""net"
)func main() {ips, err := FindLocalIPList()if err != nil {fmt.Println(err)return}for _, ip := range ips {fmt.Println(ip)}fmt.Println("END")
}func FindLocalIPList() (ips []net.IPNet, err error) {interfaces, err := net.Interfaces()if err != nil {return}ips = make([]net.IPNet, 0)for _, x := range interfaces {if (x.Flags & net.FlagUp) != 0 {addrs, _ := x.Addrs()for _, a := range addrs {if ipnet, ok := a.(*net.IPNet); ok && !ipnet.IP.IsLoopback() && ipnet.IP.To4() != nil {ips = append(ips, *ipnet)}}}}return
}

我还不会goLang,也没goLang的编译环境,让同事编译的,据说编译命令和他平时的编译命令只差两行:
SET GOOS=linux
SET GOARCH=arm
ipshow.go 编译成了ipshow
把ipshow这个文件SSH进树莓派改文件为可执行属性,命令行敲./ipshow,果真就把我后宫派们所有的IP都显示出来了。
高级了…

我们不是程序猿,我们是代码的搬运工…

后来我自己做了实验,还就真负责任地佐证下TFOLED作者的说法,goLang程序猿越过 Win-X86>>>Arm-Linux这个鸿沟,只有两行ASC码命令!
突然,想起了格局这个词。
格局都是逼出来的,急了跳墙过来的。

祝各位用码愉快!

刚闪电入门了树莓派:斩获不止Python,Linux,goLang,还有架构,格局...相关推荐

  1. python代码画闪电_Python闪电入门

    lesson1-python 闪电入门 安装设置Anaconda(Python and visual studio code 1.Python开发环境(Anaconda) 首选:Anaconda(安装 ...

  2. 树莓派安装python2idle_树莓派开发日记2——Linux!python!GPIO!

    说起树莓派和PC的不同,首先就是操作系统,树莓派装的是"Raspbian"(Debian的定制版)是Linux的一种发行版.是Linux当然要用命令行了(不然怎么高大上),来打开终 ...

  3. 树莓派 python_树莓派笔记08—Python流水灯

    关注.星标公众号,不错过精彩内 RPI.GPIO「raspberry-gpio-python」是Python的一个模块,允许你在执行Python脚本的时候轻松访问和控制GPIO,最新发布的树莓派系统已 ...

  4. 入门Python400集视频,Python学会之后,一般能拿到多少工资?

    阿里巴巴提倡必学,入门Python400集视频,Python学会之后,一般能拿到多少工资? 对于初学者想更轻松的学好Python开发,爬虫技术,Python数据分析,人工智能等技术,这里也给大家准备了 ...

  5. python猜年龄代码_python入门教程NO.7用python来写一个猜数字游戏

    python入门教程 本文涉及的python基础语法为while循环 #python#3中while语句常常被用于循环执行某个程序,任何非0和非空null的值,都会被条件判断为True while 条 ...

  6. python 快速排序_小白入门知识详解:Python实现快速排序的方法(含实例代码)...

    前言: 今天为大家带来的内容是:小白入门知识详解:Python实现快速排序的方法(含实例代码)希望通过本文的内容能够对各位有所帮助,喜欢的话记得点赞转发收藏不迷路哦!!! 提示: 这篇文章主要介绍了P ...

  7. 如何在树莓派上进行python编程_设置并使用树莓派进行Python和C语言编程 (下)

    Python部落(www.freelycode.com)组织翻译, 禁止转载 关键字 条件关键字 下表列出了和条件语句有关的关键字和它们的简要描述 if用来决定将要执行哪条语句 else 可选,条件为 ...

  8. linux模拟树莓派,树莓派使用入门:树莓派上的模拟器和原生 Linux 游戏

    原标题:树莓派使用入门:树莓派上的模拟器和原生 Linux 游戏 树莓派是一个很棒的游戏平台.在我们的系列文章的第九篇中学习如何开始使用树莓派. -- Anderson Silva 回到我们关于树莓派 ...

  9. 如何在树莓派上进行python编程_《树莓派Python编程指南》怎么样_目录_pdf在线阅读 - 课课家教育...

    计算机已经不再只是用来工作的方盒子.任何拥有一个可编程处理中心的东西都可以称作计算机.游戏终端.智能手机.全球卫星定位系统(GPS)单元.平板电脑以及其他许多令人难以置信的设备都说明了这一点.它们都是 ...

最新文章

  1. c语言中int和指针和字符所占字节
  2. 20170601xlVBA正则表达式提取体检数据
  3. python爬虫成果_Python爬虫(小练习)
  4. (补充)常用端口大全
  5. c#资源管理器【转】
  6. ios 悬浮窗_多达2000个频道,支持7天回看!这才是我要的看电视app(安卓/ios)...
  7. centos7 LNMP
  8. HBase伪分布式集群配置
  9. C#模拟POST提交表单(一)--WebClient
  10. sqlite3 查询表时,表头与列对齐显示
  11. windows安装zabbix客户端
  12. 串口中断和定时器中断_51单片机中断机制(定时器/计数器)
  13. PJSIP集成G729
  14. 云桌面是什么-如何选择云桌面?
  15. 区块链去中心化通俗的理解是什么?
  16. 《设计模式之禅》观后感
  17. 计算机网络——基础篇
  18. 如何评估开发代码质量
  19. 软件发明专利实例_软件发明专利思路(精)
  20. 微信小程序Nginx环境配置

热门文章

  1. ubuntu壁纸1080p
  2. C#实现侏儒排序算法
  3. 电脑老是显示无网络连接到服务器,电脑怎么老弹出无法与服务器建立连接
  4. 全球化经营必备,盘点主流跨境电商平台
  5. rtx3070ti显卡什么水平 rtx3070ti显卡什么级别 rtx3070ti显卡怎么样
  6. Mac重装系统出错的心路历程
  7. 微信聊天记录没有备份可以恢复吗?吐血整理分享
  8. WIN10 禁用 credentital guard Device Guard或Credential Guard与Workstation不兼容
  9. 【大数据】什么是数据集成?(SeaTunnel 集成工具介绍)
  10. 真Unity3d_梦幻西游无双的引擎是?