- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(stm32电子相框设计
实习报告
实习类型 生产实习
题 目 华迪实训报告
学院名称 信息与科学技术学院
专业名称 信息工程1班(电子方向)
学生姓名 严鹏
学生学号 201213010118
指导教师 李俊(校外)/余小平(校内)
实习地点 成都华迪公司
实习成绩
二〇 15 年 3 月 二〇 15 年3 月
华迪实训报告
本次实训是一款基于嵌入式硬件平台的数码相框,主控芯片为基于ARM Cortex-M3内核的STM32系列嵌入式处理器,本设计包含主控制器核心板、LCD液晶显示、SD卡存储器等多个功能模块。实现对SD卡里多幅图片以幻灯片形式在TFT屏上动态显示的效果,且带有实时时钟的功能。
一.项目简介
这将是以数字照片的重显为主要功能的产品,其功能更接近于传统意义上的相框。
由于人机界面的限制,为了更方便的重显和浏览以及确定重显的规则,这类产品并不强调有大容量的内存以及丰富的存储卡接口。
嵌入式系统具有以下几个重要特征:
①系统内核小,由于嵌入式系统一般应用于小型电子装置,系统资源相对有限,所以内核较之传统的操作系统要小得多。比如,ENEA公司的OSE分布式系统,内核只有5KB,而Windows的内核则要大得多。
②专用性强,嵌入式系统的个性化很强,其中的软件系统和硬件结合非常紧密,一般要针对硬件进行系统的移植,同时针对不同的任务,往往需要对系统进行较大的更改。另外,程序的编译下载要和系统相结合。
③嵌入式系统一般没有系统软件和应用软件的明显区分,不要求其功能的设计及实现过于复杂,这样既利于控制系统成本,也利于实现系统安全。
④高实时性的操作系统软件是嵌入式软件的基本要求,而且软件要求固化存储,以提高速度,软件代码要求高质量和高可靠性。
⑤嵌入式软件开发要想走向标准化,就必须使用多任务操作系统。嵌入式系统的应用程序可以没有操作系统而直接在芯片上运行,但为了更合理的调度多任务,利用系统资源、系统函数,用户必须自行选配RTOS开发平台。
⑥执行的实时性、可靠性,并减少开发时间,保障软件质量。嵌入式系统开发需要专门的开发工具和环境。由于嵌入式系统本身不具备自主开发能力,即使完成设计后,用户通常也不能对其中的程序功能进行修改,因此必须有一套基于通用计算机的开发工具和环境才能进行开发。
二.功能简介
本次我们做的产品的主要特征是:
1) 可以修改播放方式和播放的时间
2) 设计了开关机动画。
3) 设计了主菜单和目录。
4) 可以动态显示温度。
主程序设计
本系统先对STM32及其外设进行初始化,再对界面进行初始化,接着根据功能选择而分别进入幻灯片模式或时间模式。按键具体功能如下:按键KEY0:播放下一张图片;按键KEY1:播放上一张图片;按键KEY2:切换幻灯片模式与日期时间模式;按键RESET:系统复位;程序流程图如图4-8所示。
三.软件实现
int main(void)
{
u8 key; //返回检测按键值
u8 t=0; //此值用于是否进行RTC的秒更新判断
FileInfoStruct *FileInfo;
u16 pic_cnt=0;//当前目录下图片文件的个数
u16 index=0; //当前选择的文件编号
u16 time=0; //控制时间的变量
Stm32_Clock_Init(9);//系统时钟设置
delay_init(72); //延时初始化
uart_init(72,9600); //串口1初始化
LCD_Init(); //初始化液晶
KEY_Init(); //按键初始化
LED_Init(); //LED初始化
SPI_Flash_Init(
文档评论(0)