您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 嵌入式系统板级电路装配课程设计
西安邮电大学(计算机学院)嵌入式系统板级电路装配课程设计实验报告专业名称:网络工程班级:学号:姓名:指导教师:实验日期:2019年6月10日—6月21日第一周:开发板硬件装配一、开发板硬件结构开发板由PACK板和底板构成,PACK板板载一枚LCP2132芯片,该芯片是NXP公司(飞利浦创建)设计的一款基于ARM7TDMI-S的高性能32位RISC微控制器,具有Thumb扩展功能,64KB片内FlashROM,具有在系统编程(ISP)和应用编程(IAP),16KBRAM,向量中断控制器,两个UART,一个带全调制解调器接口。两个I2C串行接口,两个SPI串行接口三个32位定时器,看门狗定时器,带有备用电池备份的实时时钟,欠压检测电路通用I/O引脚。CPU时钟高达60MHz,片内晶体振荡器和片内PLL。板子总体分了电源电路,晶振电路,复位电路,LED电路,按键电路,串口电路,JTAG调试电路等几部分,如下图所示EasyARM2132开发板底板元件布局图二、硬件原理组成及分析EasyARM2132完整电路图1、电源电路LPC2132电源电路部分采用了一个DC接口的POWER1电口和一个5V的USB供电口,内部采用了一个1N5819二极管来稳流,采用低压差稳压器。电路另一边有一个红色的发光二极管,当电源接通后,二极管会点亮。2、复位和I2C电路复位电路采用一颗CAT1025芯片,CAT1025是基于微控制器系统的存储器和电源监控的完全解决方案。它们利用低功耗CMOS技术将2K位的串行EEPOM和用于掉电保护的系统电源监控电路集成在一块芯片内。存储器采用400KHz的I2C总线接口。CAT1025包含1个精确的Vcc监控测电路和2个开漏输出:RESET和!RESET当Vcc低于复位门槛电压时,!RESET引脚将变为高电平,RESET将变为低电平。CAT1025还包含一个写保护输入(WP)。如果WP连接高电平,则写操作被禁止。nRST连接到芯片LPC2132的复位引脚,当复位按键RST1按下时,CAT1025的复位引脚输出有效信号,使芯片LPC2132复位。3、时钟电路LPC2132微控制器可使用外部晶振或外部时钟源,片外晶振频率范围1~30MHz如下图中Y1-11.0592MHz,内部锁相环电路PLL可调整系统时钟,通过片内PLL可实现最大为60MHz的CPU操作频率,实时时钟具有独立的时钟源,如下图中Y2-32.768KHZ晶振。4、JTAG接口电路采用ARM公司提出的标准20脚JTAG仿真调试接口,JTAG信号的定义以与LPC2132的连接如下图:5、按键与显示电路LPC2132开发板具有4个按键、4个LED灯。4个LED灯一边已经与DP3V3连接,另一边经过1个470R的电阻后与JP1跳线相连,当JP12连通的时候,LED1的一侧与芯片的P0.17口就会连通,P0.17口输出低电平,LED1就会点亮,如果P0.17输出高电平,LED1就会熄灭。4个按键中复位键已经在前面介绍了,剩下三个按键KEY1、KEY2、KEY3一边接地,另一边接了4K7的电阻然后与正极相连,还接了JP2跳线组,如果JP2的12连通,那么P0.16就和KEY1连通,当按键按下的时候,P0.16输出低电平,当按键没有按下的时候P0.16输出高电平,因为按键检测电路可以编写为检测是否有低电平来判断按键是否按下。6、UART接口电路CH340G是一个USB转串口芯片,可以把电脑的USB口映射为串口用。三、开发板硬件安装调试过程1、元件的识别与检测a.电阻的识别与检测固定电阻碳膜电阻识别:按结构分为可变电阻按材料分为金属膜电阻敏感电阻线绕电阻本次焊接主要使用金属膜电阻,耐高温、高频特性好、精度高、但是成本较高。主要使用不同颜色的色环在电阻表面标志出电阻主要参数,此方法又分为四色环和五色环两种。(1)五道色环电阻(2)四道色环电阻第一环表示阻值的第一位数字第一环表示阻值的第一位数字第二环表示组织的第二位数字第二环表示组织的第二位数字第三环表示组织的第三位数字第三环表示倍率第四环表示倍率第四环表示误差第五环表示误差检测:检测其阻值的好坏。使用万用表的欧姆档测量电阻的阻值,将测量值与标称值进行比较,从而判断电阻是否出现短路、短路、老化及调节障碍,是否正常工作。b.电容的识别与检测:固定电容识别:按结构分为可调电容按介质又分为陶瓷,云母、纸质、薄膜、电解电容几种检测:一般采用万用表的最高电阻档进行检测电容的大小和好坏。(注)(1)智能检测5000pf以上容量的电容器(2)电解电容检测时应注意连极性(3)测量电容时,要避免将人体电阻并在电容的两端,引起测量误差2、电路板焊接(方法、步骤、具体模块电路)焊接方法:先将焊枪加热,浸入一层松香,然后使用锡线在焊枪上镀一层锡层,将焊枪贴在需要焊接的位置,然后将锡线送上,适当的加锡后,先将锡线撤出,然后将焊枪撤出,尽量使被焊的位置成一个球型,没有尖刺,如果需要将两个锡盘连接,则在一个上放锡枪,然后将锡液带到另一个焊盘,如果不行,就使用锡线加锡过。焊接步骤:首先应焊接电源电路,然后焊接复位电路,晶振模块,JTAG模块,复位模块,LED模块,按键模块,串口电路,IO引脚。在焊接usb和芯片时应该额外注意。1.焊接外接电路板。在洞洞板上面焊接一个LED灯,然后引出接口,一个为正,一个为负,然后将正负极分别与排针焊接在一起;将蜂鸣器的正负极分别于排针焊接;将按键的两边与排针焊接在一起。2.焊接LED灯焊接LED电路,将LED1-LED7焊接在开发板上面,然后焊接R4-R7四个电阻,这是二极管的分压电阻。3.焊接开关将KEY1、KEY2、KEY3焊接到开发板上面,然后将3个4K7的电阻焊接到R1、R2、R3三个位置,最后在JP2上面焊接一组排针。4.焊接串口模块将CH340G焊接到开发板对应位置,要注意焊接的时候容易将周围引脚连接在一起,必须非常小心的操作。5.焊接JTAG模块JTAG模块很简单,只需要将JTAG后面的引脚依次焊接即可。3、电路板测试(1)电源电路测试方法:将电源线和开发板的电源模块连接,观察电源指示灯是否点亮,如果点亮,使用万用表测量U1点电压,数值范围为:3.29V~3.31V,标准值为3.30V,表明电源电路模块正常。(2)时钟模块测试方法:用示波器观察晶振引脚的波形,查看晶振是否正常。(3)LED显示模块测试方法:给开发板通电,然后依次给JP1的1、3、5、7接低电平,会发现LED1-LED4依次点亮,如果有不亮的,说明焊接有误,检查二极管的正负是否正确,用万用表检测是否有短路。(4)按键电路测试方法:给开发板供电,用万用表检测KEY1-KEY3的电压,正常范围应该是3.28V-3.31V,当KEY1键按下的时候,JP2的1电压应该为0V;当KEY2键按下的时候,JP2的3电压应该为0V;当KEY3键按下的时候,JP2的4电压应该为0V。(5)复位电路测试方法:给开发板供电开关电压为3.3V或5V(6)串口通信模块测试方法:给开发板供电,然后USB口与电脑连接,电脑的设备管理器可以检测到串口输入,如下图:四、遇到问题分析及硬件调试体会1、遇到的问题a.焊接外接洞洞板的时候,将一块焊盘脱落,只能将元件拆下,重新选择位置焊接。b.焊接大板USB的时候,将引脚焊在了一起,使用吸锡器将焊盘吸下,最后将大板焊接完成后,尝试将USB引脚连接失败,重新重头焊接了一块新板子。2、硬件调试体会在焊接的过程中,对于初学者应该先仔细的学习视频内容,了解焊接过程,不能急于求成直接上手操作,导致问题百出。同时在焊接的过程中要有足够的耐心,仔细焊好每一个引脚,避免出现虚焊的问题。如果后续发现焊接问题,也应该耐心地查看板子的的设计电路图,找出问题的所在重新焊接。当然更重要的是应该多加练习,总结经验,提高自己的能力,掌握焊接技巧,力求做出最完美的电路板。第二周:软件编程与调试一、调试环境搭建①启动ADS1.2IDE集成开发环境。②在ADS主窗口主菜单选择File-New,使用asmforlpc2132工程模板建立一个工程(图例中工程名称为:ZQL_LIB1),指定工程路径(图例中工程路径为D:\ARM_Lib_Bak\ARM_asm)。③点击确认按钮,创建工程。④在ZQL_LIB1工程窗口,双击模板文件main.S,打开该文件。⑤可在主窗口菜单选择Edit-Perferences,设置字体和字号。⑥在main.S文件编辑窗的“addtheusercodehere.添加用户代码”行下建立用户汇编程序代码。⑦选择Project-Make(或快捷键F7),编译链接整个工程。若编译成功,则Erros&Warnings对话框会报告编译错误为0,此时即可对工程进行仿真。二、完成实验内容本人主要负责内容:编写基础实验代码并运行调试,在综合实验中负责数码管倒计时和跑马灯的代码编写。1、GPIO输入与输出(1)实验目的①掌握LPC2132工程模板的使用。②掌握EasyJTAG仿真器的安装和使用。③能够在EasyARM教学实验开发平台上运行第一个程序。④熟悉LPC2000系列ARM7微控制器的GPIO控制。(2)实验原理LPC2132系列的ARM7微控制器的所有GPIO口,均为双向I/O口。引脚可以根据需要配置为I/O口或其它功能,和GPIO相关的寄存器一共有6个见下表:通过编程控制BEEP(P0.7)输出低电平,从而实现蜂鸣器持续发声。(3)实验过程①启动ADS1.2IDE集成开发环境,选择ARMExecutableImageforlpc2132工程模板建立一个工程BeepCon_C。②在user组里编写主程序代码main.c。③选用DebugInRam生成目标,然后编译链接工程。④将EasyARM教学实验开发平台上的P0.7管脚与Beep跳线短接⑤选择Project-Debug,启动AXD进行JTAG仿真调试。⑥全速运行程序,程序将会在main.c的主函数中停止(因为main函数起始处默认设置有断点)。⑦单击ContextVariable图标按钮(或者选择ProcessorViews-Variables)打开变量观察窗口,通过此窗口可以观察局部变量和全局变量。选择SystemViews-DebuggerInternals即可打开LPC2000系列ARM7微控制器的片内外寄存器窗口。⑧可以单步运行程序,可以设置/取消断点;或者全速运行程序,停止程序运行,观察变量的值,判断蜂鸣器控制是否正确。(4)问题分析与解决方法代码没问题,蜂鸣器不响,检查后发现为蜂鸣器负极插错了2、外部中断的控制(1)实验目的学习LPC2000系列ARM7微控制器的向量中断控制器及外中断的应用技术。(2)实验原理主程序闪烁LED,Key1能/停止BEEP的鸣响。(3)实验过程①跳线LED1、Key1和Beep分别连接到P1.18、P0.16和P0.7管脚;使用KEY1模拟外部中断;②启动ADS1.2使用ARMExecutableImageforlpc2132工程模板建立一个工程TimeEINT_C。③在user组中的main.c中编写主程序代码。④装载并能外部中断;⑤选用DebugInExram生成目标,然后编译连接工程。⑥选择【Project】-【Debug】,启动AXD进行JTAG仿真调试。⑦全速运行程序,LED闪烁;⑧每一次按键Key,蜂鸣器就会转换静音或鸣响状态。代码如下:#includeconfig.h#defineBEEPCON17//P0.7引脚控制Beep,低电平蜂鸣#defineLED1118//P1.18引脚控制LED1,低电灯亮/******************************************************************名称:DelayNS()*功能:长软件延时*入口参数:dly---延时参数,值越大,延时越久*出口参数:无************************************
本文标题:嵌入式系统板级电路装配课程设计
链接地址:https://www.777doc.com/doc-7302243 .html