[原创] pic18 starterkit 学习0x05——IO输入(按键输入)

mzb2012   2016-11-19 23:08 楼主
一、简介 主要实现的是通过按键来控制LED灯的亮或灭。具体一点就是MCU检测开关输入状态,按照我们的代码逻辑给相应端口输出高或低电平改变LED状态。 二、硬件连接 四个按键和四个LED,在有按键按下时,相应LED熄灭,再次按下时LED点亮。 QQ截图20161117232903.jpg 三、寄存器 (1)配置端口的模拟 / 数字功能选择寄存器:ANCON0 和ANCON1 (2)配置TRIS寄存器:A0,A1,B4和B5为输入端口;B0,B1,C1和C2为输出端口 (3)读取PORT寄存器,获得按键输入信号 (4)写LAT寄存器,控制LED亮灭 四、代码 (1)初始化IO QQ截图20161119091453.jpg (2)按键检测 检测按键按下后,等待100ms去抖,然后检测按键抬起后翻转LED状态。这种方法,能用但是效果不好,后面改用定时器的。 QQ截图20161119091514.jpg 五、扩展应用 (1)遥控模块 QQ截图20161119112108.jpg 调制方式:调幅(OOK) 工作频率(MHz):315M频率 编码方式:焊盘编码(固定码) 工作方式:M4(点动:按住不松手就输出,一松手就停止输出) 接口定义: QQ截图20161119111642.jpg (2)继电器模块 继电器模块可以使你通过CPU信号轻松控制各种功率或电压级别的负载,例如:车库门,玩具,台灯和风扇等等。 QQ截图20161119115456.jpg IMG_20161119_133224.jpg 六、附件
02 - IO输入(按键控制LED).rar (30.63 KB)
(下载次数: 20, 2016-11-19 13:11 上传)
本帖最后由 mzb2012 于 2016-11-19 23:08 编辑

回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复