你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32F051 tsc波形不对

[复制链接]
lideyu 提问时间:2015-3-24 16:43 /
第一次发的帖子
https://www.stmcu.org.cn/module/forum/thread-600643-1-6.html
没有结果。
现在把示波器照片拍上来了。
硬件如下:
G1_1:CS
G1_2AD1
G1_3AD2
G1_4:未用
G2_1:未用
G2_2AD3
G2_3AD4
G2_4:CS
初始化代码如下:
        GPIO_InitStructure.GPIO_Pin = 0xFF;//GPIO_Pin_0-7;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
  GPIO_Init(GPIOA, &GPIO_InitStructure);
        GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_0 | GPIO_Pin_7;//CS
  GPIO_InitStructure.GPIO_OType = GPIO_OType_OD;
  GPIO_Init(GPIOA, &GPIO_InitStructure);
       
        GPIOA->AFR[0]        =        0x33333333;
       
        //TSC->CR        =        CTPH | CTPL | 0x01;
        TSC->CR        =        0x110010A1;
        TSC->CR = (1 << 28)|(1 << 24)|(0 << 17)|(0 << 16)|(0 << 15)|(2 << 12)
                                                |(5 << 5)|(0 << 4)| 1;
        TSC->IOHCR        &=        ~0x00FF;        //关闭 G1 G2 施密特
//        TSC->IOASCR        |=        0x00FF;                //使能 G1 G2 模拟IO功能
        TSC->IOSCR        &=        ~0x00FF;
        TSC->IOSCR        |=        0x0081;                //选择 Cs 采样电容
        TSC->IOCCR        &=        ~0x00FF;
//        TSC->IOCCR        |=        0x0022;                //选择 通道,注意, 此脚只能选择1各/组


主程序里轮流使用1个通道,但G1_2,G2_2通道采集值变化特别大,根本不能正确检测。
如何解决啊,纠结好久了。

G1_2的IO口波形

G1_2的IO口波形

G1_3的IO口波形

G1_3的IO口波形

G2_2的IO口波形

G2_2的IO口波形

G2_3的IO口波形

G2_3的IO口波形
收藏 评论8 发布时间:2015-3-24 16:43

举报

8个回答
lideyu 回答时间:2015-3-24 16:45:58
G1_2,G2_2的那个阶梯时间与所谓的死区时间相同,应该是死区状态时电压发生了变化。
zfz0122 回答时间:2015-3-24 21:51:33
不懂帮顶啊 3.gif
wu1169668869 回答时间:2015-3-25 00:20:17
竟然会有这种情况
不过真没遇见过…
zhangdaijin 回答时间:2015-3-25 09:32:51
lideyu 回答时间:2015-3-26 10:01:36
没结果,继续顶?
或者谁有寄存器版例程参考一下。
lideyu 回答时间:2015-3-26 10:04:34
自己顶不起来????
lideyu 回答时间:2015-3-26 11:44:49
问题已解决,给各位参考。
将GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;改成10M就好了。
alvad 回答时间:2019-8-30 09:26:22
你好。我最近在用STM32072芯片的TSC功能做项目。碰巧看到你也几年前有这方面的应用案例。
我看了手册和例程,只有对各端口配置的示例。没有数据读取的例子。
我的疑惑是:现在我需要用8个PAD进行触摸感应采集。而stm072CB的48脚芯片只有6个通道(G1-G6)可用。所以会在某个通道上两路或者三路同时进行读数。所以想请教一个通道里面多路数据读取怎么操作?谢谢。

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版