基于gec6818ARM开发板的嵌入式项目设计(C完整代码) 您所在的位置:网站首页 基于粤嵌gec6818项目门禁 基于gec6818ARM开发板的嵌入式项目设计(C完整代码)

基于gec6818ARM开发板的嵌入式项目设计(C完整代码)

2024-03-09 23:18| 来源: 网络整理| 查看: 265

  1、描述项目

该项目设计的主要用途是小孩子学习时使用的台灯。     打开lcd屏后,界面分为三大块,从左至右,依次是led灯的亮度控制,显示时间和倒计时功能,      计算器功能

首先是led的控制:         在Linux中一切皆是文件,使用文件IO的方式,打开led的文件,通过给文件写入数据来控制灯的亮灭     用两个字节来控制灯的状态,第一个字节来控制灯的亮灭,第二个字节用来控制具体是那个灯,当第二个字节等于8时是指定第一个灯     等于9时是指定第二个灯,等于10时是指定第三个灯,等于12时是同时指定三个灯      然后是显示时间和倒计时功能:     通过设定好的时间,再用取字模的方式用坐标去显示数字出现在需要的位置。     时间下方的倒计时的功能则是,通过使用触摸屏,完成倒计时的时间的加,减和开始倒计时,默认的初始和最低的倒计时的时间是10s     这个时间是定义一个全局变量,通过不断的显示这个变量来显示在屏幕上面的,用手指点击右下方的”+"号,每次点击可以在时间上加10s,     左下角的“-”号可以在时间上减10s。当倒计时的时间倒计为0时,会调用蜂鸣器和sleep延时函数,发出5声“滴”的声音来提醒使用者时间到了。

计算器功能:     这个功能的显示是一张bmp格式的照片,来引导用户点击数字和运算符,这个计算器可以进行简单的加减乘除的四则运算,运算结束后,会将     式子和运算结果显示在上方的显示区域。     这个计算器功是运用数据结构,栈的概念来实现的,将用户按下的数字和运算符用一个数组保存成一个字符串,然后数字入数字栈,符号入符号栈     符号在入栈时,如果是后一个符号的优先级大于前面符号的优先级,会将优先级高的先和数据栈的两个数据出栈计算,计算完之后的数据再入栈,当     遇到左括号时,按正常的优先级顺序入栈,然后继续将括号里面的符号继续按照优先级的顺序入栈,在后面遇到右括号时,就会进行弹栈计算操作,     将左括号后到右括    号前的符号全部弹栈计算,计算完之后的数据再入栈,按这样的规则到最后,符号栈为空,数据栈就只会剩下一个计算完之后的     结果数据。

还有一个功能:超声波测距,接在板子的con2上使用     还有一个功能时超声波测距,超声波传感器使用UART模式来不断返回距离,设定一个阈值,来监控用户的头部离桌面的距离,一旦低于这个阈值,     蜂鸣器则会报警来提醒用户。       

 2.显示bmp照片

    bmp的照片头部有54个字节用来保存照片的信息,通过位运算可以查看图片的长和宽,获取图片的位深,24位的照片是由rgb三个字节来显示一个像素     点的,32位则是有argb四个字节来显示一个像素点,所以必须要通过一个判断来区分图片的位深。     以24位深的bmp照片为例,解析像素点时,读取图片的像素点信息,是要从54个字节后读取的,图片的像素点信息都在保存在54个字节之后,计算机保存    数据是通过小端保存的方式保存的,所以在对lcd屏进行映射时要转换成大段模式,可以通过位运算,r  



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有