通信工程课程设计报告

通信工程课程设计报告

ID:38427106

大小:174.53 KB

页数:15页

时间:2019-06-12

通信工程课程设计报告_第1页
通信工程课程设计报告_第2页
通信工程课程设计报告_第3页
通信工程课程设计报告_第4页
通信工程课程设计报告_第5页
资源描述:

《通信工程课程设计报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、通信工程专业课程设计实验报告班级:姓名:指导老师:时间:2014年10月1515目录一、实验目的41.实验内容简介42实验主要目的4二实验设备4三实验原理41.LED工作原理42.蜂鸣器工作原理53.键盘工作原理64.实验原理及过程7四、实验现象8五、代码说明91、重要变量和函数的定义92、系统初始化程序103、按键中断函数104、时间生成函数115、LED显示136、蜂鸣器167、按键与LED的链接1615一、实验内容1.实验内容利用软件编程实验设计一个数字计时器,完成00:00:00到23:59:59的计时功能,具有保持计数,以及清零的功能。2.实验目的1.了解并熟

2、练应用ADSv1.2软件;2.学会ARM中C语言编程方法;3.熟悉微处理器SEP3203的GE01开发板硬件平台,并掌握SEP3203各功能模块的使用及配置方法;4.实现数字钟功能,并下载至开发板上进行硬件实现二、实验原理1.键盘工作原理如图所示:该矩阵键盘工作过程如下:通过软件设置GPIO的PORTE使Pe4-Pe2循环输出为(110,101,011),每次保证只有一位输出为0,Pe7-Pe5配置为中断输入;15无键按下时,Pe7-Pe5=111,Pe4-Pe2=000,此时无中断。当有键按下时,设5号键按下,此时,B线和F线相连,当Pe4-Pe2的输出为101时,P

3、e6位输入为低,其他位为高,则GPIO口有中断从Pe6输入,判断为有键按下。151.数字钟实验原理1.数字钟原理框图:2.系统时钟程序流程图:151.实现功能说明:1.完成00:00:00到23:59:59的计时功能,2.enter键为计时的停止及启动键;3.按下enter键后再按下“*”键后可数据清零;一、程序语言说明1.定义变量及说明:定义了3个static变量:key_code,time_value,Enter_Flag,U8key_code;U8Enter_Flag;U8time_value[8]={0};key_code:接收键盘的键值;time_value[

4、8]:用于存储数字钟的时间值;Enter_Flag:键盘中断的标志位,为1时正常计时,为0时计时停止,等待键盘的相应操作;2.使用函数说明:ModuleRtc():时钟计时函数;keyhandler():键盘中断处理函数,通过按键控制计时;LedDisPlay():LED显示函数,主函数中调用;LedDisPlay(time_value);用于在数码管上显示时间。3.程序语言说明① 初始化程序system_init();15keyboardinit();GPIO_init();//初始化管脚ModuleStepMotor();① counter函数while(1){in

5、ti;for(i=0;i<5000000;i++);if(Enter_Flag==0)ge++;if(ge>=10){ge=0;shi++;if(shi>=6){shi=0;bai++;if(bai>=10){bai=0;qian++;if(qian>=6){qian=0;15wan++;if((shiwan!=2)&&(wan>=10)){wan=0;shiwan++;}if((shiwan==2)&&(wan>=4)){wan=0;shiwan=0;}}}}}Zhuan_Shu[0]=ge;Zhuan_Shu[1]=shi;Zhuan_Shu[2]=16;Zhuan

6、_Shu[3]=bai;Zhuan_Shu[4]=qian;Zhuan_Shu[5]=16;Zhuan_Shu[6]=wan;Zhuan_Shu[7]=shiwan;15① LEDdisplay程序voidLedDisPlay(U8data[]){U8*SegData;Hex2Seg(data,SegData);//十六进制数字翻译成7段译码值LedOut(SegData,1);//在led上显示}voidGPIO_Init(){*(RP)PORTD_SEL=0x7;//设定GPIO口PD0/1/2为通用口*(RP)PORTD_DIR=0x0;//设定GPIO口PD0/

7、1/2为数据输出}voidHex2Seg(U8hexdata[],U8*p){inti;for(i=0;i<8;i++){*p++=SEGMENT[hexdata[i]];//将要显示的数值,通过查找7段译码表翻译成码值}}15voidLedOut(U8data[],U32times){intSegment_i,Bit_i,i;U8Segment_Data;U8tempData;for(Bit_i=0;Bit_i<8;Bit_i++)//依次串行导入八个led的显示内容{Segment_Data=*(data+Bit_i);//获得一个l

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。