完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我使用SPI来驱动TFT-LCD。所使用的微控制器为PIC18F46K22。屏幕是来自Riverdi的7屏幕“RVT70UQFNWC0X”,它有FT813控制器。我试图运行的应用程序来自FTDI。它被称为Apple AppSoelDand按钮。它是更大的BRT的一部分,包括007个应用程序,包括几个演示功能。请找到这里的源代码:http://BrtCHIPS.COM/WP CON…/BRTYANANY07YOVEL。ZIPI除了屏幕之外使用相同的硬件设置。FTDI证实,应用程序在他们的ME813A WH50C模块上运行没有问题,这是一个带有集成FT813控制器的5“屏幕”。当我运行AppAsLoDeldand按钮时,应用程序运行一分钟左右,然后变得无响应。也就是说,按下按钮不再做任何事情,也不会拖动滑块。例如,应用程序在按钮按下的屏幕上冻结(上面显示红色点)。在一个罕见的情况下,在屏幕变得不响应之后,滑块继续自己移动。在这种情况下,我是在滑动开始之前滑动它自己的。你可以找到我的硬件设置的细节,以及我是如何在下面的PDF文件中运行代码的:(1)这里是一个滑动的视频。(2)我使用USB到串行电缆调试这个。我知道应用程序在EVEEXLeal.C.EveWAITCMDFIFOOLF函数的while循环中冻结。我在下面的文本文件中有读指针和写指针的值。〔3〕〔4〕请参阅连结的附加文本文件。我尝试将CS引脚移到A5。同样的结果。我还试着在McCuCsL慢和McCuxCHIH中增加额外的NOP()。我在4月6日有一个产品演示。我已经开始开发我们的应用程序,但是它也有同样的问题,即屏幕冻结。非常感谢您的帮助。谢谢,汤姆。
以上来自于百度翻译 以下为原文 I am using SPI to drive a TFT LCD. The microcontroller used is PIC18F46K22. The screen is the 7" screen RVT70UQFNWC0x from Riverdi which has the FT813 controller. The application I am trying to run is from FTDI. It's called called APP_SliderandButton. It's part of the larger BRT AN 007 application which includes several demo functions. Please find the source code here: http://brtchip.com/wp-con.../BRT_AN_007_Source.zip I used the same hardware setup except for the screen. FTDI confirmed that the application ran without problems on their ME813A-WH50C module, which is a 5" screen with integrated FT813 controller. When I run APP_SliderandButton, the application runs for a minute or so before becoming unresponsive. That is, pressing the button no longer does anything nor does dragging the slider. For example, the application freezes at a screen where the button stays pressed (with the red dot shown above it). In a rare case, the slider kept moving on its own after the screen become unresponsive. In this case, I was sliding the slider right before it started moving on its own. You can find details of my hardware setup and how I ran the code in the following PDF file: [1] Here is a video of the slider moving on its own. [2] I have used a USB to serial cable to debug this. I know the application freezes in the while loop of the EVE_WaitCmdFifoEmpty function in EVE_Layer.c. I have the values of ReadPointer and WritePointer in the following text files. [3] [4] Please see the attached text file for the links. I tried moving the CS pin to A5. Same result. I also tried adding adding extra Nop() to MCU_CSlow and MCU_CSHigh. I have a product demonstration on April 6. I've started developing our application but it has the same problem, i.e. the screen freezes. Your help would be greatly appreciated. Thanks, Tom Attachment(s) Links.txt (0.29 KB) - downloaded 34 times |
|
相关推荐
6个回答
|
|
汤姆,为什么这么急?你问过同样的问题两次吗?
以上来自于百度翻译 以下为原文 Tom, What makes this urgent ? Did you ask the same question twice ? |
|
|
|
嗨,吉姆,好像我贴了两次。我是新来的论坛。如何删除其他帖子?
以上来自于百度翻译 以下为原文 Hi Jim, It seems I posted twice. I'm new to the forum. How do I delete the other post? |
|
|
|
最好的方法是编辑另一个。删除内容/写入重复。
以上来自于百度翻译 以下为原文 The best way is to edit the other one. Delete content/ write duplicate. |
|
|
|
我目前正在开发一个在杂货店使用的系统。对于用户界面,我使用的是连接到PIC的7个“River界面”。我一直在用FTDI提供的库编写应用程序。基本上建立在他们的应用程序之上。代码导致River屏幕在一段时间后冻结。我找到了一种方法,使程序员通过阅读程序员指南的第5.6部分(第157页)来恢复屏幕。http://btcx.com /Wp CON…sjava程序员指南。PDFSO我在我们的应用程序中应用了这个。通过检测最大迭代次数,检测代码是否被困在while循环中。在这种情况下,我执行恢复过程。然而,执行恢复过程并不理想。这是因为文本在发生的几秒钟内变得混乱,这对用户来说是显而易见的。更重要的是,屏幕最终会关闭或变空,直到屏幕关闭电源。这可能是因为恢复过程太频繁了。我认为找到问题的根源比修补要好得多。这样,恢复过程根本不需要执行,屏幕也不会崩溃。我必须在4月6日(用PCB)演示产品。正如现在,屏幕可能工作长达20分钟,但它可能随时崩溃。我想解决这个问题的演示日期,使演示顺利进行。
以上来自于百度翻译 以下为原文 I'm currently developing a system to be used in grocery stores. For the user interface, I'm using the 7" Riverdi screen connected to the PIC. I've been writing the application with the library provided by FTDI. Essentially building on top of their application. The code causes the Riverdi screen to freeze after some time. I found a way to make the screen recover by reading section 5.6 (p. 157) of the programmer's guide. http://brtchip.com/wp-con...s_Programmer_Guide.pdf So I applied this in our application. I detect if the code is stuck at the while loop by having a max number of iterations. In that case I execute the recovery procedure. However, executing the recovery procedure is not ideal. This is because the text becomes garbled for a few seconds when it happens, which is noticeable to the user. What's more, the screen eventually turns off or goes blank and it stays that way until the screen is powered off and on. This may be because the recovery procedure is being done too often. I believe that finding the root of the problem would be a better approach than patching. This way the recovery procedure would not need to be executed at all and the screen would not crash. I have to demonstrate the product on April 6 (with a PCB). As it is right now, the screen may work for up to 20 minutes but it may crash any time. I would like to resolve this issue by the date of the demo so that the presentation goes well. |
|
|
|
勘误表说有一个SPI主模式问题。所以检查错误是否影响显示应该是下一个步骤。7。模块:MSSP(主同步串行端口)7.1 SPI主模式,当MSP在SPI主模式中使用,并且CKE位是清晰的(CKE=0)时,缓冲器满(BF)位和MSSP中断标志(SSPIF)位早就设置为半SCK周期。如果用户软件立即对所设置的任一位作出反应,则会发生写入冲突,如WCOL位所指示的。为了避免写入冲突,应使用以下方法之一:方法1:在检测到完成的传输(BF位或SSPIF位设置)之后,在写入SSPBUF寄存器之前,添加一个SCK周期的软件延迟。在写入SSPBUF后,验证WCOL位是否清晰。如果设置了WCOL位,则清除软件中的位并重写SSPBUF寄存器。方法2:作为MSSP初始化过程的一部分,设置CKE位(CKE=1)。受影响的硅修订A2 A4×A2 A4×XHM,似乎使用方法2,CKE为1…
以上来自于百度翻译 以下为原文 The Errata says there is an SPI Master mode issue. So checking if that error effects the display should be the next step. 7. Module: MSSP (Master Synchronous Serial Port) 7.1 SPI Master mode When the MSSP is used in SPI Master mode and the CKE bit is clear (CKE = 0), the Buffer Full (BF) bit and the MSSP Interrupt Flag (SSPIF) bit become set half an SCK cycle early. If the user software immediately reacts to either of the bits being set, a write collision may occur as indicated by the WCOL bit being set. Work around To avoid a write collision one of the following methods should be used: Method 1: Add a software delay of one SCK period after detecting the completed transfer (the BF bit or SSPIF bit becomes set) and prior to writing to the SSPBUF register. Verify the WCOL bit is clear after writing to SSPBUF. If the WCOL bit is set, clear the bit in software and rewrite the SSPBUF register. Method 2: As part of the MSSP initialization procedure, set the CKE bit (CKE = 1). Affected Silicon Revisions A2 A4 X A2 A4 X X hm, seems method 2 is used, CKE is 1... |
|
|
|
应用程序在使用River 5屏幕时不会冻结。所以我们选择了这一点。可能是购买的7个屏幕中的一个缺陷?
以上来自于百度翻译 以下为原文 The application doesn't freeze when using a Riverdi 5" screen. So we opted for that. Maybe a defect in the 7" screen that was purchased? |
|
|
|
只有小组成员才能发言,加入小组>>
5237 浏览 9 评论
2026 浏览 8 评论
1950 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3201 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2253 浏览 5 评论
772浏览 1评论
662浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
590浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
672浏览 0评论
572浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-21 13:36 , Processed in 1.182299 second(s), Total 55, Slave 49 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号