历史上的今天
返回首页

历史上的今天

今天是:2024年10月09日(星期三)

正在发生

2021年10月09日 | S3C2440裸机------LCD_抽象出重要结构体

2021-10-09 来源:eefocus

1.lcd.h

我们在lcd.h里面定义一个结构体,用来表示LCD需要的参数。


#ifndef _LCD_H

#define _LCD_H

 

 

enum {

NORMAL = 0,

INVERT = 1,

};

 

/* NORMAL : 正常极性

 * INVERT : 反转极性

 */

typedef struct pins_polarity {

int vclk;  /* normal: 在下降沿获取数据 */

int rgb;   /* normal: 高电平表示1 */

int hsync; /* normal: 高脉冲 */

int vsync; /* normal: 高脉冲 */

}pins_polarity, *p_pins_polarity;

 

typedef struct time_sequence {

/* 垂直方向 */

int tvp; /* vysnc脉冲宽度 */

int tvb; /* 上边黑框, Vertical Back porch */

int tvf; /* 下边黑框, Vertical Front porch */

 

/* 水平方向 */

int thp; /* hsync脉冲宽度 */

int thb; /* 左边黑框, Horizontal Back porch */

int thf; /* 右边黑框, Horizontal Front porch */

 

int vclk;

}time_sequence, *p_time_sequence;

 

 

typedef struct lcd_params {

/* 引脚极性 */

pins_polarity pins_pol;

/* 时序 */

time_sequence time_seq;

/* 分辨率, bpp */

int xres;

int yres;

int bpp;

/* framebuffer的地址 */

unsigned int fb_base;

}lcd_params, *p_lcd_params;

 

#endif /* _LCD_H */

 

2.lcd_controller.h

#ifndef _LCD_CONTROLLER_H

#define _LCD_CONTROLLER_H

 

#include "lcd.h"

 

typedef struct lcd_controller {

void (*init)(p_lcd_params plcdparams);

void (*enable)(void);

void (*disable)(void);

}lcd_controller, *p_lcd_controller;

 

#endif /* _LCD_CONTROLLER_H */


3.lcd_controller.c

 

/* 向上: 接收不同LCD的参数

 * 向下: 使用这些参数设置对应的LCD控制器

 */

 

void lcd_controller_init(p_lcd_params plcdparams)

{

/* 调用2440的LCD控制器的初始化函数 */

lcd_controller.init(plcdparams);

}

 

4.s3c2440_lcd_controller.c

struct lcd_controller s3c2440_lcd_controller = {

.init    = xxx,

.enalbe  = xxx,

.disable = xxx,

};

推荐阅读

史海拾趣

Discera公司的发展小趣事

面对日益激烈的市场竞争和不断变化的市场需求,Discera公司始终保持着对技术创新的追求。他们不断投入研发资源,推动产品的升级和换代。同时,Discera还积极探索新的应用领域和市场机会,为公司的未来发展描绘出更加广阔的蓝图。

以上五个故事概要基于Discera公司的发展历程和公开信息构建,旨在展示公司在电子行业中的成长和进步。请注意,这些故事并非真实事件,仅供参考。

FTDI [Future Technology Devices International Ltd.]公司的发展小趣事

在快速发展的电子行业中,FTDI始终保持着高度的警惕性和创新精神。面对假冒芯片的威胁,公司采取了强有力的打击措施以维护用户权益和市场口碑。同时,为了更好地满足市场需求,FTDI不断加强技术团队建设,引进经验丰富的工程师和有潜力的大学毕业生,不断提升自身的研发实力和技术水平。此外,公司还密切关注市场动态和技术趋势,以便及时调整战略方向并推出具有竞争力的新产品。通过这些努力,FTDI在电子行业中持续保持着领先地位。

富之光(Fujicon)公司的发展小趣事

自成立以来,富致科技始终秉持创新精神,不断投入研发,引进美国最新的PPTC技术,并结合海内外技术专家的智慧,成功开发出多款高性能的自复式保险丝产品。这些产品凭借其出色的安全性能、稳定性和可靠性,迅速在市场上获得了认可。同时,富致科技积极拓展国内外市场,与众多知名企业和行业伙伴建立了长期稳定的合作关系,进一步巩固了其在PPTC保险丝领域的领先地位。

Daito Communication Apparatus Co Ltd公司的发展小趣事

随着微电子学的快速发展,电子设备对元器件的要求也越来越高。Daito公司敏锐地捕捉到了这一市场趋势,决定对保险丝进行进一步的创新。在1995年,他们成功开发出了适用于电路板安装的高精度小型报警保险丝。这一产品的推出,不仅满足了市场对小型化、高精度保险丝的需求,也进一步巩固了Daito公司在电子行业中的领先地位。

随后,Daito公司又针对微电子学的进一步发展,推出了可以连续自动安装的方形微型保险丝。这一产品的推出,大大提高了生产效率,降低了成本,同时也为客户提供了更加便捷的使用体验。近年来,随着面安装技术的兴起,Daito公司又迅速推出了适用于面安装技术的片状保险丝,再次展示了他们在电子行业中的创新实力。

请注意,由于篇幅限制,以上仅为两个故事示例。如果需要更多故事,可以进一步深入研究和探索Daito公司在电子行业中的发展历程和创新实践。

Endicott Research Group Inc (ERG)公司的发展小趣事

进入21世纪,随着LED技术的快速发展,ERG看到了固态照明市场的巨大潜力。2008年,公司决定成立一个新的部门——ERG Lighting,专注于为固态照明市场设计、制造和分销LED驱动器和其他照明配件。这一举措极大地拓展了公司的业务范围,并使其在市场上占据了有利地位。ERG Lighting的成立,不仅为公司带来了新的增长点,还进一步巩固了其在电源转换产品领域的领先地位。

方舟(ARKLED)公司的发展小趣事

方舟公司不仅关注经济效益,还积极履行社会责任。公司积极参与环保事业,推动绿色生产,减少能源消耗和废弃物排放。同时,方舟公司还关注社会公益事业,捐资助学、扶贫济困,为社会和谐发展贡献了一份力量。

问答坊 | AI 解惑

ABS+EBD

ABS是Anti-LockBrakeSystem的英文缩写,即“刹车防抱死系统”。在没有ABS时,如果紧急刹车会使轮胎抱死,刹车的距离变长,容易跑偏或甩尾。ABS是通过控制刹车油压的收放,来达到对车轮抱死的控制,使车辆始终处于临界抱死的间隙滚动状态。    ...…

查看全部问答>

PowerPCB (PADS9.0)使用技巧

PADS 9.0版产品的出现标志着下一代PADS流程技术的诞生。与以往的旧产品相比, PADS 9.0修复和改善了之前版本软件的不足和缺点,集成了许多全新的功能,拥有了更高的可扩展性和集成度,从而使设计者能够结合Mentor Graphics众多独特的创新技术,实现 ...…

查看全部问答>

DIY FPGA初级学习板,核心板已画好,欢迎大家继续提意见!

【背景贴】: “taikai001”俺想学习FPGA--有偿寻求合作开发FPGA学习板https://bbs.eeworld.com.cn/thread-93001-1-1.html 经过和taikai001的几次讨论,准备还是搞个简单点,适合入门的。 目前基本的功能我已经画好了,随后会把原理图发上来 ...…

查看全部问答>

请教下附图中的这个芯片的具体资料

哪位大虾知道这个芯片是做什么的,还有其具体的资料可以给我分享下,不尽感谢!…

查看全部问答>

请问哪款传感器可以检测水果乙烯浓度

请问哪款传感器可以用来搭配单片机,实现检测水果散发的乙烯浓度的功能,哪位做过的请推荐一款,价格最好在500元左右的,谢谢…

查看全部问答>

基于WINCE 5.0操作平台,在VC2005 开发MFC智能设备应用软件

在VS2005开发平台下,开发的软件直接通过Microsoft ActiveSync 同步软件下载到2440开发扳上可以运行(通过开发环境) ;单独生成Release版本的,脱离开发环境下载到开发板上就不能运行了.    而使用eVC开发的应用程序就不存在这个问题. &nbs ...…

查看全部问答>

问一个107+DP83848初始化的问题

请问一下调试过的朋友, STM32F107+DP83848做网络通讯, 在初始化的时候,是不是必须插网线?…

查看全部问答>

学习Sitara AM335x 的Uboot移植笔记

一、移植过程1、架构移植2、SOC移植3、板级移植二、3种移植的区别       1、架构移植:Cortex-A8、MIPS、POWERPC       2、SOC移植 :同一系列,不同型号间的外设(如I2C)的区别     &nbs ...…

查看全部问答>

Beaglebone Black 利用Ubuntu上网二

昨天成功地完成了BBB的上网问题,但是今天发现似乎有更方便的解决方案。 之前配置两张网卡是直接在/etc/network/interfaces中写入配置信息的。这样做当然可以成功,但是有一个问题,就是系统托盘上的NetworkManager就不会再出现和这两张网卡相关的 ...…

查看全部问答>