manjao linux下玩转arduino
自从入手arduinon差不多半个月了,在window下几乎没有任何问题,下载,编程,编译,上传,运行。几乎没有任何问题。在linux编译成功,上传时下却总是提示找不到libncurses.so.5无法载入等错误信息,经过各种查找资料,终于搞定了。步骤如下:
(1)首先,由于我的系统永远是最新的,libncurses是6.0版本的,要找到libncures5版本的,终于在一台较老的chakra linux中找到了;分别拷贝到/usr/lib/和/usr/lib32/目录中,其中lib和lib64是一样的,lib32的32位的库目录
(2)接着,创建连接文件
cd /usr/lib/
ln -s libncurses.so.5 libtinfo.so.5
cd ../lib32/
ln -s libncurses.so.5 libtinfo.so.5
(3)最后就可以编译成功了。下面分享一个西游记中女儿情的程序:
软件部分:
#define NOTE_D0 -1
#define NOTE_D1 350
#define NOTE_D2 393
#define NOTE_D3 441
#define NOTE_D4 495
#define NOTE_D5 556
#define NOTE_D6 624
#define NOTE_D7 661
#define NOTE_DL1 175
#define NOTE_DL2 196
#define NOTE_DL3 221
#define NOTE_DL4 234
#define NOTE_DL5 262
#define NOTE_DL6 294
#define NOTE_DL7 330
#define NOTE_DH1 700
#define NOTE_DH2 786
#define NOTE_DH3 882
#define NOTE_DH4 935
#define NOTE_DH5 1049
#define NOTE_DH6 1178
#define NOTE_DH7 1322
#define WHOLE 1
#define HALF 0.5
#define QUARTER 0.25
#define EIGHTH 0.125
#define SIXTEENTH 0.0625
int tune[] = {
NOTE_D0,NOTE_DL5,NOTE_DL6,NOTE_D1,NOTE_D2,NOTE_D3,NOTE_DL7,NOTE_DL6,NOTE_DL7,NOTE_DL5,NOTE_DL6,
//1,0.5,0.5,1.5,0.5,0.75,0.25,0.25,0.25,0.5,2,
NOTE_DL6,NOTE_D1,NOTE_D2,NOTE_D3,NOTE_D5,NOTE_D6,NOTE_D1,NOTE_D2,NOTE_D3,NOTE_D4,NOTE_D3,
//1,0.5,0.5,1.5,0.5,0.5,0.5,0.25,0.25,0.5,2,
NOTE_D3,NOTE_D3,NOTE_D5,NOTE_D6,NOTE_D5,NOTE_D6,NOTE_DL6,NOTE_D3,NOTE_D2,NOTE_D1,NOTE_D2,NOTE_D3,NOTE_DL5,NOTE_DL6,NOTE_DL7,NOTE_D3,NOTE_DL6,NOTE_DL6,NOTE_D1,NOTE_D1,
//1,0.5,0.5,1.5,0.5,1,0.5,0.5,1.5,0.5,1,1,1.5,0.5,0.5,1,0.5,0.5,1.5,2,
NOTE_D0,NOTE_D5,NOTE_D5,NOTE_D6,NOTE_DH1,NOTE_D7,NOTE_D6,NOTE_D5,NOTE_D6,NOTE_D6
//0.5,0.5,0.5,0.5,0.5,1,0.25,0.25,2,2,
NOTE_D0,NOTE_D5,NOTE_D5,NOTE_D6,NOTE_DH1,NOTE_D7,NOTE_D6,NOTE_D5,NOTE_D3,
//0.5,0.5,0.5,0.5,0.5,1,0.25,0.25,2,
NOTE_D3,NOTE_DL5,NOTE_DL6,NOTE_D1,NOTE_D2,NOTE_D3,NOTE_DL7,NOTE_DL6,NOTE_DL7,NOTE_DL5,NOTE_DL6,
//1,0.5,0.5,1.5,0.5,0.75,0.25,0.25,0.25,0.5,2,
NOTE_DL6,NOTE_D1,NOTE_D2,NOTE_D3,NOTE_D5,NOTE_D6,NOTE_D1,NOTE_D2,NOTE_D3,NOTE_D4,NOTE_D3,
//1,0.5,0.5,1.5,0.5,0.5,0.5,0.25,0.25,0.5,2,
NOTE_D3,NOTE_D3,NOTE_D5,NOTE_D6,NOTE_D5,NOTE_D6,NOTE_DL6,NOTE_D3,NOTE_D2,NOTE_D1,
//1,0.5,0.5,1.5,0.5,1,0.5,0.5,1.5,0.5,
NOTE_D2,NOTE_D3,NOTE_DL5,NOTE_DL6,NOTE_DL7,NOTE_D3,NOTE_DL6,NOTE_DL6,NOTE_D1,NOTE_D1,
//1,1,1.5,0.5,0.5,1,0.5,0.5,1.5,2,
};
float duration[] = {
1,0.5,0.5,1.5,0.5,0.75,0.25,0.25,0.25,0.5,2,
1,0.5,0.5,1.5,0.5,0.5,0.5,0.25,0.25,0.5,2,
1,0.5,0.5,1.5,0.5,1,0.5,0.5,1.5,0.5,1,1,1.5,0.5,0.5,1,0.5,0.5,1.5,2,
0.5,0.5,0.5,0.5,0.5,1,0.25,0.25,2,2,
0.5,0.5,0.5,0.5,0.5,1,0.25,0.25,2,
1,0.5,0.5,1.5,0.5,0.75,0.25,0.25,0.25,0.5,2,
1,0.5,0.5,1.5,0.5,0.5,0.5,0.25,0.25,0.5,2,
1,0.5,0.5,1.5,0.5,1,0.5,0.5,1.5,0.5,
1,1,1.5,0.5,0.5,1,0.5,0.5,1.5,2,
};
int length;
int tonePin = 5;
void setup() {
// put your setup code here, to run once:
pinMode(tonePin, OUTPUT);
length = sizeof(tune) / sizeof(tune[0]);
}
硬件连接非常简单,只要将数字接口5连接到喇叭的正,喇叭的负接地即可。
manjao linux下玩转arduino的更多相关文章
- Linux下玩转Dota2
Dota2是一款颇为风靡的即时战略类游戏,去年官方就支持Mac和Linux了,对于习惯Mac和linux平台的孩子们来说,简直感动的泪流满面. 当然,也简直是linux程序猿的福音啊啊! 与Win8. ...
- 64位linux下玩32位汇编编程
利用下假期,打算把linux下的汇编语言给熟悉下,结果是以32位为版本的,只能在办公室的机器上跑了个opensuse的32位版本,家里的suse挂了,无法输入中文.打算再安装下32位系统,今天找到了个 ...
- linux下玩转磁盘管理与挂载硬盘
前言 本文将带来linux下的磁盘管理中的硬盘挂载,Linux操作系统挂载硬盘需要了解的一些知识.这可能是迄今为止介绍的最最最实用的linux硬盘挂载的文章了,比较详细.由于工作原因,平时使用的比较多 ...
- linux下 玩转ptrace
译者序:在开发Hust Online Judge的过程中,查阅了不少资料,关于调试器技术的资料在网上是很少,即便是UNIX编程巨著<UNIX环境高级编程>中,相关内容也不多,直到我在 ht ...
- 在linux下玩转usb摄像头
硬件平台:PC机一台 .usb摄像头 操作系统:Linux3.0.8 交叉编译环境:arm-none-Linux-gnueabi-gcc 4.5.1 调试步骤: 一.linux 内核解压 1.1使用 ...
- 最NB的发现 LINUX 下玩teamviewer 命令行设置密码
cd /opt/teamviewer/tv_bin/ [root@666 tv_bin]# ls desktop script teamviewerd TVGuiSlave.32 xdg-utils ...
- [daily][archlinux][game] 几个linux下还不错的游戏
春节在家放松, 装了几个游戏在archlinux上,玩起来还不错. 假期结束开工了, 玩的时间也会比较少,准备删掉, 记录如下: 1. 0ad 即时战略类, 类似于冷兵器时代的红警. 画面还不错, 可 ...
- .Neter玩转Linux系列之六:Linux下MySQL的安装、配置、使用
一.Linux安装MySQL (1)下载安装包:https://dev.mysql.com/downloads/mysql/ (2)解压并安装 命令:tar zxvf 文件名 解压完成之后,重名一下文 ...
- .Neter玩转Linux系列之三:Linux下的分区讲解
基础篇 .Neter玩转Linux系列之一:初识Linux .Neter玩转Linux系列之二:Linux下的文件目录及文件目录的权限 .Neter玩转Linux系列之三:Linux下的分区讲解 .N ...
随机推荐
- python * args和** kwargs的用法
所属网站分类: python基础 > 函数 作者:慧雅 链接: http://www.pythonheidong.com/blog/article/18/ 来源:python黑洞网 www.py ...
- Scrapy-redis分布式爬虫爬取豆瓣电影详情页
平时爬虫一般都使用Scrapy框架,通常都是在一台机器上跑,爬取速度也不能达到预期效果,数据量小,而且很容易就会被封禁IP或者账号,这时候可以使用代理IP或者登录方式爬,然而代理IP很多时候都很鸡肋, ...
- python实现导出excel表(前端+后端)
之前在做项目管理系统的时候需要实现将数据导出到excel表的功能,搜索之后发现了python的xlwt模块可以很好的实现这项功能. 首先是导入xlwt模块: import xlwtfrom io im ...
- Linux命令之---diff
命令介绍 diff命令可以酌行比较纯文本文件内的内容,并输出文件的差异. 命令格式 diff [option] [file1] [file2] 举例子 1)比较俩文本文件 [root@king ~]# ...
- 海量数据处理算法—BitMap
1. Bit Map算法简介 来自于<编程珠玑>.所谓的Bit-map就是用一个bit位来标记某个元素对应的Value, 而Key即是该元素.由于采用了Bit为单位来存储数据,因此在存储空 ...
- OpenCV学习笔记(六) 滤波器 形态学操作(腐蚀、膨胀等)
转自:OpenCV 教程 另附:计算机视觉:算法与应用(2012),Learning OpenCV(2009) 平滑图像:滤波器 平滑 也称 模糊, 是一项简单且使用频率很高的图像处理方法.平滑处理的 ...
- Falsk
flask: 1.配置文件的几种方式: 1.app.config['DEBUG'] =True 2.app.config.from_pyfile("setting.py") 3.a ...
- loj2046 「CQOI2016」路由表
大傻逼trie树,更傻逼的是我这都没独立想出来,以后要少看题解,多多思考 #include <algorithm> #include <iostream> #include & ...
- 【Swap Nodes in Pairs】cpp
题目: Given a linked list, swap every two adjacent nodes and return its head. For example,Given 1-> ...
- Detect Vertical&Horizontal Segments By OpenCV
Detect Vertical&Horizontal Segments By OpenCV,and Save the data to csv. Steps: Using adaptiveThr ...