当前位置:首页 > 名师导学 > 专家点拨 > 数字口与模拟输入口操作详解

数字口与模拟输入口操作详解

发表日期:2017-08-31 11:47:59文章编辑:浏览次数: 标签:亮宁机器人    

一、预备知识

亮宁机器人主板上的输入输出口众多,其中分为数字口和模拟,模拟口又分为模拟输入口和模拟输出口本节我们来学习位于主板正上方的数字主板右边的模拟输入口(如1所示)使用方法。

数字口之所以不分输入和输出,是因为一个数字口既可以当输入用又可以当输出口用。只需要在使用之前一个声明便可。数字和模拟口最大的区别就是,数字口只能输入或输出一个数字01而模拟口可以输入或输出的数据范围为01023根据这一个特性,我们使用相关传感器或者设备时选择正确的引脚连线。例如,灯板、数字巡线传感器、触碰传感器等就连接在数字口上伺服电机、火焰传感器、模拟巡线传感器等就需要连接在模拟口上。

图片1.png 

1 主板上的引脚分布

、数字口

 1数字输出

   我们已经了解到,在使用数字前要声明数字口到底是当输入口还是输出口使用。可视化平台中的“函数”下有“数字口操作”的功能。声明方法如图2所示

例如LED单色灯板就是需要连接在数字口上(灯的亮与灭实际就是通电与断,所以只需要数字01能代表意义)。由于是主板向灯板输出高电位(通电)或低电位(断电),这时候要将数字口设置为输出OUTPUT。我们只需要对应的数字口写入高电位就能使等亮起来。程序3所示。

 图片2.png

                                                     图2 数字口与输出的声明                                                                                                                                       

2数字输

   数字口当输入口使用,其实我们在一开始接触亮宁机器人就已经使用到。我们最常按的启动按钮(K2就是连在一个数字口上的,而这个数字口在底层代码中已经设置为输入口了。现在我们亮宁机器人套装的触碰传感器来学习它。触碰传感器的引脚说明如图4所示

图片3.png

图3  触碰传感器引脚说明

用一根线,就可以很方便的将触碰传感器与主板相连。连线方法如图5所示连好

线借助,LCD屏幕显示触碰传感器按下弹起返回的数据。程序如下

#include <LNDZ.h>

lc lcd;

int n;

void init()

{

   lcd.begin(16,2);

   B_start();//启动按钮

   DI(31);

   //触碰传感器是往主板内传递高点位(1与低电位0),所以声明该数字口为输入口

   lcd.bg(1);

}

void repeat()

{

   n=DR(31);//读取该数字口传来的值并赋给变量n

   lcd.print(n);

   delay(100);

   lcd.clear();//了实时更新,需要清屏

}

下载程序后观察发现,当触碰传感器按下时返回值为0弹起来后返回值为1。某些

候我们可以用这个触碰传感器代替启动按钮。具体程序如下:

#include <LNDZ.h>

void init()

{

     DI(31);

     while (DR(31)==1);

     //31数字口传来的值始终是1或者讲当触碰传感器始终没有被按下时,一直//在这里循环

     beep(1000);

//当触碰传感器被按下,传来0,结束while循环便鸣叫一声以示成功

}

void repeat(){}

 

、模拟输入口

模拟输入口其实早已经是我们的老朋友模拟巡线传感器就必须连接在模拟输入口

。模拟巡线传感器用一个三位整数表示自己看到”的颜色。因为硬件上,就已经将区分了模拟输入口和模拟输出口(主板右侧PWM所以我们在使用模拟输入口,并不需要声明模拟口为输入或是输出可视化平台中模拟输入口的操作界面如图6所示

图片4.png 

模拟输入口操作界面

巡线用以下语句来获取模拟输入口所传递回来的值。

ll=AR(4);  l=AR(2);  m=AR(1);  r=AR(3);  rr=AR(5);

    其中“AR”就表示读取模拟输入口的值,后面的参数就是模拟输入口的编号。亮宁机器人套装中需要连接模拟输入口的还有火焰传感器。后面会有专门的章节介绍火焰传感器,在这里不做探讨

   顺便说一下,如果需要,我们用pinMode或DI,DO,也可以将模拟口转化为对应的数字口。但模拟输入口听接口编号要用A0~A15来注明,以便与其他端口的编号加以区别。

如没特殊注明,文章均为亮宁电子原创,转载请注明出处
相关新闻

浅析心理暗示在青少年行为教育中的作用(图文)

在与许许多多学生家长交流的过程中发现,不少家长都觉得孩子难管难教,特别是处于青春期的孩子,家长们更是感到头痛。所以,本文作者在这里发表个人看法,讨论一下心理暗示在教育孩...

日期:2019-04-24

不忘初心,方得始终

不忘初心,方得始终——对知识应用能力的执着追求 长沙市一中戴胜军 从事教师这行三十多年,我了解到许多教育教学中长期存在的不足和缺陷,也一直尝试用一己之力改变...

日期:2018-06-30

机器人教育中的责任心培养

本文已发表在《创意与发明》2016年第7期上在近年从事机器人教育教学工作中,我发现当代中小学生普遍存在责任心的缺失问题,引发了我对当前教育的担忧和诸多思考。一、缺失责任...

日期:2018-06-13

论中小学机器人教练员应该具备的基本素质

【摘 要】本文重在提示中小学机器人教练员建立必要的自信心和自我重塑,提出机器人教练员一些必须具备的基本素质,提醒可能成为机器人教练员的老师和目前处于探索阶段的机器...

日期:2018-03-19

亮宁机器人特有的符号系统(图文)

使用亮宁机器人的师生,可能注意到了这样一个特色,即亮宁机器人有自己特有的一套符号系统。如果还没有发现这一特色的师生,那我们就随本文来理解为什么我们要有这套特有的符号系...

日期:2018-01-19

亮宁可视化编程平台V2.2第6讲(图文)

第6讲 循环程序 我们先来看看顺序结构的程序实例。我们先用可视化系统设置如下: 上述设置的程序运行结果是八个LED灯同时被点亮。 我们看不出八个灯的点亮语句的顺序...

日期:2017-10-09