本帖最后由 zz蓝sea 于 2013-11-25 12:46 编辑
笔记 键盘 这里有软件框架可以找到自己家想要的ASF函数 http://asf.atmel.com/docs/3.5.1/search.html?board=XMEGA-A3BU%20Xplained 总共有四个按键,其中有三个普通机械按键和一个触摸按键,其对应引脚如下
首先介绍一下普通点的IO口功能函数 · gpio_pin_is_low() · gpio_pin_is_high() · gpio_set_pin_high() · gpio_set_pin_group_high() · gpio_set_pin_low() · gpio_set_pin_group_low() · gpio_toggle_pin() · gpio_toggle_pin_group() · gpio_configure_pin() · gpio_configure_group()
这里的函数的意思就不多说了,普通按键按键用到的 - #define GPIO_PUSH_BUTTON_0 IOPORT_CREATE_PIN(PORTE, 5)
- #define GPIO_PUSH_BUTTON_1 IOPORT_CREATE_PIN(PORTF, 1)
- #define GPIO_PUSH_BUTTON_2 IOPORT_CREATE_PIN(PORTF, 2)
ioport_pin_is_high(GPIO_PUSH_BUTTON_0) 然后检测到后返回0;然后用个while语句等待。 触摸键有点儿不太明白,如果写错了请各位见谅 - #define QTOUCH_BUTTON_SNS IOPORT_CREATE_PIN(PORTF, 6)
- #define QTOUCH_BUTTON_SNSK IOPORT_CREATE_PIN(PORTF, 7)
电路图
check_touch_key_pressed()这个函数如果触摸键被按下就会返回零,但是这个函数内部的东西就不太明白了,只知道如果按下人体会有微弱电流,是电容充电啊,所以请指导下。这个电路图也没看懂。
笔记、AD 这款八位的单片机具有不少的功能,其中AD功能就让我们刮目相看,那些51什么的都太逊了, 高精度模拟 — 12 位 ADC 具有增益级,其组合吞吐量可达 4 MSPS。 快速 12 位 DAC 具有高速驱动强度以及一些其他功能,减少了对外部元件的需求。
快速入门ADC http://asf.atmel.com/docs/3.5.0/xmegaau/html/adc_quickstart.html 然后进入软件编写,因为我之前主要是写代码的,所以就有所偏重吧 首先先进性AD的 初始化设置void init_adc(void)主要有通道设置和模数设置,具体见
然后模数设置函数 这里可以用要用的函数 从AD里获得结果等函数
AD就到这里了,具体实现这些函数都可以实现 只要在相应的ASF内添加函数文件就好了
|