欢迎来到沃文网! | 帮助中心 分享知识,传播智慧!
沃文网
全部分类
  • 教学课件>
  • 医学资料>
  • 技术资料>
  • 学术论文>
  • 资格考试>
  • 建筑施工>
  • 实用文档>
  • 其他资料>
  • ImageVerifierCode 换一换
    首页 沃文网 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    基于ARM Cortex-M0处理器的数字四通道电压表设计.doc

    • 资源ID:830686       资源大小:2.70MB        全文页数:14页
    • 资源格式: DOC        下载积分:20积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: QQ登录 微博登录
    二维码
    微信扫一扫登录
    下载资源需要20积分
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,下载更划算!
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于ARM Cortex-M0处理器的数字四通道电压表设计.doc

    1、 目 录摘要2引言 31 设计方案41.1 设计目的41.2 设计任务42 软件介绍42.1 Keil uVision4介绍 43 硬件介绍53.1 新唐Nu-LB-NUC140学习板53.2 Cortex-M0处理器64 设计过程64.1 接口64.2 芯片算法参考64.3 算法介绍75 主要程序 76 实验结果 107 结论 11谢辞12参考文献13摘 要本设计介绍了一种基于ARM Cortex-M0处理器的数字电压表。根据数据数据采集的工作原理,设计实现数字电压表,将所测量的电压值传送给液晶显示屏进行显示。NuMicro NUC140包含一个12位8通道逐次逼近式的模拟-数字转换器(SA

    2、R A/D converter)。这种电压表不仅整个电路结构简单、明了,直观的显示测量结果,而且具有精度高,性价比高,使用方便等特点。关键词:ARM Cortex-M0、NuMicro NUC140、数字电压表。引言数字电压表简称DVM(Digital Voltmeter),是当今应用极为广泛、高性能价格比、广受测试工作者欢迎的最基本的电子测量仪表。DVM是采用数字化技术的电压表,以其高准确度、高可靠性、高分辨力、高性价比等优良特性倍受人们的青睐。数字电压表作为数字化仪表的基础与核心,被广泛应用于电子和电工测量、工业自动化仪表、自动测试系统等领域,显示出强大的生命力。与此同时,由数字电压表扩展

    3、而成的各种通用及专用仪器仪表,也将电量及非电量测量技术提高到崭新水平。数字电压表是从电位差计的自动化过程中研制成功的。开始时四位显示,然后是5位、6位,发展到现在的7位、8位甚至更多;从最初的一两种类型发展到原理不同的几十种类型;从最早采用继电器、电子管发展到全晶体管、集成电路、微处理器化;显示器件也从辉光数码管发展到等离子体管,发光二极管、液晶显示器等。在这发展过程中,数字电压表的体积和更好越来越小,重量不断减轻,价格也逐步下降,可靠性越来越高,量程范围也逐步扩大。目前国内外的产品多为3Error! No bookmark name given.位半、4位半、5位半至8位半显示。便携式、手持

    4、式DVM,工业自动化仪表,长、热、力、电、光学测量表头以3Error! No bookmark name given.位半、4位半、5位半为多。目前,由各种单片A/D转换器构成的数字电压表,已经广泛用于电子集电工测量,工业自动化仪表、自动测试系统等智能化测量领域,显示出强大的生命力。我国研制数字式电压表是从1958年开始的。1960年研制成数字频率计,1965年,上海北京同时研制出5位数字电压表。在体会到数字电压表的重要后,紧接着就有很多研制和生产数字电压表的单位,并陆续生产出6位、7位的数字电压表20世界80年代,我国科技人员依靠自己的力量,研制成多种类型,不同工作原理的数字电压表。近年来,

    5、国内许多厂家积极引进、吸收国外先进技术,紧抓技术研发,现已能够大批量生产多种高、精、尖的数字电压表以及相应的标准源、校验仪。科学技术现代化的今天,是电子技术和信息技术迅速发展的时代。数字电压表在工程测量、计量检定、科学实验,机械电子,电能电力、邮电通信等诸多领域有着非常广泛的应用,尤其是智能化数字仪表的普及和应用,在数字化、自动化、软件化测量中发挥着更重要的作用。1 设计方案1.1 设计目的通过本次课题设计,应用嵌入式实时操作系统等所学相关知识及查阅资料,完成四通道电压表设计,以达到理论与实践更好的结合、进一步提高综合运用所学知识和设计的能力的目的。 通过本次设计的训练,可以使我在基本思路和基

    6、本方法上对基于ARM Cortex-M0处理器的嵌入式系统设计有一个比较感性的认识,并具备一定程度的设计能力。1.2 设计任务(1).掌握ARM Cortex-M0处理器的最小电路及外围扩展电路的设计方法; (2).了解ARM数据转换功能及工作过程;(3).设计四通道电压表,采用分压扩大量程; (4).完成主要功能模块的软件设计; 2 软件介绍2.1 Keil uVision4介绍Keil公司是一家业界领先的微控制器(MCU)软件开发工具的独立供应商。Keil公司由两家私人公司联合运营,分别是德国慕尼黑的Keil Elektronik GmbH和美国德克萨斯的Keil Software Inc

    7、。Keil于2005年由ARM公司收购,现在是ARM旗下的一个公司。2009年2月发布keil uvision4,keil uvision4引入灵活的窗口管理系统,使开发人员能够使用多台监视器,并提供了视觉上的表面对窗口位置的完全控制的任何地方。keil uvision4新的用户界面可以更好地利用屏幕空间和更有效地组织多个窗口,提供一个整洁,高效的环境来开发应用程序。新版本支持更多最新的ARM芯片,还添加了一些其他新功能。2011年3月ARM公司发布最新集成开发环境RealView MDK开发工具中集成了最新版本的keil uvision4,其编译器、调试工具实现与ARM1器件的最完美匹配。最

    8、新的keil uvision4 IDE,旨在提高开发人员的生产力,实现更快,更有效的程序开发。引入了灵活的窗口管理系统,能够拖放到视图内的任何地方,包括支持多显示器窗口。keil uvision4在keil uvision3 IDE的基础上,增加了更多大众化的功能。keil uvision4的新特性有多显示器和灵活的窗口管理系统;系统浏览器窗口的显示设备外设寄存器信息;调试还原视图创建并保存多个调试窗口布局keil uvision4多项目工作区简化与众多的项目。承先前Protel软件功能的基础上,综合了FPGA设计和嵌入式系统软件设计功能,Altium Designer 对计算机的系统需求比先

    9、前的版本要高一些。主要功能有原理图设计、印刷电路板设计、FPGA的开发、嵌入式开发等等。3 硬件介绍3.1 新唐Nu-LB-NUC140学习板NuMicro NUC140系列是32位的内嵌ARM Cortex-M0核的微控制器 ,适用于工业控制和需要丰富的通信接口的应用领域,Cortex-M0是ARM最新的32位嵌入式处理器,拥有与传统8051单片机之匹敌的价格优势。NuMicro NUC140 Connectivity Line 带全速USB 2.0 和 CAN功能,内嵌Cortex-M0内核,最高可运行至50 MHz,内建32K/64K/128K字节的Flash存储器,以及4K/8K/16

    10、K字节SRAM,4K字节用于存储ISP引导代码的ROM,和4K字节的数据 Flash 存储器。另外学习板上具备丰富的应用模块,如七节管,128*64 LCD显示屏,可擦写的EEPROM及SPI flash,LED数组,3x3按键数组,触发中断按键,蜂鸣器,音效编码,通用IO接口,USB接口,SD记忆卡插槽,RS-232,PS/2,CAN和LIN接口,用户可藉此验证应用程序,便捷的实践各种应用。NuMicro NUC140 带有ISP(在系统编程)和ICP(在电路编程)功能,允许用户无需取下芯片,直接在电路板上对程序存储器进行升级。特点:(1)微控制器: ARM Cortex-M0内核运行频率可

    11、达50MHz 支持低功耗掉电模式 嵌套向量中断控制器NVIC支持32个中断输入,每个中断有4个优先级 支持串行调试(SWD)接口, 2个观察点/4断点 内建一组LDO支持宽工作电压范围:2.5V5.5V(2)存储器: 32K/64K/128K 字节 Flash 用于存储程序代码 在128K字节系统中可配置数据FLASH地址和大小,在32K字节和64K字节系统中固定为4K字节数据 4K字节 Flash用于存储ISP引导代码(LDROM) 支持在系统编程 (ISP)方式更新应用程序 4K/8K/16K 字节内建 SRAM(3)外设功能:I/O端口、支持EBI(外部总线接口)(100-pin and

    12、 64-pin Package Only)、Timer、Watchdog Timer、RTC、UART、SPI、I2C、CAN 2.0、PS/2、USB 2.0 Full-Speed Device、PWM、ADC(4)编程方式:系统编程(ISP)、电路编程(ICP)(5)欠压检测: 支持四级检测电压: 4.5 V/3.8 V/2.7 V/2.2 V 支持欠压中断和复位选择(6)封装:LQFP-1003.2 Cortex-M0处理器Cortex-M0处理器,是市场上现有的最小、能耗最低、最节能的ARM处理器。该处理器能耗非常低、门数量少、代码占用空间小,使得MCU开发人员能够以8位处理器的价位,

    13、获得32位处理器的性能。超低门数还使其能够用于模拟信号设备和混合信号设备及MCU应用中,可望明显节约系统成本.ARM凭借其作为低能耗技术的领导者和创建超低能耗设备的主要推动者的丰富专业技术,使得Cortex-M0处理器在不到12K门的面积内能耗仅有85微瓦/MHz(0.085毫瓦)。该处理器把ARM的MCU路线图扩展到超低能耗MCU和SoC应用中,如医疗器械、电子测量、照明、智能控制、游戏装置、紧凑型电源、电源和马达控制、精密模拟系统和IEEE 802.15.4(ZigBee)及Z-Wave系统。Cortex-M0处理器还适合拥有诸如智能传感器和调节器的可编程混合信号市场,这些应用在传统上一直

    14、要求使用独立的模拟设备和数字设备。4 设计过程4.1 接口Based on NUC140 LQFP 100pin ADC0 / GPA0 : pin 71ADC1 / GPA1 : pin 72ADC2 / GPA2 : pin 73ADC3 / GPA3 : pin 74ADC4 / GPA4 : pin 75ADC5 / GPA5 : pin 76ADC6 / GPA6 : pin 77ADC7 / GPA7 : pin 784.2芯片算法参考VIN是ADC采样输入电压,连接到比较器VREF是ADC比较参考电压与输入电压参考电压连接到3.3Vnuc140学习板上ADC的输出是一个12位的二

    15、进制代码,所以它的数字范围04095数字值对应于输入电压的电压电平0:0000_0000_0000是3.3V0/ 4096 =0 V1:0000_0000_0001是3.3V1/ 40962048:1000_0000_0000是3.3V2048/ 4096 =1 /2V4095:1111_1111_1111是3.3V4095/ 4096 =1V4.3 算法介绍由上可知电压单位为1V时,所测电压值v/4096*3.3,显示为mV时,v/4096*3.3/1000,因为采用了分压,所以结果乘以2。dl1=(ADC-ADDR0.RSLT)/4.096*3.3*2;5 主程序/ Smpl_ADC_VR

    16、1 : use ADC7 to read Variable Resistor (on-board)/#include #include NUC1xx.h#include SYS.h#include LCD.hvoid InitADC(void)/* Step 1. GPIO initial */ GPIOA-OFFD|=0x00800000; /Disable digital input pathSYS-GPAMFP.ADC0=1; /Set ADC function SYS-GPAMFP.ADC1_AD12=1;SYS-GPAMFP.ADC2_AD11=1;SYS-GPAMFP.ADC3_A

    17、D10=1;/* Step 2. Enable and Select ADC clock source, and then enable ADC module */ SYSCLK-CLKSEL1.ADC_S = 2;/Select 22Mhz for ADCSYSCLK-CLKDIV.ADC_N = 1;/ADC clock source = 22Mhz/2 =11Mhz;SYSCLK-APBCLK.ADC_EN = 1;/Enable clock sourceADC-ADCR.ADEN = 1;/Enable ADC module/* Step 3. Select Operation mod

    18、e */ADC-ADCR.DIFFEN = 0; /single end inputADC-ADCR.ADMD = 2; /single mode/* Step 4. Select ADC channel */ADC-ADCHER.CHEN = 0x0f;/* Step 5. Enable ADC interrupt */ADC-ADSR.ADF =1; /clear the A/D interrupt flags for safe ADC-ADCR.ADIE = 1;/NVIC_EnableIRQ(ADC_IRQn);/* Step 6. Enable WDT module */ADC-AD

    19、CR.ADST=1;int32_t main (void)char TEXT116=volt1(mv): ; char TEXT216=volt2(mv): ; char TEXT316=volt3(mv): ; char TEXT416=volt4(mv): ;UNLOCKREG();SYSCLK-PWRCON.XTL12M_EN = 1; / enable external clock (12MHz)SYSCLK-CLKSEL0.HCLK_S = 0; / select external clock (12MHz)LOCKREG();InitADC(); / initialize ADCi

    20、nit_LCD(); / initialize LCD pannelclear_LCD(); / clear LCD panel while(1) int dl1;int dl2;int dl3;int dl4;while(ADC-ADSR.ADF=0); / wait till conversion flag = 1, conversion is doneADC-ADSR.ADF=1;/ write 1 to clear the flagdl1=(ADC-ADDR0.RSLT)/4.096*3.3*2;dl2=(ADC-ADDR1.RSLT)/4.096*3.3*2;dl3=(ADC-ADD

    21、R2.RSLT)/4.096*3.3*2;dl4=(ADC-ADDR3.RSLT)/4.096*3.3*2;sprintf(TEXT1+10,%4d,dl1); / convert ADC7 value into textsprintf(TEXT2+10,%4d,dl2);sprintf(TEXT3+10,%4d,dl3);sprintf(TEXT4+10,%4d,dl4);print_Line(0, TEXT1); / output TEXT to LCDprint_Line(1, TEXT2);print_Line(2, TEXT3);print_Line(3, TEXT4);DrvSYS

    22、_Delay(20000); / delayADC-ADCR.ADST=1; / restart ADC sample6 实验结果7 结论 经过一段时间的努力,我顺利的完成了这次嵌入式综合课设。这是一个由难到易的过程。从课题的选择开始,到模块选择,软件系统的设计这其中经历了很多困难,但是更重要的是在这个过程中我得到了很大的锻炼。一方面通过开发板等一些器件的设计让我学习和掌握了ARM嵌入式的基础知识和技术要点,也使以前学的很多知识都得到了运用;另一方面在用KEIL进行软件编辑,然后再转换成一维的WORD中进行编辑,这个过程中让我掌握了计算机辅助的设计技术。当然,这是一个需要不断的尝试,不断的校核

    23、,不断的修改,最后完成一个合理的设计的过程,需要的是细心和耐心。 通过这次课程设计,我不仅学到了关于ARM嵌入式技术方面的许多专业知识,同时也让我感觉到团队合作的重要性。其实如何有效和快速的找到资料也是课设给我的启发,利用好图书馆和网络,是资源的到最好的利用。与他人交流思想是取得成功的关键,在交流中,不仅强化了自己原有的知识体系,也扩展了自己的思维。课设是一个通过思考、发问、自己解惑并动手、提高的过程。我会在以后的学习中不断学习,积累经验,完善自己。 对于这次嵌入式综合课程设计不仅巩固了以前所学过的知识,而且学到了很多在书本上没有学到过的知识,掌握了一种系统的研究方法,可以进行一些简单的编程。

    24、也让我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,从而提高自己的实际动手能力和独立思考的能力。 这次课设在很大程度上培养了我拼搏的工作精神。使我受益匪浅,更加明确了自己专业的方向。谢辞通过本次课程设计,使我们对ARM开发有了一定的掌握和理解,巩固了我们在ARM嵌入式系统基础教程课程中所学的基本理论知识和实践技能,也使我们对这门课程有了更深入的了解,熟悉了GPIO的使用,了解ARM芯片的内部功能模块,及内核架构,进一步激发了我对所学专业的兴趣,提高了我们的思考和实践能力。在本次的设计过程和设计说明书的撰写过程中,叶金才老师给

    25、予了我们热心的帮助和大力的支持,给我们提供了诸多的宝贵意见,拓宽了我的思路,在此,我们向两位老师致以崇高的敬意和衷心的感谢!在我们学习的过程中,班里的许多同学也给我们做了耐心和详细的指导,让我们再一次深深地感受到同学之间的互相学习是多么的重要,在此我对帮助我们的老师和同学表示诚挚答感谢!参考文献1ARM嵌入式系统基础教程M.2版.周立功主编.北京;北京航空航天大学出版社,2008.92ARM嵌入式系统实验+实训指导书M.李红岩,杨学存编写.西安安科技大学3 张剑平著,智能化检测系统及仪器,北京国防工业出版社,2005.84 张毅坤、陈善久、裘雪红等编著,单片微型计算机原理及应用,西安电子科技大学出版社,1998.85 杨拴科主编,模拟电子技术基础,北京高等教育出版社,20036 张克农主编,数字电子技术基础,北京高等教育出版社,2003.47 王为青主编,51单片机应用开发案例精选。2007.88 刘霞电子设计与实践M. 北京:电子工业出版社. 2009.84-165.14


    注意事项

    本文(基于ARM Cortex-M0处理器的数字四通道电压表设计.doc)为本站会员(精***)主动上传,沃文网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知沃文网(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服点击这里,给沃文网发消息,QQ:2622162128 - 联系我们

    版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

    Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1

    陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922