本文主要是介绍[shenzhen io] 通过信号的种类控制蜂鸣器 buzzer 的行为,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
界面
左边的是信号发生器,这题只用到了rx接口,这个接口是XBUS数据类型的,只能用x0,x1,x2,x3这种XBUS接口才能接。
右边的蜂鸣器buzzer并不是通电就能响,需要反复输出时钟才能让它响起来。
XBUS总线数据从-999到999,接通XBUS需要等待数据的到来
slx x0 #等待x0数据,程序一直卡着
Simple IO引脚数据从0到100
要求
- RX输入不是时钟,连的是信号发生器
- buzzer是simple io类型的引脚,连接一个(假的)蜂鸣器
- 当数据包从信号发生器中输出后,你需要读取它,然后执行对应的下面这张表的结果
1 | 2 | 3 |
---|---|---|
0 | 给buzzer 100 | 打开buzzer |
1 | 给buzzer 0 | 关闭buzzer |
时序要求
开始数据是-999
给1后,蜂鸣器打开,buzzer反复在100和0之间翻转
给0后,蜂鸣器关闭,buzzer为 0
shenzhen io assembly 代码编写方法在这
需要注意的是, + - 不能嵌套,条件满足就执行下面所有的 + ,否则执行下面所有的 -
结果代码
off:slx x0teq x0 1
+ jmp onmov 0 p1slp 1jmp off
on:mov 100 p1slp 1mov 0 p1slp 1slx x0teq x0 0
+ jmp offjmp on
这设计真是绝了,一块MC6000 MCU代码只能写14行,全部占满了。
结果演示
这篇关于[shenzhen io] 通过信号的种类控制蜂鸣器 buzzer 的行为的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!