7.27lcd屏幕显示图片

本文介绍了在嵌入式系统中通过按键、定时器和触摸屏实现LCD屏幕图片切换的方法,涉及定时器中断、按键中断、ADC转换、触摸屏和LCD显示等技术。通过代码展示了按键切换、定时器切换和滑屏切换图片的实现过程。
摘要由CSDN通过智能技术生成

今天主要写了三个程序,是老师之前布置得一秒定时切换图片,滑屏切换图片和按键切换图片三个程序,主要涉及到的之前的知识点有定时器中断,按键中断,adc转换,触摸屏,和lcd图片显示

开始觉得内容比较多,而且只是比较散碎,毫无头绪,但是分开到某一项功能细化知识点思路就比较清晰了

定时器的只需要初始化定时器、将图片显示部分写到中断服务当中就可以了

触摸屏切换需要做初始化触摸屏,adc转换,等待触屏中断,判断左右滑动,然后显示图片

而按键切换图片相对比较简单了,只需要配置按键中断,然后将图片显示部分放到中断服务当中去

而最繁琐的还是屏幕驱动部分,寄存器数量多且功能繁琐,还需要时间来慢慢消化

另外一部分是汉字在屏幕上的显示,需要先查到汉字的区位码,然后调用函数即可显示

code

按键切换

#define GLOBAL_CLK  1
#include <stdlib.h>
#include <string.h>
#include "def.h"
#include "option.h"
#include "2440addr.h"
#include "2440lib.h"
#include "2440slib.h"
#include "mmu.h"
#include "profile.h"
#include "lcd.h"
#include "memtest.h"

#include "bmp.h"

void key_init(void);
static void __irq key_handler(void);
extern void show_pic();
unsigned int value;
extern unsigned char gImage_mei[153608];
extern unsigned char gImage_mein[153608];
extern unsigned char gImage_li[153608];
extern unsigned char gImage_lii[153608];
extern unsigned char gImage_liii[153608];
static void __irq key1_irq(void);
static void __irq key2_irq(void);
int i = 0;

//按键初始化
void key_init(void)
{
    rGPGCON &= ~((0x3<<0)|(0x3<<6)|(0x3<<10) );
   rGPGCON |= ((0x2<<0)|(0x2<<6)|(0x2<<10)  );        // 设置成第三功能模式
   
    rEXTINT1 &= ~((0xf<<0)|(0xf<<12)|(0xf<<20) );      // 触发条件 
    //rEXTINT2 &= ~(0xf<<12);
   
   rEINTPEND |= ((0x1<<8)|(0x1<<11)|(0x1<<13) );      // 清中断标志 写1
    rEINTMASK &= ~((0x1<<8)|(0x1<<11)|(0x1<<13) );     // 打开中断屏蔽字  开中断
   
    /*设置ISR*/
    pISR_EINT8_23=(U32)key_handler;// 注册中断向量
    EnableIrq(BIT_EINT8_23);
}  

 

/

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值