博士
最后登录1970-1-1
在线时间 小时
注册时间2014-10-31
|
本帖最后由 11kxmx 于 2014-11-25 11:33 编辑
各位朋友好,我将例程中的ADC实验与LCD显示字符结合起来,想把ADC采集的数据显示在LCD上,但发现LCD只显灰色,连个0也不显示,去掉ADC1 init,LCD可正常显示数字,是不是硬件有冲突?管脚配置我看了没冲突,是不是内部资源冲突了?
我又改了一下,这次是将ADC程序加入LCD程序中,只修改主程序
结果可显示AD转换数值,但旋动电位器,显示数值不变化
复位后重新测量数值有变化,好像是连续采集变成了单次采集,不知为什么?
#include "stm32f10x.h"
#include "bsp_ili9341_lcd.h"
#include "bsp_usart1.h"
#include "bsp_adc.h"
extern void Lcd_Delay(__IO uint32_t nCount);
extern uint16_t ADC_GetConversionValue(ADC_TypeDef* ADCx);
uint32_t n;
uint16_t m;
int main(void)
{
LCD_Init();
ADC1_Init();//增加了本句
LCD_Clear(0, 0, 240, 320, BACKGROUND);
LCD_DispChar(60, 60, 'A', RED);
LCD_DispStr(10, 10, (uint8_t *)"This is a lcd demo to display ascii", RED);
LCD_DispStr(40, 100, (uint8_t *)"count:", RED);
for( n=0; n<10000; n++ )
{
LCD_DisNum(100, 100, n, RED);
m=ADC_GetConversionValue(ADC1);//增加了本句
LCD_DisNum(100, 150,m, RED);//增加了本句
Lcd_Delay(0xAFFf>>1);//修改了此句,让显示数字更新慢一些,便于观察
}
while( 1 );
}
|
|