说明一下,工程文件太大了,没办法上传,大家按照我的步骤一步一步即可完成移植
昨夜折腾到3点,在移植一个比较小巧的GUI,用的st的库文件,不是HAL版本的,好不容易移植成功,在添加触摸驱动的文件时,出现了所找的驱动文件是用HAL库函数写的,真想骂ST啊,有毛病,搞那么多版本的驱动,是研发人员太多了,还是有病啊,叫人无语,一时间,也静不下来去仔细研究库文件了,就想直接改成HAL的库,结果悲剧啊,N多错误,把我搞得精疲力尽的,无奈啊。只好下载HAL的库,然后今天白天为了以后使用方便,把工程模板从HAL库中提取出来,本来单位的电脑只有4G内存,就跑不快,这个折腾啊,好不容易,断断续续,花了2个小时才把模板完全提取出来,不用在那一堆文件了折腾了。于是开始移植,有了昨晚的经历,便开始直接移植,上图吧,大家看了就明白了
这是整个工程的目录,大家参考着搭建,然后把lvgl和lv_examples2个目录直接拷贝到你的工程下,设置好路径,然后把对应的C文件加到工程中,见下面各图。
那些需要,那些不需要的,我没有深入研究,一股脑的全导进来了,先移植成功再说啊,
进来一编译,问题多多啊,不用着急,一个一个解决,当然大部分是头文件的路径问题,这些大家自己解决啊,
我来说说和路径无关的错误。
在lv_color.h的60行加入
#pragma anon_unions这个大家一查就知,不多说
第145行的函数static inline uint8_t lv_color_to1(lv_color_t color)中的
#elif LV_COLOR_DEPTH == 16
if((color.red & 0b10000) ||
(color.green & 0b100000) ||
(color.blue & 0b10000)) {
return 1;
} else {
return 0;
}
改成下面即可
#elif LV_COLOR_DEPTH == 16
if((color.red&0x10) ||(color.green & 0x20) ||(color.blue & 0x10))
{
return 1;
}
else
{
return 0;
}
lv_txt.c的303行函数
uint8_t lv_txt_utf8_size(uint8_t c)
{
if((c & 0b10000000) == 0) return 1;
else if((c & 0b11100000) == 0b11000000) return 2;
else if((c & 0b11110000) == 0b11100000) return 3;
else if((c & 0b11111000) == 0b11110000) return 4;
return 0;
}
改成下面的即可
if((c & 0X80) == 0) return 1;
else if((c & 0xE0) == 0XC0) return 2;
else if((c & 0XF0) == 0XE0) return 3;
else if((c & 0XF8) == 0XF0) return 4;
更改完成编译即可通过了。
下面就是在main函数中添加驱动了,添加如下代码,即可编译,下载了
lv_init();
tft_init();
touchpad_init();
demo_create();
/* Infinite loop */
while (1)
{
HAL_Delay(10);
lv_task_handler();
}
下载后的界面如下
触摸也是可以用的,所有的代码都是官方,直接使用即可。
上一篇:STM32F429之使用FPU和DSP
下一篇:STM32F429 >> 22. FMC_扩展外部SDRAM(二)
推荐阅读
史海拾趣
作为一家以创新驱动的公司,Festo始终将创新作为公司发展的核心动力。近年来,Festo在研发领域的投资不断增加,推出了一系列具有颠覆性的新产品和解决方案。同时,Festo还积极响应全球可持续发展的趋势,致力于减少碳排放和提高能源效率。通过引入先进的能效措施和扩大光伏(PV)的使用,Festo成功实现了碳中和的目标,为电子行业的可持续发展做出了积极的贡献。
在电子行业中,产业链上下游之间的合作至关重要。安纳森深知这一点,因此始终致力于与产业链上下游的企业建立紧密的合作关系。通过与晶圆厂家、IC设计企业等合作伙伴的深入合作,安纳森不仅获得了稳定的原材料供应和技术支持,还共同研发出了多款具有市场竞争力的新产品。这种合作共赢的发展模式不仅提升了整个产业链的竞争力,也为安纳森的长远发展注入了源源不断的动力。
这五个故事只是安纳森在电子行业发展中可能经历的一部分,实际上,其发展历程可能更加复杂和丰富。无论如何,安纳森凭借其创新的技术、全球化的视野、环保的理念、对侵权问题的积极应对以及产业链合作的深化,已经成为了电子行业中一颗璀璨的明星。
在电子行业中,晶振模组是众多电子设备不可或缺的核心组件。安纳森(AnaSem)公司自创立之初,便致力于研发创新的晶振模组技术。面对市场上多数厂家仍依赖传统晶体制作方法的现状,安纳森凭借其深厚的研发实力和前瞻性的技术视野,成功研发出以单体式集成电路为核心的晶振模组制作技术。这一技术的突破不仅大幅提升了晶振模组的性能与稳定性,更使得安纳森在激烈的市场竞争中脱颖而出,迅速占据了行业的一席之地。
Digi International在无人机技术方面也取得了重要进展。公司与Draganfly公司合作,为新型Draganflyer X4-P无人机配备了无线XBee®模块,实现了更远距离的控制和实时数据传输。这一技术突破不仅提高了无人机的性能和应用范围,也为Digi International在无人机领域的发展开辟了新的道路。通过与Draganfly的合作,Digi International进一步巩固了其在物联网和M2M领域的技术领先地位。
随着产品质量的不断提升,ALLTHREAD开始积极拓展市场。他们与多家国际知名电子企业建立了合作关系,共同开发适用于不同应用场景的螺栓产品。通过国际合作,ALLTHREAD不仅提升了自身的技术水平,还进一步扩大了市场份额。
作为一家有社会责任感的企业,Bipolarics Inc在发展过程中始终关注环境保护和社会公益。公司积极采用环保材料和节能减排技术,努力降低生产过程中的能耗和排放。同时,Bipolarics Inc还积极参与社会公益活动,支持教育事业和扶贫项目等。通过这些举措,公司不仅树立了良好的企业形象,也为社会的可持续发展做出了积极贡献。
以上五个故事虽然是虚构的,但它们基于电子行业的一般发展规律和企业发展的常见路径。在现实中,一个电子行业的发展故事可能会涉及技术突破、市场扩张、战略合作、国际化战略、人才培养和社会责任等多个方面。这些元素共同构成了企业发展的丰富内涵和多样路径。
本来一直在dos用build -c编译也没问题 ,今天在pb下用编译bsp,然后用 build -c编译eboot就产生这样的错误了 return E:\\WINCE500\\PLATFORM\\SMDK2410\\SRC\\BOOTLOADER\\EBOOT\\.\\nand.c BUILD: [01:0000000056:INFO ] ...… 查看全部问答∨ |
|
#include "stdio.h" #include "stdlib.h" #include "string.h" typedef unsigned char BYTE; typedef unsigned long DWORD; typedef unsigned short WORD; #include <pshpack2.h> typedef struct { & ...… 查看全部问答∨ |
接串口的设备是红外接收模块。 因为驱动的工作流程: handle_scancode-->|tty_queue|-->|tty_ldisc|-->/dev/ttyX 而红外接收模块的通讯协议略不同于串口的通讯协议。 所以,串口接收到的数据是需要正确解析。 为此类的设备写tty驱动,可 ...… 查看全部问答∨ |
um0427FWLibexamplesTIMTimeBase 例程中,是用TIM2作为定时器 ,然后从TIM3的4根GPIO管脚输出不同频率的波形。我现在有个问题:不能从TIM2的4根GPIO管脚输出吗? (我把例程的输出管脚改为TIM2上的 PA0,PA1,P ...… 查看全部问答∨ |
|
我的F2812仿真正常,烧写FLASH时Erase/Program/Verify Operation succeeded,但是出现了这个警告,结果是程序没有跑起来 “Warning: This program contains initialized RAM data. It may run successfully under Code Composer Studio but not a ...… 查看全部问答∨ |
|
没玩过MSP430,正好有个设计任务,申请后很快得到回复,试验装到达后发现东西很精致,不错!首先在TI官方网站了解了MSP430-RF430的特性以及用途,及其使用现状。然后直接进入SimpliciTI协议的研究,SimpliciTI是很简单的LISTEN(),LINKTO()模式,END ...… 查看全部问答∨ |
说起来,很少正儿八经读别人的源程序。经常是喜欢直接看时序,看电路图,然后直接写程序,当然写的都是简单程序。后来工作所需,写串口,网络通信程序,当然没办法完全自己写,就参考例程,在原基础上调试增减API。虽说要改首先要看懂。但那些基本 ...… 查看全部问答∨ |