注册会员
- 积分
- 144
- 威望
- 70
- 贡献
- 48
- 兑换币
- 40
- 注册时间
- 2016-1-30
- 在线时间
- 13 小时
- 毕业学校
- 浙江大学
|
首先是端口配置是这样的
于是我就将k60这样连接PTB0(ADC)连PTB20(GPIO)
然后得出来正常的采样,如图
不过在把ADC换到PTA17(ADC1_SE17),也就是第一根针的时候就不对了。数据完全是乱的(见后面一幅图)
怀疑是ADC出了问题,我又把ADC接回最开始的,然后把GPIO换了,输出也不对。
最奇怪的是,我把两个ADC都打开测试,PTB20(最开始采样正确的GPIO)换着接两个ADC的结果都一样,输出一直是PTB0所在的ADC的!也就是后来的ADC1_SE17不管接不接都是错的,而GPIO接到ADC1_SE17上时ADC0_SE8还是有正确的输出,
请问大家这是怎么回事?
代码如下:
- gpio_set(PTB2,1);
- //gpio_set(PTA17,1);
-
- gpio_set(PTB21,1);
- gpio_set(PTB20,1);
- gpio_set(PTB11,1);
- var = adc_once (ADC0_SE8, ADC_8bit);
- var2 = adc_once (ADC1_SE17, ADC_8bit);
- printf("高电平:ADC0_SE8 %d ADC1_SE17 %d\n",var,var2);
- DELAY_MS(500); //延时500ms
- gpio_set(PTB2,0);
- //gpio_set(PTA17,0);
-
- gpio_set(PTB21,0);
- gpio_set(PTB20,0);
- gpio_set(PTB11,0);
- var = adc_once (ADC0_SE8, ADC_8bit);
- var2 = adc_once (ADC1_SE17, ADC_8bit);
- printf("低电平:ADC0_SE8 %d ADC1_SE17 %d\n",var,var2);
- DELAY_MS(500); //延时500ms
复制代码
想请教大家这些问题:
1、为什么ADC正常工作时,GPIO更换之后是错误的
2、为什么GPIO正常工作时,更换ADC之后采样是错误的
3、为什么ADC接板子上的GND或者VCC采集数据还是杂乱的?不是应该是0或者255(或者固定的某个电压值)吗?
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|