新嵌入式课程设计龙傲天小组_第1页
新嵌入式课程设计龙傲天小组_第2页
新嵌入式课程设计龙傲天小组_第3页
新嵌入式课程设计龙傲天小组_第4页
新嵌入式课程设计龙傲天小组_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、盐 城 师 范 学 院课 程 设 计 报 告系(院、校区):物电学院专 业:电子信息工程(通信技术)学 生 姓 名:朱程 施天雨 何文谢金鑫学 号:12413247 12413234 12413222 12413240 课程设计题目:嵌入式Linux智能停车终端系统起 迄 日 期:6月1日 6 月5日课程设计地点:逸夫实验楼422指 导 教 师:王荣奇 周殿凤1、 课程设计综述本次课程设计由华清远见资深讲师向我们学生展示完整嵌入式项目设计开发流程及方法,以及嵌入式核心技术运用等满足企业真实岗位需求的实用内容,帮助学生在快速熟悉ARM-Linux开发环境的搭建及相关工具的配置及使用,嵌入式项目开

2、发的代码编写规范,以及基于ARM-Linux 产品实现细节等,并在行业专家的引导下,体验一个全真案例的实战过程,同时通过更多行业典型应用的示范分析帮助学生更贴近企业的真实需求和行业的发展,为进一步在嵌入式研发行业中发展打下坚实基础。随着科技的进步,电子技术、计算机技术、通讯技术不断地向各种收费领域渗透,当今的停车场收费系统已经向智能型的方向转变。先进可靠的停车场收费系统在停车场管理系统中的作用越来越大。所以本次课程设计就是用嵌入式Linux设计一个只能停车终端系统。2、 开发平台和软件环境2.1硬件平台表2.1 硬件配置表名称说明CPUCortex-A8构架S5PC100FLASH2M nor

3、flash + 256M Nand FlashSDRAM256MUSB4路USB Host接口,USB2.0-OTG接口网口DM9000以太网控制器串口2个5线串口, 1路3线串口摄像头USB2.0接口 /Camera接口I/O8路I/OA/D转换器10bit 电压0-3VLCD480*320大小PWM蜂鸣器实验2.2软件平台表2.2 软件环境需求表名称说明操作系统开发工具GNU工具启动代码驱动程序项目所涉及到的硬件驱动(蜂鸣器、ADC,按键、FLASH、USB-CAMERA,SD卡等)文件系统:要求根文件系统采用cramfs,用户文件系统采用JFFS2或者yaffs2协议栈TCP/IP (T

4、FTP/NFS实验)服务器B0A或者APACHE 服务器3、 系统软件架构与流程图3.1软件架构表3.1 系统软件架构图3.2系统工作流程图4、课程项目内容4.1 LED模块4.1.1模块功能说明开发平台上有四个LED灯硬件资源,主要用于模拟信号提示,也可用于限高报警灯的警报,灯的顺序可由项目开发需求自行决定。4.1.2模块部分代码#define GPG3CON (*(volatile unsigned int *)0xE03001C0)#define GPG3DAT (*(volatile unsigned int *)0xE03001C4) #define N 1000000void my

5、delay(unsigned int count)while (count > 0)count-;void main(void)/GPG3CON = GPG3CON & 0xffff0000 | 0x000011111;GPG3CON = GPG3CON & (0xffff) | 0x1111;while(1)GPG3DAT=0x2;mydelay(N);GPG3DAT=0x4;mydelay(N);GPG3DAT=0X8;mydelay(N);GPG3DAT=0x1;mydelay(N);GPG3DAT=0x8;mydelay(N);GPG3DAT=0X4;mydela

6、y(N); 4.1.3模块技术点1.S5PC100硬件平台的GPIO端口控制;2.学会查看S5PC100硬件平台原理图LED模块;3.寄存器的位与和位或操作。4.2 PWM模块4.2.1模块功能说明 脉宽调制(PWM)控制方式就是对逆变电路开关器件的通断进行控制,使输出端得到一系列幅值相等的脉冲,用这些脉冲来代替正弦波或所需要的波形。也就是在输出波形的半个周期中产生多个脉冲,使各脉冲的等值电压为正弦波形,所获得的输出平滑且低次谐波少。按一定的规则对各脉冲的宽度进行调制,即可改变逆变电路输出电压的大小,也可改变输出频率。 4.2.2模块部分代码main.c Created on: 2013-5-

7、20 Author: Administrator */* * 主函数 pwm_music */包含系统寄存器定义的头文件#include "s5pc100.h"/音阶频率表const unsigned int yinyue37=/DO RE MI FA SO LA XI262, 294, 330, 370, 415, 266, 294, /低音523, 578, 659, 698, 784, 880, 988, /中音1046, 1174, 1318, 1396, 1567, 1700, 1975 /高音;void soft_delay(unsigned int mloop

8、)while( -mloop>0 );void PwmBeepInit( void )GPD.GPDCON = (GPD.GPDCON & (0xf0) | (0x2<<4); TIMER.TCFG0 = ( TIMER.TCFG0 & 0xff ) | 65; /初始化预分频值是prescal0的预分频值是66TIMER.TCFG1 = ( TIMER.TCFG1 & 0xf0 ) | (0<<4); /初始化多路选通开关的值是 1/1 与prescal0配合使用, /总的预分频的值是66TIMER1.TCNTB1 = 1000;/ 初始

9、化向下计数值是1000TIMER1.TCMPB1 = 500; / 初始化比较寄存器的值是500TIMER.TCON = TIMER.TCON | (1<<9) ;/ TCON寄存器手动更新 TCNTB1 TCMPB1/*>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<

10、;<<<<<<<<<<<<<<<<<<<<<< * 调用该函数, 可以控制蜂鸣器响起, 原理是使能了PWM的TOU1功能为动重装模式>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

11、>>>>>>>>>>>>>>>>>>>>>>>>>>>> */void beep_on( void )TIMER.TCON = ( TIMER.TCON & (0xf<<8) | (1<<11) | (1<<8);/ 00001111 0000 0000* 调用该函数, 可以控制蜂鸣器响起, 原理是停止了PWM的TOU1功能void beep_off( void )TIMER.TCON

12、 = ( TIMER.TCON & (0x1<<8) ; * 设置蜂鸣器发生频* * 输入参数: unsigned int fre : 设置蜂鸣器的频率值#define SYS_SET_FREQUENCE 1000000void beep_set_frequence( unsigned int fre )/若蜂鸣器的发声频率为0则返回if( 0=fre )return ;TIMER1.TCMPB1 = SYS_SET_FREQUENCE/(fre+fre); /根据设定频率重新设定计数器比较的值TIMER1.TCNTB1 = SYS_SET_FREQUENCE/fre;/根

13、据频率重新调整计数值/*>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>. * 大海的简谱, 如果大海能够.<<<<<<<<<<<<&l

14、t;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< */const unsigned char dahai =0x13, 0x15 , 0x16, 0x16, 0x16, 0x16, 0x21, 0x16, 0x15, 0x15, 0x16, 0x15, /哀愁0x13, 0x

15、12 , 0x11, 0x11, 0x11, 0x11, 0x12, 0x13,0x13, 0x12 , 0x11, 0x11, 0x11, 0x11, 0x21, 0x16, 0x15, 0x15, 0x16, 0x15,0x13, 0x15, 0x16, 0x21, 0x21, 0x16, 0x15, 0x15,/飘远;/*>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

16、;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> * 大海的简谱, 控制每一个音的时间 1为长时间 4为短时间<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

17、<<<<<<<<<<<<<<<<<<<<<<<<< */const unsigned char time =4,4, 4, 2, 4 , 2, 4, 4, 4, 2, 4, 2 ,/哀愁4, 4, 4, 2, 4, 2, 2, 1,4, 4, 4, 2, 4, 2, 4, 4, 4, 2, 4, 2,4, 4, 2, 4, 2, 4, 4, 1 /飘远;/主函数int main()unsigned int loop = 0; /循环控制变量uns

18、igned int a = 0; /计算高中低音使用的变量unsigned int b = 0; /计算do re mi .使用的变量unsigned int delay = 0; /计算每一个音延时使用的变量/GPH0.GPH0CON = (GPH0.GPH0CON) & (0x3f<<1); /初始化key1-key6的引脚功能为输入PwmBeepInit(); /初始化PWM硬件, 此刻没有启动PWM/while( ( GPH0.GPH0DAT & (0x3ful<<1) ) = (0x3ful<<1) );/等待有任意一个按键被按下,

19、程序才会向下while(1)/循环播放 音乐for(loop=0; loop<sizeof(dahai)/(sizeof(unsigned char); loop+)/查大海的简谱表a = dahailoop>>4; /计算出高低音b = (dahailoop & 0x0f )-1; /计算出DO RE MI FA SO LA XIdelay = 0x400000ul/timeloop; /计算出每个音的播放间隔时间beep_set_frequence( yinyueab ); /重新设定频率beep_on();/发出一个音soft_delay(delay); /播放延时beep_off(); /关闭蜂鸣器, 每个音播放完成后有间隔感soft_delay(0x10); /关闭蜂鸣器soft_delay(1000000); /播放延时4.2.3模块技术点1.S5P

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论