原创 CC1110的I/O与键盘

2008-1-29 08:39 5695 9 18 分类: MCU/ 嵌入式
对于从51直接转型来做CC1110的朋友们来说,做键盘可能会遇到点麻烦。麻烦就是无法扫到键值,下面就说说为什么得不到键值。
下面的讨论电路是在I/O上接一个100K的电阻到地,I/O过一开关接AVDD,按键接P11,1有效。在不对I/O相关寄存器进行任何配置的情况下,CC1110的I/O状态是普通I/O口,方向是输入,可是读1来判断键值却得不到,原因是还没有选择下拉,下拉。正确做法是设按键相对应的I/O位为下拉。下面给出简单的代码:
P1SEL &= ~0X01;//普通I/O
P1DIR &= ~0X01;//输入
P1INP  &= ~0X01;//有上拉、下拉
P2INP |= 0X40; //选择下拉
好了,以上就是对P11的设置方法,不过还有另一个方法同样可行,而且可节约1条语句,不容易犯错,方法就是I/O设为三态,代码如下:
P1SEL &= ~0X01;//普通I/O
P1DIR &= ~0X01;//输入
P1INP |= 0X01;//三态

文章评论9条评论)

登录后参与讨论

zigbee_904218839 2008-9-23 17:59

下拉电阻的作用,让I/O的常态为低电平,当有按键时变为高电平。对于前面两项默认设置我写出来是为了提高程序的可读性。并保证在P0进行2次配置时依然有效。个人建议用三态,这最能反映I/0的真实电平。

用户1358535 2008-9-23 00:44

cc1110在IO应用中 P1SEL &= ~0X01;//普通I/O P1INP &= ~0X01;//有上拉、下拉 这两项默认值就是0,就是说不设置也是可以工作的! 对于P2INP |= 0X40; //选择下拉 这一项不设置也可以正常工作,不知道P2INP的D6位是控制P1口上下拉的真正作用是什么呢?

用户1358535 2008-9-23 00:43

cc1110在IO应用中 P1SEL &= ~0X01;//普通I/O P1INP &= ~0X01;//有上拉、下拉 这两项默认值就是0,就是说不设置也是可以工作的! 对于P2INP |= 0X40; //选择下拉 这一项不设置也可以正常工作,不知道P2INP的D6位是控制P1口上下拉的真正作用是什么呢?

用户21607 2008-3-3 14:48

没什么,有时间帮我看看,谢谢拉!

zigbee_904218839 2008-3-3 08:47

tang,对不起你,这个周末接待两位朋友,没有给你做DMA程序了。

zigbee_904218839 2008-2-25 10:29

以前没做过,这个周末我再看能不能帮你。

用户21607 2008-2-21 17:03

非常感谢!!!

你搞了DMA那部分没?它到底是怎么传输数据的?是怎么设置的?非常感谢!!!

zigbee_904218839 2008-2-21 14:58

P2INP的D6位是控制P1口上下拉的,PDF里原文如下:Port 1 pull-up/down select. Selects function for all Port 1 pins configured as pull-up/pull-down inputs.

用户21607 2008-2-21 11:53

P2INP |= 0X40; //选择下拉是什么意思?

不是对P2口进行设置了吗?

用户78081 2007-8-2 09:42

晕哦  元件都画错了 

相关推荐阅读
emot 2016-06-29 23:39
想在网上直播来讲讲zigbee,大家怎么看
近来发现zigbee热度不减,不才想把所了解的zigbee都跟大家分享,大致按照这个来做。请大家提些建议,是不是还有特别重要但我遗漏的。先来攒些人,人够了我们就开。 --------------...
emot 2015-09-24 07:06
BLE 空中升级谈(二)
BLE 空中升级谈   -- CC2541 的产品开发中OAD注意事项(续)   TI CC2541支持多个硬件,多个软件对它进行空中升级,可以有不同的组合,硬件有    ...
emot 2015-09-24 07:01
BLE 空中升级谈
BLE 空中升级谈   -- CC2541 的产品开发中OAD注意事项     现在的智能设备(可穿戴,智能家居,智能玩具等)是越来越多了,大公司的产品颜值高,功能强大而完备的应该说是比比皆是,这里...
emot 2015-05-19 10:27
寻找共事的朋友[深圳科技园 嵌入式软件 可穿戴]
岗位职责:嵌入式软件工程师 招聘人数:2 简历语言要求:中文 语言能力:英语 掌握程度:熟练 工作地点:深圳南山科技园 工作待遇:面谈   工作职责: 1. 与硬件工程师合作完...
emot 2014-05-06 08:41
CC2530的通信速率实测
首先要说的是这里的测试包括了zigbee与非zigbee两种情况,测试zigbee的通信速率建议使用TI协议栈ZSTACK-2.5.1A(swrc126.zip)中的TransmitApp来进行测...
emot 2014-01-17 18:08
XBee与 RBee ZigBee透明传输模块互传测试
XBee与 RBee ZigBee透明传输模块互传测试   本次测试的目标是为了初步探索ZigBee透明传输模块的传输速率峰值范围,同时也要检查不同公司模块之间的兼容性。测试的目标是 由美国Digi提...
我要评论
9
9
关闭 站长推荐上一条 /2 下一条