首页 理论教育 单片机模拟与数字输出

单片机模拟与数字输出

时间:2023-11-17 理论教育 版权反馈
【摘要】:根据所输出的信号类型,输出信号模块可分为:数字量输出信号模块和模拟量输出信号模块。图3.7信号输出示意图图3.8模拟/数字输出 :digitalWrite指令函数用于设置引脚的输出电压为高\低电平。该函数无返回值,PIN参数表示所要设置的引脚,value参数表示输出的电压,HIGH为高电平,LOW为低电平。调用analogWrite后,结合延时控制,可在引脚上生成一个指定占空比的方波输出。

单片机模拟与数字输出

输出信号模块主要负责对MCU处理的结果进行电平转换,并从向外输出,然后驱动现场执行设备(如电磁阀电动机等)或控制设备(如按钮状态指示灯)。根据所输出的信号类型,输出信号模块可分为:数字量输出信号模块(Digital Output:DO,简称数字量输出模块)和模拟量输出信号模块(Analog Output:AO,简称模拟量输出模块)。

将所有硬件拖放在Hardware区域,单击Blocks可以看到所有的输出代码块,如图3.8所示。每个输出代码块由指令和参数两个部分构成,蓝色部分为输出指令,白色框为参数,可能有1~3个参数。

图3.7 信号输出示意图

图3.8 模拟/数字输出 (Output)

:digitalWrite(PIN,value)指令函数用于设置引脚(PIN)的输出电压为高\低电平(value)。该函数无返回值,PIN参数表示所要设置的引脚,value参数表示输出的电压,HIGH为高电平,LOW为低电平。在使用digitalWrite(PIN,value)函数之前要将引脚设置为OUTPUT模式。:analogWrite(PIN,value)指令函数将设定的值(value)经8位D/A转换后输出到管脚(PIN),PIN参数表示所要设置的引脚,value参数取值范围为0~255,该函数无返回值,可用于不同的光线亮度值调节发光二极管的亮度,或以不同的速度驱动马达。调用analogWrite(PIN,value)后,结合延时控制,可在引脚上生成一个指定占空比方波输出。

:setLED(LED1,state)指令设置LED1的状态为ON/OFF,state参数表示LED1的开或关状态。

:playNote(SPEAKER1,NOTE-C4,time)指令表示在扬声器SPEAKER1上播放一个音符,音符参数NOTE-C4决定正在播放的音符是音符列表中的某1个(哆、来、咪、发、唆、拉、西),时间参数time决定播放的时间,单位为毫秒(ms)。(www.xing528.com)

:setAngle(SERVO,angle)指令设置指定伺服电机的角度,角度参数angle决定SERVO电机的转动角度,angle取值范围为0~180度。

:setColor(RGB,value)指令设置三基色LED的RGB的取值,RGB参数指定正在设置哪个LED对象的三基色参数,而value为颜色参数,决定RGB LED的颜色,颜色取值采用十六进制表示,从左到右每两位表示一个颜色取值,如FF00FF表示红色分量为255,绿色分量为0,蓝色分量为255。三基色的颜色合成如图3.9所示。

图3.9 三基色的颜色合成

:motorOn(MOTOR1,dir)指令用于打开马达并设定它的方向,电机参数MOTOR1指定要控制哪个电机对象,方向参数dir设置电机将转动的方向,可以设定正转(FWD),也可以设定为反转。

:motorOff(MOTOR1)指令关闭指定电机MOTOR1。

:motorSpeed(MOTOR1,speed)指令设置指定电机的速度,速度参数speed为转速,单位为转/分。

:print(LCD1,string)命令将“string”参数决定的内容打印到屏幕LCD1上,也可把“string”的内容通过串行端口输出到外部显示,“string”参数中的内容可以是多种数据类型。

:printLine命令将大多数数据类型打印到屏幕或串行端口,同时触发一个新目标参数(要打印的串行端口或screen)和要打印的数据参数。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈