一、开发环境
1.ARM+linux
2.ubuntu16.04(安装了GCC,arm-linux-gcc 5.4.0)
安装方法ubuntu16.04
https://blog.youkuaiyun.com/qq_40592257/article/details/106296000
安装arm-linux-gcc 5.4.0
https://blog.youkuaiyun.com/weixin_42108484/article/details/84295214
3.GEC6818开发板
4、安装SecureCRT
二、bmp图片显示原理
1、bmp图片显示的格式
常见的图片格式有:bmp,jpg,png,gif
我们使用的是bmp图片
计算机中用RGB表示每个像素点的颜色值
bmp格式图片的编码方式:
第一个:每个像素点占3个字节(24位二进制),分别存放的是BGR的数值(正常我们习惯的顺序RGB,但是bmp图片编码的时候是反的)
第二个:lcd要求每个像素点占4个字节,多出来的一个字节(A存放的是透明度),也就是说lcd要求是ARGB
第三个:bmp图片RGB的排列顺序并不是我们常规理解的RGB,而是BGR
并且bmp图片像素点上下也是颠倒的
第四个:bmp图片的宽所占的字节数如果不能被4整除,windows在保存的时候,会在每一行的后面添加垃圾数凑够4整除
领悟道理:每种图片都有自己独特的编码方式,显示图片实际上先要了解图片的编码方式,然后使用文件IO配合算法解决图像显示的问题
2.分析bmp图片显示的思路
开发板的基本信息:
cpu: 三星s5p6818芯片 基于ARM架构的
ARM:英国一家半导体公司,设计芯片的内核和架构,自己不生产芯片
高通
联发科
三星
华为
液晶屏: 7英寸,分辨率 800*480
思路:
(1)打开你要显示的bmp图片
打开lcd的驱动 --》文件IO可以对硬件设备进行操作
(2)读取bmp图片的像素点颜色值
(3)把读取的颜色值写入到lcd中
(4)关闭bmp,lcd驱动
3.开发板的基本使用
设置字体大小:secure CRT中的选项---》会话选项--》外观--》字体
(1)连接电脑,使用secure CRT软件通过串口线查看开发板系统中的内容
usb转串口线连接电脑,安装驱动
安装secureCRT软件,配置该软件(见day04图示)
(2)使用开发板
第一:编译程序
gcc --》只适合编译得到X86平台的程序(电脑上运行)
arm-linux-gcc(交叉编译工具) --》只适合编译得到ARM平台的程序(开发板上运行)
arm-linux-gcc hello.c -o hello
补充: file 文件名 //查看该文件的属性
交叉编译
程序在PC端编译,程序运行在开发板上运行(程序的编译和运行不在同一个平台)--》把这个过程叫做交叉编译
第二:下载程序到开发板
方法一:使用串口下载(下载速度慢)
rx 要下载的文件名 回车 --》点击传输--》选择发送xmodem--》自动弹出对话框,你找到要下载的文件,双击自动下载、
可以把文件打包之后下载(速度快)
补充: 压缩(打包) tar -jcf 压缩包名字.tar.bz2 文件1 文件2 .....
tar -zcf 压缩包名字.tar.gz 文件1 文件2 .....
比如: tar -jcf 88.tar.bz2 1.bmp 2.bmp 3.bmp
解压
tar -jxf 压缩包的名字.tar.bz2
tar -zxf 压缩包的名字.tar.gz
常见的压缩包格式:两种bz2结尾和gz结尾
第三:安装交叉工具
第一步:解压压缩包
tar -xf arm-linux-gnueabi-5.4.0.tar.xz
第二步:设置环境变量(为了让arm-