2018-10-09

项目一:按键



          上图是使用接在2口的按键来控制接在13口的led灯的程序,在程序当中,出现了 pinMode(2,INPUT_PULLUP);这条语句命令,是有些难以理解的,其余的都能理解。 第一步:搜语法 

          从CSDN上面查找资料,从而半知半解,但总体查找思路还是清楚了,关于 pinMode(2,INPUT_PULLUP)的作用,还需要和pinMode(2,INPUT)进行一个对比,既然要对比就要看看两种语句会有什么样的效果,那就有一个很关键的知识点出现了“通讯”

Serial:

           用于Arduino控制板和一台计算机或其他设备之间的通信,所有的Arduino控制板至少有一个串口(UART),他通过0(RX)和1(TX)数字引脚经过串口转换芯片,连接计算机USB端口与计算机进行通信。因此,如果你使用这些功能的同时你不能使用引脚0和1作为输出或输入。 使用Arduino IDE(IDE是集成开发环境的意思,用于提供程序开发环境)内置的串口监视器与Arduino板通信。当点击工具栏上的串口监视器按钮,调用begin()函数(选择相同的波特率,默认都是9600)。 不同的Arduino板子内置串口设置也不尽相同,所以拿到一块板子一定要先搞懂他的每个硬件接口。 实际效果 使用pinMode(2,INPUT_PULLUP),的结果就是,当按键按下的时候,灯灭掉,等处于常开状态。使用pinMode(2,INPUT)也是一样的结果。对于INPUT_PULLUP,可以这么理解,首先不管你写的时候加不加_pullup,板子里都会有一个电阻,只是没有接罢了,如果写了,端口就会接上那个电阻。这么做的目的呢,是让板子运行稳定,不会出现误读。在调用串口监视器之后测试,也是同样的效果。从串口监视器当中得知,当按钮按下的时候,2端口读取的是低电平也就是数字信号的“0”,当按钮没有按下的时候读取的是高电平转换成数字信号就是“1”



项目二:串口打印

        之前在项目一的时候,已经简单介绍过如何使用串口打印了,也介绍了一下串口的作用,这里我用自己的理解来说明一下串口的作用,串口就是计算机和Arduino板子之间进行通信的一个桥梁,还有一个比较重要的概念就是“波特率”,它是一个衡量符号传输速率的参数。指的是信号被调制以后再单位时间内的变化,既单位时间内载波参数变化的次数。具体一些来说:假如每秒传送240个字符,而每个字符格式包含10位(1个起始位,1个停止位,8个数据位),这时波特率为240Bd,比特率为10位*240个每秒=2400bps。

测试:从串口打印电位器实时数值

      


通过测试获取的结果: 首先对于Serial.begin(波特率);它是将串行数据传输速率设置为位/秒(波特)。与计算机通讯时,可以使用很多波特率,比较常用的就是9600,这条语句的作用就是打开串口。下图是测试如果没有设置该语句,我们能够清楚看到,com5口并没有数据实时输出。所以要使用串口监视器一定要设置该语句。



关于Serial.print()函数总结如下:

1、输出数字:Serial.print(78)输出:78

 2、输出小数:Serial.print(78.2233)输出:78.22

3、输出字符:Serial.print(“Hello world”)输出:Hello world

4、进制转换: BIN:二进制、OCT:八进制、DEC:十进制、HEX:十六进制

Serial.print(78,BIN)输出:1001110

5、对于浮点型,指定输出的小数位数。

 Serial.printIn(1.2345,3)输出:1.235

Serial.printIn(1.2345,4)输出:1.2345

6、Serial.printIn():回车换行 和Serial有关的函数含有很多,后期接触到可以学习丰富哦。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本文翻译自 Arduino 串行通讯的官方文档。 本文的最新版本位于:https://github.com/iwh...
    import_hello阅读 9,622评论 0 7
  • 一、每日清晨自问 我的终极人生目标是什么? 实现人生的价值,无悔! 你宝贵而狂野的一生准备做什么? 为公平正义奋斗...
    心平气和断舍离阅读 1,644评论 0 3
  • 做一个有爱心的人,拥有有爱的能力。加油亲爱的自己。 今天特别感谢我的死党陪我去感召覃帅哥!感召成功。 明日计划:6...
    蒋泳频阅读 1,300评论 2 3
  • NSTimer 的创建 NSTimer的创建通常有两种方式,一种是以 scheduledTimerWithTime...
    要上班的斌哥阅读 12,134评论 20 60
  • 孩子,往往我们不会理会她的童言无忌,是因为太简单吗?不,是因为太真切!我来说说:一个四岁的孩子的童言,真动人! 一...
    听四时阅读 3,649评论 2 1