初中生
最后登录1970-1-1
在线时间 小时
注册时间2015-3-26
|

楼主 |
发表于 2015-7-30 10:25:42
|
显示全部楼层
/*RAM基地址= 0X60020000 = 0X60000000+2^16*2 = 0X60000000 + 0X20000 = 0X60020000*/
#define Bank1_LCD_C ((u32)0x60000000) //Disp Reg ADDR
#define Bank1_LCD_D ((u32)0x60020000) //Disp Data ADDR // A16 PD11
#define LCD_WR_REG(index) ((*(__IO u16 *) (Bank1_LCD_C)) = ((u16)index))
#define LCD_WR_Data(val) ((*(__IO u16 *) (Bank1_LCD_D)) = ((u16)(val)))
我没有改定义,这是头文件上定义的,MINI的板子,我写命令,写参数都是正常的.
读函数就是上面定义的LCD_RD_data()。老是显示的是0。
#include "stm32f10x.h"
#include "bsp_ili9341_lcd.h"
#include "bsp_usart1.h"
int main(void)
{
uint16_t tmp;
LCD_Init();
LCD_Clear(0, 0, 240, 320, BACKGROUND);
LCD_ILI9341_CMD(0xDB);
tmp = LCD_RD_data();
USART1_Config();
NVIC_Configuration();
printf("\n%Xh\r\n",tmp);
}
这个是主函数。不知道错在哪里。
还有一个问题就是这个ILI9341的ID在哪里上可以找到,我想以后从寄存器读出来的时候好有个比较,看对不对。是在实物上面,还是在芯片手册上面有????
|
|