|
[TI首届低功耗设计大赛]+电容按键测试+430BOOST-Nokia1202lcd
[复制链接]
上周末调试了430boost-NOKIA1202LCD 板的一个简单的电容滑条实验,其实挺简单的,我的板子上的PCB电容滑条是根据官方的夏普的那个扩展板画的,也就是说电容按键检测的程序是直接移植官方的那个板子的。这个试验的现象是:开机先显示LOGO,LED1发出红光闪烁几下看,接着显示一下板子的信息,进入MAIN_MENU模式,显示这个模式下的一下信息。
430BOOST-Nokia1202_ULP_FRAM.rar
(5.17 MB, 下载次数: 0, 售价: 10 分芯积分)
TI给我们提供非常易用的电容按键检测算法库,
下面这段程序是在MainMenu这个函数中,判断sliderPos[0](左边滑条的的位置返回值)的值,当我们的手指按到了滑条的最上面的一块和其相连的一块的中间的位置时(这时sliderPos[0]的值<30),那么点亮LCD的背光P3OUT |= BIT0;
这时一个主菜单,所以在测试菜单模式下,显示一下信息
LCD_Clear(); // Clear LCD
LCD_Print("MAIN MENU:", 15, 0); // What it is
LCD_Print("Clock", 0, 2);
LCD_Print("FRAM Speed", 0, 3);
LCD_Print("Battery Free", 0, 4);
LCD_Print("Active Mode", 0, 5);
LCD_Print("SliderBall Game", 0, 6);
LCD_Print("Enter", 30, 7);
- unsigned char MainMenu(void)
- {
- unsigned char appChoice = APP_MAIN_MENU;
- while (!select) {
- // Get left slider position
- CTS_getReading();
- // Highlight/scroll based on cap touch position
- // if(position < 8) {
- // choice = ENERGY_TRACE;
- // }
- if (sliderPos[0] < 6) {
- appChoice = APP_SLIDERBALL;
-
- }
- else if (sliderPos[0] < 18) {
- appChoice = APP_ACTIVE_TEST;
- if (startupStatus) {
- offLED();
- }
- }
- else if (sliderPos[0] < 24) {
- appChoice = APP_ULP_ADC;
- if (startupStatus) {
- offLED();
- }
- }
- else if (sliderPos[0] < 30) {
- P3OUT ^= BIT0;
- appChoice = APP_FRAM_SPEED;
- if (startupStatus) {
- offLED();
- }
- }
- else {
- appChoice = APP_CLOCK;
- if (startupStatus) {
- offLED();
- }
- }
-
- LCD_Clear(); // Clear LCD
- LCD_Print("MAIN MENU:", 15, 0); // What it is
- LCD_Print("Clock", 0, 2);
- LCD_Print("FRAM Speed", 0, 3);
- LCD_Print("Battery Free", 0, 4);
- LCD_Print("Active Mode", 0, 5);
- LCD_Print("SliderBall Game", 0, 6);
- LCD_Print("Enter", 30, 7);
- }
- if (startupStatus) {
- offLED();
- }
- select = 0;
- if (appChoice == APP_ULP_ADC) {
- select = 2;
- }
- return appChoice;
- }
复制代码
|
|