您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > 嵌入式交通灯课程设计
基于ARM的嵌入式交通灯课程设计课程名称:嵌入式系统设计专业:计算机科学与技术班级:B0904学号:0000000088姓名:乔乔1目录1.摘要.................................................22.绪论..................................................22.1课程设计目的......................................22.2课程设计内容......................................23.最小系统设计及交通灯电路设计...........................33.1设计原理..........................................33.2整体电路原理图....................................44.具体设计框图.........................................54.1电源电路原理图....................................54.2时钟电路原理图....................................64.3存储器电路原理图..................................71)NorFlash原理图...............................72)SDRAM存储器原理图.............................84.4JTAG电路原理图...................................95.程序设计............................................106.课程设计总结........................................132交通灯控制系统1.摘要此次试验以S3C2410嵌入式开发平台为硬件基础,主要介绍了嵌入式实时操作系统中的最小系统的各个组成部分,其中包括电源、时钟、复位、存储器、JTAG接口电路原理图及交通灯电路图的设计。关键词:S3C2410;最小系统;交通灯2.绪论2.1课程设计目的(1)掌握嵌入式系统设计的基本方法,熟悉S3C2410的开发环境及软硬件的调试过程,巩固和加深对理论课中知识的理解,提高对所学知识的综合运用能力。(2)了解S3C2410A处理器的工作原理。(3)能够使用S3C2410A处理器的对试验箱上的硬件接口进行控制,输入和输出。(4)能够完成S3C2410A处理器的最小系统的硬件电路设计,并用Protel99设计原理电路图。(5)能够正确编写调试软件。(6)通过完成一个包括电路设计和程序开发的完整过程,了解开发一AR应用系统的全过程,为今后从事相应打下基础。2.2课程设计内容(1)完成S3C2410最小系统的硬件电路设计,并用ProtelDXP设计原理路图;(2)最小系统包括电源、时钟、复位、存储器、JTAG接口(3)JTAG接口选择20针插头(4)存储器容量要求至少2MB的NorFlash和64MB的SDRAM。(5)完成交通指示灯的电路设计以及控制程序代码,在试验箱上进行调试并且能正常工作。33.最小系统设计及交通灯电路设计3.1设计原理最小系统整体框图图1最小系统整体框图说明:由最小系统整体框图可以以看出,一个最小系统至少应该由CPU(S3C2410A)、系统电源、复位电路、系统时钟、JTAG电路、存储器以及外围扩展电路组成。43.2整体电路原理图图2.整体电路原理图说明:这是用ProtelDXPSE所画的最小系统的电路图,其元件清单如下:[][C10.1uF][C20.1uF][C30.1uF][C40.1uF][C21100nF][C4515pF][C4615pF][C4722pF][C4822pF][C6210uF/16V][C710.1uF][C100CAP][C101CAP][C102CAP][C103CAP][C104CAP][C105CAP][C106CAP][C107CAP][C108CAP][C109CAP][C110CAP][C111CAP][C112CAP][C113CAP][C125220uF/25V][CZ1DB-9/MUART1][CZ11DB-9/MUART0][J28TX-4PIN][JP2RXD1][JP?JTAG][R10][R1510K][R1610K][R1710K][R3710K][R5410K][R604.7K][R1793K][RP3010K][RST][U1LK-ARM2410][U2DIP-24LK-CAT1025JI-30][U3LK-SP3232E][X112MHz][X232768Hz](GND-1)(NetJ28_3-1J28-3)(NetR1_2JP?-15R1-2R37-2)(NetR179_1-1R179-1)(NetU1_H5JP?-3R1-1RP30-1U1-H5)(NetU1_J1JP?-5RP30-1U1-J1)(NetU1_J3JP?-9RP30-2U1-J3)(NetU1_J3JP?-7RP30-2U1-J3)(NetU1_J5JP?-13U1-J5)(Net_1-1C113-2)(Net_1-1C106-2)(Net_2-1-2)(PC-RXD0CZ11-2)(VCCC2-2JP?-4JP?-6JP?-8JP?-10JP?-12JP?-14JP?-16JP?-18JP?-20R15-1R60-1U1-T13U1-U14)(VCC33C100-1C107-1)(VDD33-2JP?-1JP?-2R16-2R17-2R37-1R54-2RP30-1RP30-2U1-J11)54.具体设计框图4.1电源电路原理图图3电源电路原理图说明:本电源运用5V的直流电源通过两个三端稳压器转换成我们所设计的最小系统所需要的两个电压,分别是3.3V和1.8V,3.3V的给VDDMOP,VDDIO,VDDADC等供电,而1.8V的给VDDi和RTC供电。其电源原理图如上图3:64.2时钟电路原理图图4.时钟电路原理图说明:S3C2410A可以使用外部晶体或外部时钟输入作为系统时钟,外部晶振频率范围是10MHz~20MHz。本次设计用的事12MHz外部晶振,所以将S3C2410A的OM2,OM3引脚接为低电平,将外部时钟输入引脚EXTCLK接为高电平,电源原理图如上图4:74.3存储器电路原理图1)NorFlash原理图图5.NorFlash原理图说明:SST39VF1601是16位宽的存储器,每次读操作可取2字节数据,对于S3C2410A来说相应于半字对其,其操作地址最小的变化值为0x00000002。因此将S3C2410A的ADDR1引脚与SST39VF1601的A0引脚链接,不用ADDR0引脚,其它地址依次递增连接即可。82)SDRAM存储器原理图图6.SDRAM存储器原理图说明:此32位总线的存储器由两片16位的SDRAM(HY57V561620)组成,使用s3c2410a的nGCS6片选信号,用U4与数据总线的低16相连,U5与数据总线的高16位相连。94.4JTAG电路原理图图7.JTAG电路原理图说明:用20脚的JATG仿真调试接口,JTAG信号的定义与s3c2410a的链接如上图。JTAG接口J29上的信号nTRST连到s3c2410a芯片的TRST(低电平有效)引脚,达到控制s3c2410a内部JTAG接口电路复位的目的。为了能够使用Multi-ICE仿真器,设置了一个0欧电阻R1(在整体电路原理图中)将JTAG接口的PIN3与PIN15短接。4.5复位电路原理图图8.复位电路原理图10说明:复位电路(此图的上半部分),芯片CAT1025JI-30的信号nRESET连接到s3c2410a芯片的复位脚nRESET,当复位按键RST按下时,CAT1025JI-30的信号nRESET引脚立即输出复位信号,使s3c2410a复位。就是那几个上拉电阻不能省略。5.程序设计#includeconfig.h//定义LED控制口(输出高电平时点亮LED)#defineLED1_CON(111)/*GPE11口*/#defineLED2_CON(112)/*GPE12口*/#defineLED3_CON(14)/*GPH4口*/#defineLED4_CON(16)/*GPH6口*//******************************************************Funtionname:DelayNS**Descriptions:长软件延时。延时时间与系统时钟有关。**Input:dly延时参数,值越大,延时越久**Output:无*********************************************************/voidDelayTime(uint32time){inti,j;for(i=0;i500*time;i++)for(j=0;j1500;j++);}voidDelayFTime(uint32time)//设计高频率的延迟。{inti,j;for(i=0;i250*time;i++)for(j=0;j1500;j++);}/*************************************************Functionname:LED_DispAllOn**Descriptions:控制LED1~LED4全部点亮。11**Input:无**Output:无***********************************************/voidLED1_On(void){rGPEDAT=rGPEDAT|(0x0111);//led1点亮}voidLED2_On(void){rGPEDAT=rGPEDAT|(0x0112);//led2点亮}voidLED3_On(void){rGPHDAT=rGPHDAT|(0x014);//led3点亮}voidLED4_On(void){rGPHDAT=rGPHDAT|(0x016);//led4点亮}/***********************************************Funtionname:LED_Off**Descriptions:控制LED1~LED4全部熄灭。**Input:无**Output:无**************************************************/voidLED_AllOff(void){rGPEDAT=rGPEDAT&(~(0x0311));rGPHDAT=rGPHDAT&(~(0x054));}voidLED1_Off(void){rGPEDAT=rGPEDAT&(~(0x0111));}voidLED2_Off(void){rGPEDAT=rGPEDAT&(~(0x0112));}voidLED3_Off(void)12{rGPHDAT=rGPHDAT&(~(0x014));}voidLED4_Off(void){rGPHDAT=rGPHDAT&(~(0x016));}/**********************************************************Functionname:main**Descriptions:初始化I/O,然后控制LED显示。**Input:无**Output:系统返回值0*******************************************************/intmain(void){inti;LED_AllOff()
本文标题:嵌入式交通灯课程设计
链接地址:https://www.777doc.com/doc-2032223 .html