完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
` 本节讲述LRADC类的使用方法,请先在https://github.com/tjCFeng/ClassA20下载ClassA20类库。 先来说一下A20的ADC。A20的ADC共有两种,一种是LRADC,另一种是TPController。 LARADC,是一种低分辨率的模数转换器,按照用途A20常把它当作按键检测的通道,可以检测长按、短按、按下、抬起等动作,最高电压可以支持到2V,有些低了。 TPController一般用来检测触摸屏的控制,根据电压的变化获取坐标。玩过单片机+显示屏的应该都很熟悉,这个功能被集成到A20中了。TPController最大可以支持到5V。 这次主要试验一下LRADC,对于TPController就不多说了。 手册中关于LRADC的介绍 LRADC很简单,简单到所有的寄存器参数都使用默认值,只要控制一下启动就可以了,甚至比IO口都要简单。当然,它也有许多功能,为了简单起见先不考虑。 下面来看看LRADC单元中的类: 和前面介绍的一样,还是分为两个类。 TLRADCGROUP的使用方法跟前一节完全相同,直接来看TLRADC吧。LRADC是输入端口,它有中断,可以识别出KeyDown、KeyUp之类的事件。但是前面也提到过,由于暂时没有实现中断的响应,所以现在这个类还不能当作按键检测用,先用它来完成基本的功能吧,检测电压。 检测电压不需要太高的检测频率,可以很简单地使用循环读取数据的方式,看看下面的例子: 继续上一节的神器,这次用到的是光敏二极管,根据电压的变化计算出亮度的百分比。 硬件的连接。LRADC所在的引脚没有被香蕉派直接引出为插针,它是在CON1上,可以用排线引出,我加了格转接板就可以使用了。 CON1中的第13脚和第15脚对应LRADC0和LRADC1 界面的设计,在上面放置了两个Label用于显示ADC的值和计算后的百分比,又放置了一个timer用于定时循环控制,定时间隔为500毫秒,并且启动时是不打开,由按钮控制,还有两个按钮控制LRADC的启动和停止。用Timer的好处是可以方便地控制启动和停止,并且在等待间隔时不影响程序和系统的运行,同时需要编写的代码是最少的 |
|
相关推荐
1 个讨论
|
|
只有小组成员才能发言,加入小组>>
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-5 09:27 , Processed in 0.990378 second(s), Total 69, Slave 50 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号