【TI 技术资料分享】+基于MSP430F149的触摸手写程序

2019-07-30 18:26发布

基于MSP430F149的触摸手写程序 基于MSP430F149的触摸手写程序.zip (539.48 KB, 下载次数: 7) 2015-3-10 17:01 上传 点击文件名下载附件
  1. #include <msp430x14x.h>
  2. #include "BCS_TIMER.h"
  3. #include "TFT24.h"
  4. #include "Display_TFT24.h"
  5. #include "Touch.h"

  6. typedef unsigned int uint;
  7. typedef unsigned char uchar;


  8. /***************触摸接口的宏定义*********************/
  9. #define tchIRQ      P6IN & BIT5     //触屏中断


  10. void main(void)
  11. {
  12.   
  13.     WDTCTL = WDTPW + WDTHOLD;
  14.        
  15.     /*下面六行关闭所有的IO口*/
  16.     P1DIR = 0XFF; P1OUT = 0XFF;
  17.     P2DIR = 0XFF; P2OUT = 0XFF;
  18.     P3DIR = 0XFF; P3OUT = 0XFF;
  19.     P4DIR = 0XFF; P4OUT = 0XFF;
  20.     P5DIR = 0XFF; P5OUT = 0XFF;
  21.     P6DIR = 0XFF; P6OUT = 0XFF;
  22.                
  23.         uint TFT_X, TFT_Y, k, h;
  24.        
  25.         Init_Touch();          //初始化触屏
  26.         Init_TFT24();   //初始化TFT24液晶
  27.         Init_BCS();
  28.        
  29.         TFT_Clear(Red);        //清屏
  30.        
  31.     Put_String(0, 0, "GOOD", 0, 0xffff);        //显示字符串

  32.         while(1)
  33.         {
  34.                 if(!(tchIRQ))
  35.                 {         
  36.                         Read_Touch();        //读取坐标
  37.                         P2OUT = 0xfe;
  38.                        
  39.                         Put_String(0, 296, "X:", Red, Black);        //显示X坐标
  40.                         Put_Touch(32, 296, Touch_X, Blue, Black);         
  41.        
  42.                         Put_String(120, 296, "Y:", Red, Black);        //显示Y坐标
  43.                         Put_Touch(152, 296, Touch_Y, Blue, Black);       
  44.                        
  45.                         TFT_X = ((Touch_X - 220) / 15);
  46.                         TFT_Y = 320 - ((Touch_Y - 300) / 11);
  47.                        
  48.                         if(TFT_Y < 160)
  49.                         {
  50.                                 P2OUT = 0xf0;
  51.                         }
  52.                         else
  53.                         {
  54.                                 P2OUT = 0x0f;
  55.                         }
  56.                        
  57.                         Put_String(0, 272, "X:", Red, Black);        //显示X坐标
  58.                         Put_Touch(32, 272, TFT_X, Blue, Black);         
  59.        
  60.                         Put_String(120, 272, "Y:", Red, Black);        //显示Y坐标
  61.                         Put_Touch(152, 272, TFT_Y, Blue, Black);
  62.                        
  63.                         LCD_CS_L;
  64.                         for(k=0; k<5; k++)
  65.                         {
  66.                             for(h=0; h<5; h++)
  67.                                 {
  68.                                          
  69.                                           Set_Posi(TFT_X+h, TFT_Y+k, TFT_X+1, TFT_Y+1);
  70.                                 Lcd_Write_Data(Blue);       
  71.                                 }
  72.                         }
  73.                         LCD_CS_H;
  74.                 }
  75.     }
  76. }
复制代码

0条回答

一周热门 更多>