-
配置分开写,你这样写会有问题的
-
看规范第21页,tmds传输是传输的character,不是bit值,而每个character是10个bit编码来的。
-
我也在学单片机,有空多多交流哦,我已经请求加你了
-
BOOL OALDisplaySplashScreen(void)
{
int screenWidth, screenHeight, screenBpp, pixelBytes;
int bmpWidth, bmpHeight;
int w, w1;
int h;
int i, j;
BOOL success = FALSE;
BYTE *pfb;
// OALMSG(OAL_FUNC, (TEXT("+OALDisplaySplashScreen\r\n")));
OALMSG(OAL_INFO, (TEXT("+OALDisplaySplashScreen\r\n")));
screenWidth = BSP_PREF_DISPLAY_WIDTH;
screenHeight = BSP_PREF_DISPLAY_HEIGHT;
screenBpp = BSP_PREF_DISPLAY_BPP;
pixelBytes = LCDC_PIXEL_SIZE_BYTES(screenBpp);
// Initialise display controller
if(!LCDCInitialize(screenWidth, screenHeight, screenBpp))
{
// OALMSG(OAL_WARN, (TEXT("OALDisplaySplashScreen: DisplayInitialize failed.\r\n")));
OALMSG(OAL_INFO, (TEXT("OALDisplaySplashScreen: DisplayInitialize failed.\r\n")));
goto displaycleanup;
}
// bitmap_height, bitmap_width contain the width, height of the splashscreen
// display. See splashscreen.c
bmpWidth = (bitmap_width > screenWidth) ? screenWidth : bitmap_width;
bmpHeight = (bitmap_height > screenHeight) ? screenHeight : bitmap_height;
w = (screenWidth - bmpWidth) / 2;
h = (screenHeight - bmpHeight) / 2;
w1 = ((screenWidth - bmpWidth) % 2 == 0)? w : w + 1;
pfb = (BYTE *)IMAGE_SHARE_FRAMEBUFFER_RAM_UA_START;
// Pre-set the screen background with white color
memset(pfb, 0xff, screenWidth * screenHeight * pixelBytes);
// Copy and centre splash screen in framebuffer.
j = bmpWidth * pixelBytes;
pfb += h * screenWidth * pixelBytes;
for(i = 0; i < bmpHeight; i++)
{
pfb += w * pixelBytes;
memcpy(pfb, &bitmap_data[i * bitmap_width], j);
pfb += j + w1 * pixelBytes;
}
// Enable display controller.
LCDCEnable(TRUE);
success = TRUE;
displaycleanup:
// OALMSG(OAL_FUNC, (TEXT("-DisplaySplashScreen(%d)\r\n"), success));
OALMSG(OAL_INFO, (TEXT("-DisplaySplashScreen(%d)\r\n"), success));
return success;
}
“bitmap_data”这个就是logo的C数组
-
F5系列的I2C发送和接收共用一个中断向量。怎么分开啊!
-
电源引脚焊接有问题!
唉!有这个问题客户,我已经记不清是第几个了!
-
12楼正解
请教:
1、UpdateBacklight函数中fSetPowerOff和fReleasePwrOff 的 作用是什么呢 ??
2、唤醒背光的机制PM是怎么实现的呢 ?
即:PM怎么知道当前状态是SYSTEMIDLE 当我点击触摸屏后PM需要调整到ON状态?
-
顶一个!
-
你是说 连接单片机引脚之后 就不是高电平了? 看看 是不是 没有加上拉电阻 造成的 你可以 用一个led灯进行调试啊 有while 函数 和if 函数 查询接 红外模块的引脚 如果高的话 让灯亮 如果低的话 led 不亮 我这里随便设 红外模块接在PA5上 ,并设置PA5为输入口 。
while(1)
{
if(PA5==0)
LED_off();
else
LED_on;
}
-
引用 8 楼 windriver3 的回复:
引用 7 楼 bluepei28 的回复:
引用 5 楼 windriver3 的回复:
引用 1 楼 bluepei28 的回复:
SPI有硬件的,也有软件模拟的。
可以一次片选使能,多次传输数据。
但是为了通讯安全起见,还是发送一帧数据的时候进行片选使能。发送完毕的时候,片选使不能。
我这边配置的spi字长是8位,每传8位,都要从新使能,这样效率岂不是很低。
……
====================================
你的接受方是硬件做的?
-
引用 6 楼 veabol 的回复:
把OM[1:0] 设置成00,
看NAND的DATASHEET,确定其page大小及访问周期,进行ncon,gpg13,gpg14,gpg15的设置。不同的NAND,ncon,gpg13,gpg14,gpg15硬件设置是不同的。
如何把把OM[1:0] 设置成00呢?
ncon,gpg13,gpg14,gpg15这几个已经设置了,是根据nand 的大小拉高或是拉低!
-
楼上说的对。
用记事本等打开 就是上面那种形式。
楼主估计想看其他形式的,就用VS2005打开看看。
才是类似WINDOWS那种形式。
-
引用 45 楼 sunrain_hjb 的回复:
支持一下GM。
个人以为多实践、多思考、多总结、多交流比较有帮助。
晕,何老师咋不多说呢,你可是我的偶像啊,你对我影响好大,可惜我现在改变人生目标了,呵呵。
-
引用 17 楼 galle 的回复:
引用楼主 kongfo1019 的回复:
两个单片机相互通讯,数据包 = 3字节指令 + 1~4字节的数据。
一次大概有50个数据包。
一个单片机发送数据包,另外一个接收。
两个单片机都在一块板子内。
请问:这两个串口的程序该怎么设计,才能保证数据不会出错。(对数据的正确性要求很高)。请详细说下程序的架构,谢谢了。
在线等。
如果都在一个板子上,用spi多好呀!为什么要用串口?
顶
-
单片机的基本架构、编程方式都是差不多的,学通了一种之后,其它的就容易上手了
用的最广泛,资料最多的是51系列,16bit跟8bit MCU在编程上没有太多区别
-
明白了,是我理解错了
-
这本书很好,widows驱动开发技术详解
-
中国现在的机器产业仅仅发展到骗高校的层度。。。
还有很多做事的空间
LZ加油!!!
-
恩 对的
好了 知道原因就好了,再次感谢 desert_hawk 香水城 等大侠的帮助!
结贴!
-
STM32的AD不是轨到轨AD,貌似不太符合LZ 的应用吧