查看: 2838|回复: 4

STM32F407的SPI1接口的2046驱动源代码

[复制链接]
  • TA的每日心情

    2018-3-6 14:29
  • 签到天数: 81 天

    连续签到: 1 天

    [LV.6]常住居民II

    发表于 2013-10-7 20:02:54 | 显示全部楼层 |阅读模式
    分享到:
    此驱动适合XPT2046以及TSC2046,对外使用接口函数简单,做到了能正确的读取出X,Y的值
    对X,Y值的读取是通过中断进行的,驱动对外函数接口:

    void Touch_Init(void); //初始化
    void TSC_EXTI_ENABLEORDISABLE(uint8_t);//外部中断使能 0:DISABLE 1:ENABLE
    uint8_t TSC_ReadEndData(uint16_t *,uint16_t *); //读取X,Y的值 ,详细代码可参考下面的附件

    把中断的例子贴上去吧:
    void EXTI9_5_IRQHandler(void)
    {
            uint16_t x,y;
            uint8_t str[5];
            if(EXTI_GetITStatus(EXTI_Line6))
            {
                    TSC_EXTI_ENABLEORDISABLE(0);
                    if(TSC_ReadEndData(&x,&y))
                    {
                            u16tostr(x,str);//整形转字符数组函数,参考itoa这个函数自己改写的
                            USART_DEBUG_SendString("X:");
                            USART_DEBUG_SendString(str);
                            u16tostr(y,str);//整形转字符数组函数,参考itoa这个函数自己改写的
                            USART_DEBUG_SendString("Y:");
                            USART_DEBUG_SendString(str);
                    }
                    EXTI_ClearITPendingBit(EXTI_Line6);
                    TSC_EXTI_ENABLEORDISABLE(1);       
            }
    }

    //整形转字符串函数也给大家贴上去,自我感觉编写itoa这个函数的人,真是太厉害了
    uint8_t *u16tostr(uint16_t num,uint8_t *str)
    {
            uint8_t i=0,j;
            uint8_t temp;
            do
            {
                    str[i++]=num%10+'0';
                    num/=10;
            }while(num);
            str='\0';
            for(j=0;j<=(i-1)/2;j++)
            {
                    temp=str[j];
                    str[j]=str[i-1-j];
                    str[i-1-j]=temp;
            }
            return str;
    }

    驱动代码: touch-spi.zip (1.98 KB, 下载次数: 10)
    回复

    使用道具 举报

  • TA的每日心情

    2018-3-6 14:29
  • 签到天数: 81 天

    连续签到: 1 天

    [LV.6]常住居民II

     楼主| 发表于 2013-10-7 20:03:26 | 显示全部楼层
    自己顶下啊
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2018-3-6 14:29
  • 签到天数: 81 天

    连续签到: 1 天

    [LV.6]常住居民II

     楼主| 发表于 2013-10-7 20:11:33 | 显示全部楼层
    上张图吧 无标题.png
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-5-12 10:32
  • 签到天数: 295 天

    连续签到: 1 天

    [LV.8]以坛为家I

    发表于 2013-10-8 08:36:38 | 显示全部楼层
    顶一下~~~~~~~~~~~~~~~~~·
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2018-3-6 14:29
  • 签到天数: 81 天

    连续签到: 1 天

    [LV.6]常住居民II

     楼主| 发表于 2013-10-8 08:54:00 | 显示全部楼层
    fj1161 发表于 2013-10-8 08:36
    顶一下~~~~~~~~~~~~~~~~~·

    谢谢你的支持啊
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-5-18 02:30 , Processed in 0.157625 second(s), 24 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.