打印

一个奇怪的问题,搞了两天都没弄好。请教一下。。

[复制链接]
453|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
河童|  楼主 | 2018-7-4 18:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ni, TE, JTAG, AN, AD
int main()
{
// UINT16 i;
LED_Drive_Init();
UartInit();
printf("\r\n 串口初始化完成");
SysTick_Init();
W25X16_SPI_Init();
FlashDviecID=W25X16_Read_DeviceID();
FlashId=W25X16_Read_ID();
// printf("\r\n FlashDviecID= %d",FlashDviecID);
// printf("\r\n FlashId= %d",FlashId);

printf("\r\n FlashDviecID");
printf("\r\n FlashId");
LCD_Init();
while(1);

只要我的程序里面,加入了LCD_Init();  (之前没有加入LCD驱动,后来写了LCD驱动之后工作就不正常了。)

调试的时候就会出现这样的错误:

void Lcd_init_conf(void)
{
LCD_WriteCMD(0xCF);只要运行到这里,通过FSMC数据写数据到LCD,就会报下面的错误。
LCD_WriteDAT(0x00);
LCD_WriteDAT(0x81);
LCD_WriteDAT(0x30);

Load "..\\Out\\Mydemo.AXF"
* jtag Info: TotalIRLen = 9, IRPrint = 0x0011
* jtag Info: Found Cortex-M3 r1p1, Little endian.
* jtag Info: TPIU fitted.
* jtag Info: ETM fitted.
* jtag Info:   FPUnit: 6 code (BP) slots and 2 literal slots
* jtag Info: Found Cortex-M3 r1p1, Little endian.
* jtag Info: TPIU fitted.
* jtag Info: ETM fitted.
* jtag Info:   FPUnit: 6 code (BP) slots and 2 literal slots
BS \\Mydemo\../User/ILI9341Drive.c\190
BS \\Mydemo\../User/ILI9341Drive.c\189
WS 2, `outbuff
**jtag Warning: T-bit of XPSR is 0 but should be 1. Changed to 1.
***jtag Error: Can not read register 15 (R15) while CPU is running
***jtag Error: Can not read register 16 (XPSR) while CPU is running
***jtag Error: Can not read register 0 (R0) while CPU is running
***jtag Error: Can not read register 1 (R1) while CPU is running
***jtag Error: Can not read register 2 (R2) while CPU is running
***jtag Error: Can not read register 3 (R3) while CPU is running
***jtag Error: Can not read register 4 (R4) while CPU is running
***jtag Error: Can not read register 5 (R5) while CPU is running
***jtag Error: Can not read register 6 (R6) while CPU is running
***jtag Error: Can not read register 7 (R7) while CPU is running
***jtag Error: Can not read register 8 (R8) while CPU is running
***jtag Error: Can not read register 9 (R9) while CPU is running
***jtag Error: Can not read register 10 (R10) while CPU is running
***jtag Error: Can not read register 11 (R11) while CPU is running
***jtag Error: Can not read register 12 (R12) while CPU is running
***jtag Error: Can not read register 13 (R13) while CPU is running
***jtag Error: Can not read register 14 (R14) while CPU is running
***jtag Error: Can not read register 15 (R15) while CPU is running
***jtag Error: Can not read register 16 (XPSR) while CPU is running
***jtag Error: Can not read register 17 (MSP) while CPU is running
***jtag Error: Can not read register 18 (PSP) while CPU is running
***jtag Error: Can not read register 20 (CFBP) while CPU is running


后来我发现,我只要不用prinf()函数就不会出现这样的问题,一切都正常。。
进一步发现:

// UINT16 i;
LED_Drive_Init();
UartInit();
printf("\r\n 串口初始化完成");
SysTick_Init();
W25X16_SPI_Init();
FlashDviecID=W25X16_Read_DeviceID();
FlashId=W25X16_Read_ID();
// printf("\r\n FlashDviecID= %d",FlashDviecID);
// printf("\r\n FlashId= %d",FlashId);//只要屏蔽这两句里就可以


printf("\r\n FlashDviecID");
printf("\r\n FlashId");//再进一步发现,把上面的语句改成这样也没事。。

LCD_Init();
while(1);


哪位兄台能告诉我,有可能什么地方出问题,非常感激。。


刚才试验了一下,如果把,

printf("\r\n FlashDviecID");
printf("\r\n FlashId");//把这两句放到LCD_Init();之后也能正常工作。。。


太没天理了,谁能告诉我,到底怎么啦?

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

452

主题

452

帖子

0

粉丝