基于MSP430单片机的虚拟I2C总线软件包VIIC_M1.0

合集下载

基于I_2C总线的A_D转换设计与虚拟仿真

基于I_2C总线的A_D转换设计与虚拟仿真

收稿日期:2009-01-05基金项目:湖南省教育厅基金资助项目(08C753)作者简介:袁锋伟(1977-),男,湖南新化人,南华大学机械工程学院讲师.主要研究方向:测控技术.第23卷第2期南华大学学报(自然科学版)Vol .23No .22009年6月Journal of University of S outh China (Science and Technol ogy )Jun .2009文章编号:1673-0062(2009)02-0045-05基于I 2C 总线的A /D 转换设计与虚拟仿真袁锋伟,黄诗荣,黄 鑫(南华大学机械工程学院,湖南衡阳421001)摘 要:介绍了基于I 2C 总线的A /D 转换的接口电路设计与编程,在Pr oteus 仿真环境下建立单片机系统电路模型,实现了基于I 2C 总线的A /D 转换测试过程的虚拟仿真.实验证明,单片机虚拟仿真实验简化了程序在目标硬件上的调试工作,有利于缩短系统开发周期,降低成本.关键词:PROTE US;单片机;I 2C 总线;虚拟仿真中图分类号:TP336 文献标识码:BThe Desi gn and Vi rtual Si m ul ati onof A /D Conversi on Base on I 2C BusY UAN Feng 2we i ,HUANG Sh i 2rong,HUANG X i n(College of Mechanical Engineering,University of South China,Hengyang,Hunan 421001,China )Abstract:This paper intr oduces the interface design and p r ogramm ing of A /D conversi on based on I 2C Bus and the model for m icr o -contr oller syste m under Pr oteus si m ulati on en 2vir on ment .A t last,si m ulati on was made about the A /D conversi on based on I 2C Bus .The result p r oves that the work l oad of p r ogra m debugging in objective hard ware was reduced,devel opment p r ocess is accelerated and the cost is l o wed by m icr o -contr oller virtual si m u 2lati on experi m ent .Key words:PROTEUS;MCU;I 2C Bus;V irtual Si m ulati on I 2C 总线是Phili p s 公司推出的串行总线,CP U 与各个外围器件仅靠数据线(S DA )和时钟线(SCL )实现完善的全双工数据传输,实现信息交换.I 2C 总线系统与传统的并行总线系统相比具有结构简单、易实现系统扩展、易实现模块化标准化设计、可靠性高等优点.但在单片机组成的智能化仪表和测控系统中,MCS -51系列单片机仍具有相当大的比例,如AT89S51等,它们不具有I 2C 串行总线接口,而A /D 转换芯片往往是必不可少的,PCF8591是一种具有I 2C 总线接口的A /D 转换芯片,与单片机系统构成测控通道可以简化电路,省掉了很多常规电路中的接口器件,提高产品的可靠性.文章将介绍使用Pr oteus 软件调试不具有I 2C 串行总线接口的单片机应用系统中实现I 2C 总线接口的方法和软件设计.1 A /D 芯片介绍PCF8591是具有I 2C 总线接口的8位A /D 及D /A 转换器.有4路A /D 转换输入,1路D /A 模拟输出.这就是说,它既可以作A /D 转换也可以作D /A 转换.A /D 转换为逐次比较型.引脚图如图1所示.电源电压典型值为5V.A I N 0~A I N 3:模拟信号输入端.A0~A3:引脚地址端.VDD 、VSS:电源端.(2.5~6V )S DA 、SCL:I 2C 总线的数据线、时钟线.OSC:外部时钟输入端,内部时钟输出端.EXT:内部、外部时钟选择线,使用内部时钟时EXT 接地.AG ND:模拟信号地.AOUT:D /A 转换输出端.VREF:基准电源端.图1 PCF8591引脚图F i g .1 P i n n i n g d i a gram of PCF 85912 PROTEUS 软件简介PROTEUS 软件是来自英国Labcenter Elec 2tr onics 公司的E DA 工具软件,是一个完整的嵌入式系统软、硬件设计以及交互式仿真平台.Pr oteus 主要由I SI S 和ARES 两个组件组成.I SI S 是Pr o 2teus 软件系统的电路原理图设计环境,同时也是进行仿真和调试的用户界面.ARES 是用于PCB 布线的设计工具.Pr oteus 的最大特色是交互式、可视化的仿真手段.其中的虚拟系统仿真模型有机地结合了混合模式SP I CE 电路模型、动态器件模型和通用微控制器的完整硬件模型.通过Pr o 2teus 的虚拟仿真技术(VS M )能够完全实时仿真单片机及所有相关外围电路[1].和其它E DA 工具相比,PROTE US 软件的特点:1)具有模拟电路、数字电路仿真,单片机及其外围电路组成的系统的仿真,RS232C 动态仿真,以及I 2C 调试器、SP I 调试器、键盘和LCD 系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等.是一款集单片机和SP I CE 分析于一身的仿真软件,功能强大.2)Pr oteus 还提供了在仿真过程中和其他第三方I D E (如WAVE 、KeilμV isi on 2等)进行程序联调的接口,能够在基于原理图的虚拟模型上进行系统固件的编程,并实现软件源代码级的实时调试.3 基于I 2C 总线的A /D 转换设计与虚拟仿真3.1 基于I 2C 总线的A /D 转换接口电路设计I 2C 总线是芯片间串行传输总线,与SP I 、M I 2CROW I RE /P LUS 接口不同,它由一根串行数据线(S DA )和一根串行时钟线(SCL )组成,是全双工双向数据传输线.核心是主控器CP U ,被控器的S DA 、SCL 要相应地接到I 2C 总线的S DA 、SCL 上,可以方便地构成多机系统和外围器件扩展系统.I 2C 总线采用了器件地址的硬件设置方法,从而使硬件系统具有简单而灵活的扩展方法.按照I 2C 总线的规定,其S DA 、SCL 各要通过上拉电阻接到电源VCC 上[2-5].AT89S51单片机本身不带有I 2C 总线接口,则可以利用单片机的2个I/O 引脚来模拟实现I 2C 总线接口,其中一个引脚用于模拟S DA 信号线的时序,另一个引脚用于模拟SCL 信号线的时序.在本设计中,SCL 接AT89S51的P3.4脚,S DA 接AT89S51的P3.5脚.PCF8591的S DA 与SCL引脚分别加上一个10kΩ的上拉电阻.在单片机应用系统中,如果PCF8591的某些输入脚不使用,必须将这些引脚接到V ss 或V DD 端,它的模拟输入端也可以接至AG ND 或VREF 端.通过在Pr oteus I SI S 中绘制系统电路原理图建立仿真模型:运行Pr oteus I SI S,通过选择相应的元器件,绘制硬件电路图如图2所示.具有4条模拟输入端、一个模拟输出端和一个I 2C 串行总线接口;PCF8591片内集成多路分时复用模拟输入、跟踪保持电路、8位模数变换电路和8位数模转换电路,其模数转换和数模转换的最高速率由I 2C 总线的速度最大值确定.模拟输出为电流信号,经过I/V 转换后,可以实现单级性输出,也可接一个双极输出电路,使模拟量输出为双极性.在单片机系统的测控通道使用PCF8591不64南华大学学报(自然科学版) 2009年6月仅可以简化电路设计,减少信号间的相互干扰,同时可以减少对电路板大小的要求,有助于降低设计成本.图2 PCF8591与单片机接口电路图F i g .2 The i n terface c i rcu it d i a gram of PCF 8591and M CU3.2 程序设计PCF8591采用典型的I 2C 总线接口器件寻址方法,即总线地址由器件地址、引脚地址和方向位组成.飞利浦公司规定A /D 器件地址为1001.引脚地址为A2A1A0,其值由用户选择,因此I 2C 系统中最多可接23=8个具有I 2C 总线接口的A /D 器件.地址的最后一位为方向位R /W ,当主控器对A /D 器件进行读操作时为1,进行写操作时为0.总线操作时,由器件地址、引脚地址和方向位组成的从地址为主控器发送的第一字节[2].控制字节用于实现器件的各种功能,如模拟信号由哪几个通道输入等.控制字节存放在控制寄存器中.总线操作时为主控器发送的第二字节.其格式如图3所示:图3 控制字节的格式F i g .3 For ma t of con tra l byte其中:D1、D0两位是A /D 通道编号:00通道0,01通道1,10通道2,11通道3;D2自动增益选择(有效位为1);D5、D4模拟量输入选择:00为四路单数入、01为三路差分输入、10为单端与差分配合输入、11为模拟输出允许有效.当系统为A /D 转换时,模拟输出允许为0.模拟量输入选择位取值由输入方式决定:四路单端输入时取00,三路差分输入时取01,单端与差分输入时取10,二路差分输入时取11.最低两位是通道编号位,当对0通道的模拟信号进行A /D 转换时取00,当对1通道的模拟信号进行A /D 转换时取01,当对2通道的模拟信号进行A /D 转换时取10,当对3通道的模拟信号进行A /D 转换时取11[6-7].图4为I 2C 总线数据传输格式示意图,第一部分为数据传输起始信号,即由此开始进行数据传送;第二部分为受控I C 的地址,用来选择向哪一个受控I C 传送数据;第三部分为读/写位,它指示出受控I C 的工作方式;第四部分为应答信号,它是被CP U 选中的受控I C 向CP U 传回的确认信号;第五部分为传送的数据;第六部分为停止位.在I 2C 总线上挂接的所有被控I C 都要有一个自己的地址,CP U 在发送数据时,I 2C 总线上的所有被控I C 都会将CP U 发出位于起始信号后面的受控电路地址与自己的地址相比较,如果两者相同,则该被控I C 认为自己被CP U 选中,然后按照读/写位规定的工作方式接收或发送数据.因AT89S51单片机不具有硬件I 2C 总线接口,只能靠编写软件来模拟I 2C 总线时序.所以本74第23卷第2期 袁锋伟等:基于I 2C 总线的A /D 转换设计与虚拟仿真设计采用P3.5用于模拟I 2C 的S DA 信号线,P3.4用于模拟SCL 信号线.所有遵循I 2C 总线协议的器件都必须按照I 2C 总线协议规定的时序来进行读、写操作,所不同的只是他们的器件地址以及内部访问单元的地址.图4 I 2C 总线数据传输格式F i g .4 Da t a tran s m issi on for ma t of I 2C Bus根据I 2C 总线时序图和I 2C 总线的数据传输规范,给出其A /D 转换的程序流程图如图5所示,D /A 转换程序流程图如图6所示[5-6].源程序略.图5 PCF8591A /D 转换程序流程图F i g .5 Program flow d i a gram of A /D conversi on运行WAVE 软件,输入源程序,保存为后缀名为3.AS M 的文件,然后编译,进行软件调试,观察涉及到的寄存器与存储单元的内容变化是否正确,最后生成后缀名为3.HEX 的文件.图6 PCF8591D /A 转换程序流程图F i g .6 Program flow d i a gram of D /A conversi on3.3 基于Pr oteus 软件实现虚拟仿真调试在Pr oteus 软件中系统的调试界面如图2所示,PCF8581A /D 转换接口电路设置为单极性工作方式,输入电压范围为0~+5V,且A /D 转换芯片为8位,所以转换结果(数字量)D 与输入电压(模拟量)U 之间理论上有如下关系:D =V5×255.为了实现虚拟仿真调试,在图7中将PCF8581的A2A1A0引脚接地,相应的模拟信号输入通道(AD0通道)与一个电位器连接,通过调节电位器的输出电压,控制电位器的输出电压的变化,来模拟PCF8581A /D 芯片的模拟输入量,然后使用工具条或快捷键启动仿真器,运行加载在84南华大学学报(自然科学版) 2009年6月WAVE 软件中编译的A /D 转换源程序,就可以对以上硬件电路设计进行仿真,也就相当于进行了单片机使用PCF8581完成A /D 转换的实验,该设计就相当于虚拟的实验设备.通过Pr oteus 软件中I 2C 调试器(I 2C DEBUGGER )可以看到PCF8591的器件地址、控制字节以及转换后的数字量,将它们与程序中的器件地址及控制字节比较,就可以知道其是否正常工作.如图7可知,A0、A1、A2接地,所以PCF8591的器件地址为90H 、控制字节为40H,读地址为91H,选择模拟输入通道为AD0通道.加载源程序,然后启动仿真器,在图6中可以看到电位器的输出模拟电压,经过数字电压表检测,显示为+1.5V,经过A /D 转换后,在I 2C 调试器中观察到数字量为4CH,这证明了PCF8591是正常工作的,A /D 转换源程序也是正确的.图7 PCF8581A /D 转换仿真图F i g .7 S i m ul a ti on d i a gram of A /D conversi on PCF8581D /A 转换虚拟仿真的步骤与A /D转换的仿真一样.不同的是,仿真时数字信号由单片机发出,启动D /A 转换后,采用I 2C 调试器及数字电压表检测.PCF8591D /A 采集卡的器件地址为90H 、控制字节为40H,单片机发出00H,数字电压表显示0V.如图8所示.图8 PCF8591D /A 转换仿真图F i g .8 S i m ul a ti on d i a gram of D /A conversi on(下转第59页)94第23卷第2期 袁锋伟等:基于I 2C 总线的A /D 转换设计与虚拟仿真图4 可用节点数对下载速率的影响F i g .4 I nfluence of ava il able node on the down load ra te3 结论文章分析了卫星信息分发的特点,并在此基础之上深入研究了支持卫星信息分发的并行多点传输.围绕如何给卫星信息提供灵活,高效,可扩展的分发服务,探讨了基于信息分发的并行多点传输技术,并在此之上,基于卫星信息的特点,对并行多点传输提出了一些改进.在节点的选择上提出了一种基于节点簇和响应时间的节点选择策略以此来增大文件分发的成功率和节点的利用率,提高网络的性能.参考文献:[1]汤 韦,吴朝晖.P2P -对等网络的未来[J ].计算机应用研究,2004,21(1):13-16.[2]Hari Balkaris Lhnan,Kaashoek M F,David Kargeet,etal .Looking up data in P2P syste m s[J ].Communicati onsof the AC M ,2003,46(2):43-48.[3]钟卫铭,黄传华.对P2P 文件多点传输的改进[J ].计算机工程与设计,2006,27(12):2291-2293.[4]刘宏亮.B itTorrent 核心算法研究与改进[D ].北京:北京交通大学,2008.[5]房 飞.优化的点对点文件交换系统Op ti m izati onPeer 的原理与设计[D ].济南:山东大学,2006.(上接第49页)4 结束语Phili p s 公司推出的I 2C 总线系统较通用单片机系统电路简单.由普通CP U 芯片同I 2C 专用器件组成的系统为模拟I 2C 系统,它性能稳定,价格较低,具有较大的应用前景.本文给出了不具有I 2C 串行总线接口的单片机应用系统中实现I 2C 总线接口的方法和软件设计,具有一定的通用性,且易于嵌入移植.在完成了基于I 2C 总线的A /D 转换的接口电路和软件设计后,采用Pr oteus 与WAVE 软件仿真,完成了整个硬件和软件系统的统一调试过程.借助于Pr oteus 仿真环境,使用虚拟仿真实验方法进行嵌入式系统实验,能够在单片机系统的硬件物理原型尚未就绪的情况下进行全部功能的模拟实现,极大地简化单片机程序在目标硬件上的调试工作,从而有效缩短了系统开发周期,降低了开发成本.参考文献:[1]余新拴,李建忠.消失模充型速度测试的虚拟仿真[J ].微计算机信息,2007,4(23):278-280.[2]胡汉才.单片机原理及其接口技术[M ].北京:清华大学出版社,1996.[3]孙传友.测控系统原理与设计[M ].北京:北京航空航天大学出版社,2002.[4]张友德.单片机原理应用与实验[M ].天津:复旦大学出版社,1992.[5]陈小忠,黄宁,赵小侠.单片机接口技术实用子程序[M ].北京:人民邮电出版社,2005.[6]周剑利,郭建波,崔 涛.具有I 2C 总线接口的A /D芯片PCF8591及其应用[J ].微计算机信息,2005,7(21):150-151.[7]杨金岩,郑应强,张振仁.8051单片机数据传输接口扩展技术与应用实例[M ].北京:人民邮电出版社,2005.95第23卷第2期 徐卓然:支持卫星信息分发的并行多点传输。

MSP430_单片机_资料

MSP430_单片机_资料

MSP430_单片机_资料MSP430_单片机_资料Ulrt-lao wowep drsien wigthTexas nsItumertn s超功低微耗控制器超低功耗控微器制SM4P0Augus3t 0 0/1MSP430_单片机_资料ltUra-lwo pwored signe withMSP340发展历程性能Flsh aFalhs1.-836. VL CDD riev r. 1….-3.6 8V Bsica lCoc Tiker_A meNwROM/OPT.525 -VL DC DrvireFL TiLmrePor/ tBasc Tiierm8- bi tT/ C33xxCD120L Tmeri_ ASAUTR MPFY14xTiermB _DAC2 21US RT MPAYC mo_Ap4F4NewxF13Tixmr_Be DCA1 2UASTRC op_AmF42x3x2xCDL48 ADC41X1xUSART24F1x3x1xLCD921x1x1Cop_AF40xm***-*****20XX年20XX年0202Agustu0 0 /2UlMSP430_单片机_资料ratl-wop wor eedisgn itwhSM4P3:全新的0微制控R器N THE *****NH ,NT TOH EMIEL. ITs’ lFah MsS430 MPU redCuces pwoer cnsuompton driatiscally s, youo rabtteire surn lnogr.eMS430P的效极能.高/IO和PC U运是行用能同的不时钟PC 功U 的耗关通过开状寄态器存控的位实现制MSP430 的耗功极低. 行执时为601A u@ .81 V(Fasl)h 备用时为0.1u A(Fl sh)a MPS403极地延长大电了池寿命电SM4P0 有3业级工16 itb RISCM CU. -40 8-5 C M SP34 0编程方便,发开工具廉价DA MED1M,EMM ;2EMM=2*****+E2hTeMSP 304 runswith aatcwhcr staylat p tou4MH zitenrnalclck!ouAugst 00 /3MSP430_单片机_资料lUra-ltw powero dsiegnw ith*****Fxx :LASH F列特性系New灵活样多外的围模块RUNTH ***** N,O ONT HTEM IL.ET ’Is lash*****MCU red cuesp wore conumptions drsticaaly, so ylou rabtetiesrrun l ongre. 12b-t iAD /8( +4 通道, 转换1 0s) 61-ib timTe_r wAthi C3C /寄器存1-6bt iTime_B wirth 7/C C存器寄1 2 个-SURA接口T 件硬法器乘模拟号信比较器基本时模钟块- 由可程内部电阻控编频制率-由单一部电外控制阻率频-2 3kHz 振产晶生低频- 高晶振频产高生频可选择外部-时钟源超低功耗1.8V . ..3 6.V 供电电压范2围00 A@ 1MH,z 2.2V,活动模式0.7 A 备用模式0. 1A 保持R AM 据数 6 s备从模式唤醒用强大C的U 内P核16Bit R-IC S构结251n 指令s期周@ MHz8Auugs t00/4UMSP430_单片机_资料lrt-alw oopewr edign swtihSP4M0 系3列注1 - :可C由mopaatorrA_实现2 -可由Ti mr/Poert实现3 -有562 FLASBH 和oot BRM O 4 I-punt/utpuOt+ Otpuu外t模围块: TIMRSE: WT Db8tiT B1T _A T_BT- aWchtdgo 定时器- 8位定器时/计器数-Baic siTemr 1- Tmie_r A(x )捕/捉比较寄存器T-ime_r (Bx 捕)捉比/较寄存器URAT 件实软,或现用通同步异/接口步数MPY硬乘法器I/O件数字I/O ,O及tuputAgusut 00/ 5MSP430_单片机_资料Ulrt-aowlp wore dsegin witMhSP403F LSAH 列系NweFie vnew lFas hcofinurgtiaon avsilaable now!号型LASH 1 FB 4 KB 8 KB 1K6KB 32 B K8 K4 B60KBA/ DlSpeo loSe p2-b1t 12i-itb 12-bti1 2b-it12 bit-Tmire sA3A3 A 3 +B 33 A +3 A3B +B7 A + B3 A7 +3B 7SUART 1 12 2M2P Yvv v/IO 4 114 8 448 8 4484 8FALH 型S超低功耗Falsh 内核10,000 次写/0周期擦程存储器序段:51分2 信B存储息分器:128B段可以分擦段除或整擦除体编和擦程除电由压内产生部有代读出码护保*****101 *****1F211MS P34F031 M3FS*****FMSP 40F317 4SPM*****F *****F94Augst 00 u/6MSP430_单片机_资料低功耗的超现实:速起动和快电省模式其他MCUIUltarlo- powewrd esig nithw* / 4b8tiC UP* 电流耗大消* 唤醒慢Ic c /A45 400 ***-*****IvAgr300 5022 00tVc c=3 V1 se ccylcetime**********ctAvei odMe PML0*****LLPMIAvrg3 t例L:P3, M备模式用(*****C1) 3276xHz 振8荡活动器基。

基于MSP430单片机的软件代码快速开发

基于MSP430单片机的软件代码快速开发

基于MSP430单片机的软件代码快速开发刘玉良;贾子申;刘丽辉;杨伟明【期刊名称】《天津科技大学学报》【年(卷),期】2010(025)003【摘要】为实现高效的代码编写和方便的系统维护,在前期研究工作的基础上,利用Matlab 7.x的Stateflow工具箱,实现了基于MSP430单片机的嵌入式系统软件开发.首先,对嵌入式系统进行基于事件驱动的建模与仿真.然后,在状态图代码生成器(Stateflow Coder)中把状态图(State chart)翻译成高效的C语言代码.最后,用基于MSP430单片机的目标系统底层驱动函数与翻译的C语言空函数进行简单替换,实现了嵌入式系统软件代码的快速生成.对比实验表明,用本文方法生成的软件代码,在嵌入式目标系统中运行状况良好,其易维护性和执行效率等方面均优于手工编写的代码.【总页数】5页(P61-65)【作者】刘玉良;贾子申;刘丽辉;杨伟明【作者单位】天津科技大学电子信息与自动化学院,天津300222;天津科技大学电子信息与自动化学院,天津300222;天津医科大学总医院,天津300052;天津科技大学电子信息与自动化学院,天津300222【正文语种】中文【中图分类】R333.8【相关文献】1.基于Small_RTOS51的单片机软件快速开发架构 [J], 汪林2.基于MSP430单片机的无线通信软件编解码 [J], 杨雪松3.基于MSP430单片机的Modbus协议软件设计方法 [J], 高旭彬4.基于MSP430单片机控制的超声波测距仪软件系统设计 [J], 虞新军;邓玉良5.基于MSP430单片机的FED点阵汉字显示软件设计 [J], 苏鹏飞; 杨延宁; 王凯; 张雄因版权原因,仅展示原文概要,查看原文内容请购买。

在proteus中仿真MSP430单片机的设置方法

在proteus中仿真MSP430单片机的设置方法

要使用PROTEUS仿真MSP430单片机,首先要用IAR生成hex文件
在有些场合需要生成.hex文件,因此,这单介绍在IAR中如何生成.hex文件。

生成方法:
在Options窗口的日录Category中选择第六项Linker。

在Output选项中,选中Format复选框的Other,然后在Output下拉菜单中选择msd-i,如图5.1所示。

注意:在选择了Format复选框的Other后,在C-SPY调试器下的。

Debug information for C-SPY的调试信息不可用,在这里只生成了.hex的输出文件。

在Output下选择msd-i还会生成第二输出文件.sym文件,如果需要生成其它输出文件,则可以选择Output下的其它选项。

其选项内容的解释可以参见“C:\ Program Files\IAR Systems\Embedded Workbench 4.0Kickstart\common\doc”下的xlink.ENU.pdf文档。

生成结果
生成的.hex文件在工程的Debug\Exe下,如图5.2所示
这样加载到PROTEUS里就可以了。

基于msp430单片机的智能台灯设计(C语言)

基于msp430单片机的智能台灯设计(C语言)

桂林理工大学信息学院实习报告实习名称:电子系统设计创新与实践设计题目:基于单片机的智能台灯设计专业班级:姓名:学号:组员:指导老师:实习时间:目录1概述 (3)1.1 题目名 (3)1.2 功能和技术指标要求 (3)1.3 国内外相关情况概述 (3)1.4 调光技术的选择 (4)2. 技术方案 (5)2.1 光照强度检测传感器的基本原理介绍 (5)2.2 总体技术方案 (5)3 硬件设计 (6)3.1 总体电路原理图 (6)3.2 各模块分别介绍 (7)3.2.1 MSP430G2553单片机模块 (7)3.2.2 BISS0001 人体红外感应模块热释电传感器 (8)3.2.3光敏电阻控制模块 (11)3.2.4 光敏电阻的应用 (12)3.3 灯光控制模块 (12)3.4 PWM调光说明 (13)3.5 硬件调试 (13)3.5.1 调试方法 (13)3.5.2 调试步骤 (14)4. 软件设计 (15)4.1 软件功能说明 (15)4.2 软件总流程 (15)4.3 软件测试 (15)5. 性能测试 (16)5.1 测试方法 (16)5.2 给出相应记录 (16)5.3 对实验数据进行分析以及提出相应的改进办法 (17)6.总结 (17)附录(程序清单):................................................. 错误!未定义书签。

参考文献: (18)1概述1.1 题目名基于单片机的智能台灯设计1.2 功能和技术指标要求本项目针对台灯的节电和使用的方便性进行创新设计与研究,以单片机为核心,综合运用热释电红外、光检测等技术,设计制作出智能型多功能LED台灯。

该台灯具有自动开、关,自动调光等功能,实现了LED的亮度随周围光照强度的变化而变化。

本设计一智能台灯控制器,实现照明控制系统的人性化,即当亮度足够时灯光关闭,在亮度不足时,有人走近自动点亮,并根据周围环境的亮度自动调节灯泡的功率的节能环保的智能型LED台灯的设计理念。

单片机模拟I2C总线读写EEPROM(24CXX)程序一

单片机模拟I2C总线读写EEPROM(24CXX)程序一

单片机模拟I2C总线读写EEPROM(24CXX)程序一下面是一个最简单的读写程序,可以用来检测线路状况。

先附上程序和电路,后面附有说明。

电路:说明:P2 口的LED 都是我用来检测电路执行到哪一步的,个人觉得一目了然。

程序:#include #define unit unsigned int#define uchar unsigned charint ok;sbit scl=P0;sbit sda=P0;sb it led0=P2;sbit led1=P2;sb it led2=P2 ;sbit led3=P2;sb it led4=P2;sb it led5=P2 ;sbit led6=P2;sb it led7=P2;delay(void) //delay{ int i; led1=1; for(i=0;istart(void) //start{ sda=1; scl=1; delay(); sda=0; delay(); scl=0; led0=0;}stop(void) //stop{ sda=0; scl=1; delay(); sda=1; delay(); scl=0;}checkanswer(void) //check answer{ sda=1; scl=1; if(sda==1) { F0=1; led7=0; } scl=0; led3=0;}sendabyte(int temps) //send a byte{ uchar n=8; while(n--) { led2=1; if((temps&0x80)==0x80){ sda=1; scl=1; delay(); scl=0;}else{ sda=0; scl=1; delay(); scl=0;}temps=tempsreciveabyte() //recive a byte{ uchar n=8,tempr; while(n--) {//uchar idata *abyte scl=1;tempr=temprmain(void) //MAIN{start();sendabyte(0xa0);checkanswer();if(F0==1) return;sendabyte(0x00);checkanswer();if(F0==1) return;sendabyte(0x11);checkanswer();if(F0==1) return;/*-----------------------*/start(); sendabyte(0xa0);checkanswer();if(F0==1) return;。

MSP430系列微控制器开发软件IAR的使用_2

MSP430系列微控制器开发软件IAR的使用——流水灯电路的设计2.1引言基于微控制器的电路开发,无论大到一个应用系统,还是小到一个本章将要涉及的流水灯控制电路,设计者都需要具有以下3个方面的知识:对所使用微控制器芯片的了解、编程语言的掌握和开发软件的使用。

MSP430系列微控制器的开发软件有2种,一种为TI 公司提供的Code Composer TM Essentials开发软件,另一种为IAR公司的产品Embedded Workbench for MSP430。

这两种开发软件都可以从TI公司的网站下载免费的代码限制版。

本章描述Embedded Workbench for MSP430开发软件的使用,这里以版本v5.30为例,通过编写一个使用P1并行输入/输出端口控制的流水灯来介绍应用系统的开发过程,内容包括工程建立,源程序的编辑、编译、模拟调试以及向目标芯片的程序代码下载。

源程序采用C语言编写。

作为第一个接触的应用程序,程序中涉及的系统时钟初始化、P1端口的配置部分建议读者简单地承认。

硬件电路是编写软件程序的基础,电路的具体结构决定了源程序的组成。

图2.1所示为一个由8个发光二极管组成的流水灯电路。

1.8图2.1基于P1端口的流水灯原理电路图图 2.1给出的基于P1并行输入/输出端口的流水灯原理电路图是在图 1.3所示的MSP430芯片最小系统电路图的基础上,通过添加8个发光二极管构成的。

芯片不需要使用的管脚在这里没有画出,组装电路的时候这些没有画出的管脚悬空即可。

12 二极管D1~D8和电阻R2组成流水灯的显示电路。

图中8个发光二极管的连接方式被称为共阴极连接方式,即所有二极管的N极被连接在一起,再通过电阻R2与地线相连接。

对于这种连接方式,如果P1端口的某个管脚输出逻辑“1”,即高电平,则对应的发光二极管被点亮;如果P1口的某个管脚输出逻辑“0”,即低电平,则对应的发光二极管熄灭。

电阻R2为限流电阻,限流电阻用来防止电流过大损坏电路器件。

基于MSP430单片机的虚拟示波器

基于MSP430单片机的虚拟示波器郑彪;郭建强;王黎;高晓蓉;王泽勇【期刊名称】《现代电子技术》【年(卷),期】2012(35)14【摘要】虚拟示波器在应用中体现出简易、灵活、便携、易于与PC机通信的特点.该设计中采用超低功耗的MSP430F169单片机作为控制核心,实现模/数转换,它能保证高运算速度和系统的工作稳定.同时使用高速USB接口与PC机进行数据传输,在PC机端对信号进行分析和再现,实现信号的实时显示和信号的特征分析;系统采用USB供电,不仅可降低功耗,而且易于使用和携带.实验结果表明,该设计达到了预期目标.%Virtual oscilloscope is very valuable in electronic design, test and debugging, especially in college curriculum design, graduation project. Virtual oscilloscope is very simple,flexible,portable, easy to communicate with PC in the application. The ultra-low power MSP430FI69 MCU was taken as a controller in this design to achieve analog-digital conversion. It can guarantee the high-speed operation and stable running of the system. In addition, a high-speed USB interface is used to conduct the data transmission with PC. The signal is analyzed and displayed in PC console to realize real-time signal display and feature analysis. The USB is applied to power supply to reduce power consumption. It makes application and carrying easy.【总页数】3页(P158-160)【作者】郑彪;郭建强;王黎;高晓蓉;王泽勇【作者单位】西南交通大学光学工程研究所,四川成都610031;西南交通大学光学工程研究所,四川成都610031;西南交通大学光学工程研究所,四川成都610031;西南交通大学光学工程研究所,四川成都610031;西南交通大学光学工程研究所,四川成都610031【正文语种】中文【中图分类】TN98-34【相关文献】1.基于单片机和上位机的虚拟示波器设计 [J], 胡利军;胡书文2.基于MSP430F1121的虚拟示波器实现方法 [J], 金海龙3.基于MSP430F1121的虚拟示波器实现方法 [J], 金海龙4.基于Cortex-M4单片机的多功能虚拟示波器的设计与实现 [J], 顾雯雯5.基于单片机的虚拟示波器设计 [J], 林霖;周瑛瑛;张志德因版权原因,仅展示原文概要,查看原文内容请购买。

基于MSP430简易示波器的设计讲解

基于MSP430简易示波器的设计自动化1107王诗雨2013.121.硬件设计1.1 单片机选用MSP430G2553单片机,该单片机具有低功耗的特点,内部自带8路10位AD转换器(ADC10),最高主频可达16Mhz,对于一个简易示波器来说这些特点足够我们使用。

1.2 程控放大电路程控放大电路的作用是对大信号进行衰减,对小信号进行放大,保证输入到A/D转换器的信号幅度在要求的输入电压范围内,以达到最好的测量与观察效果。

采用模拟开关CD4051,配合精密电位器实现多挡垂直分辨率。

在MSP430单片机中使用寄存器模块设置通道号,通过写入通道号控制模拟开关选通不同的反馈电阻,从而实现不同的放大倍数,对信号进行不同程度的放大(衰减)。

电路图如下:1.3 简易调理电路由于示波器观察信号大多是正负电压信号,考虑到ADC10一般使用的是单极性参考电压(也可以使用寄存器设置双极性参考电压,这样就不需要调理电路了,但最好加一级缓冲)。

为了采样到信号的负电压,就需要给该信号叠加直流量,将负电压部分信号抬高至零电平以上,因此采用信号调理电路。

电路图如下:1.4 LCD显示电路和按键电路利用LCD的SPI通信模式与MSP430单片机连接,这样可以得到不错的通信速度,并且可以尽可能的减少MSP430引脚的占用,具体电路这里就不给出了。

(按照spi连接)利用简单独立按键实现放大倍数调节,采样频率设置等功能即可。

2.软件设计2.1 单片机初始化对P2口初始化,打开P2口的中断;将通信方式设置为硬件spi通信模式(注意spi通信在上升沿还是在下降沿开始)。

WDTCTL=WDTPW+WDTHOLD; //关看门狗P1OUT = 0x00; // P1 setup for LED & reset outputP1DIR |= BIT0 + BIT2 + BIT3 + BIT4 + BIT5;P1SEL = BIT1 + BIT2 + BIT4;P1SEL2 = BIT1 + BIT2 + BIT4;P2REN |= 0x38;P2DIR = 0x07;P2OUT = 0;P2IE |= 0x38; // P1.4 interrupt enabledP2IFG &= ~0x38;will=0;UCA0CTL0 |= UCCKPL + UCMSB + UCMST + UCSYNC + UCCKPH ; // 3-pin, 8-bit SPI masterUCA0CTL1 |= UCSSEL_2; // SMCLKUCA0BR0 |= 0x04; // /2UCA0BR1 = 0; //UCA0MCTL = 0; // No modulationUCA0CTL1 &= ~UCSWRST; // **Initialize USCI state machine**P1OUT &= ~BIT5; // Now with SPI signals initialized,P1OUT |= BIT5; // reset slaveADC10初始化,开启参考源和中断。

基于MSP430单片机的数控直流电流源的设计

基于MSP430单片机的数控直流电流源的设计摘要本系统是一个基于单片机的数控直流电流源系统。

采用单片机作为核心,辅以带反馈自稳定的串调恒压源,可以连续设定电流值。

由D/A转换器TLC5615、ZLG7289、中文字库液晶显示块、放大电路和大功率调整电路组成。

通过独立键盘输入给定值,由D/A转换器将数字信号转换成模拟信号,经D/A输出电压作为恒流源的参考电压,利用晶体管平坦的输出特性得到恒定的电流输出,最后用中文液晶显示输出。

其中单片机选用美国TI公司的MSP430F2274作为控制核心,利用闭环控制原理,加上反馈电路,使整个电路构成一个闭环。

软件方面主要利用PID算法来实现对输出电流的精确控制。

系统可靠性高,体积小,操作简单方便,人机界面友好。

关键字:数控 MSP430 PID算法反馈电路单片机Digital Controlled DC Current Source Design BasedOn MSP430 MCUABSTRACTThis system is a based on SCM numerical control dc current source system. Using single chip microcomputer as the core, with the strings with feedback from stability constant pressure source, can tone set by continuous. By D/A converter ZLG7289, Chinese word stock TLC5615, liquid crystal display (LCD) block, amplifying circuit and high-power regulating circuit component. The given value through independent keyboard input by D/A converter, converts digital signals into analog signals, the D/A constant current source voltage output as A reference voltage, using the plain output characteristic get the transistor constant current output, finallyuse Chinese LCD display output. One of the American TI company microcontroller choose MSP430F2274 as control core, using the closed-loop control principle, plus feedback circuit, make whole circuit constitute a closed-loop. Mainly using PID algorithm software to achieve output current the precise control. The system reliability high, small volume, easy to operate, friendly man-machine interface.Key Words:Numerical Control MSP430 PID Algorithm Feedback Circuit SCM目录前言 (1)第一章绪论 (2)1.1 课题背景 (2)1.2数控直流电流源概述 (2)1.2.1 电流源简介 (2)1.2.2 数控直流电流源的必要性 (2)1.2.3 数控直流电流源简介 (3)1.3课题进展 (3)1.4后话 (3)第二章芯片简介 (4)2.1单片机芯片MSP430F2274 (4)2.2D/A芯片TLC5615 (5)2.2.1 TLC5615功能简介 (6)2.2.2 TLC5615工作原理 (7)2.3ZLG7289A芯片介绍 (8)2.3.1 芯片简介 (8)2.3.2 引脚说明 (8)第三章系统硬件设计 (10)3.1 总体方案设计与比较 (10)3.2 单元电路设计 (11)3.2.1 电源电路 (11)3.2.2 D/A电路 (12)3.2.3 恒流源电路 (12)3.2.4 数码管显示电路 (14)3.3 PROTEL 99SE介绍 (15)第四章系统软件设计 (17)4.1程序语言介绍 (17)4.1.1机器语言 (17)4.1.2汇编语言 (17)4.1.3高级语言 (17)4.2PID算法介绍 (18)4.2.1 PID增量式算法 (18)4.2.2 PID位置算法 (19)4.2.3 微分先行PID算法 (20)4.3C语言程序设计流程 (20)4.4MSP430F2274编程基础简介 (21)4.4.1数据存储器和程序存储器地址空间 (21)4.4.2 MSP430F2274寄存器介绍 (21)4.4.3单片机的工作模式 (23)4.5程序流程图 (23)4.5.1 主程序流程图 (24)4.5.2 中文液晶显示 (24)4.5.3 键盘程序流程图 (25)4.5.4 A/D转换流程图 (26)4.5.5 D/A转换流程图 (26)4.6本章小结 (27)第五章系统仿真调试 (28)5.1仿真软件介绍 (28)5.1.1 功能特点 (28)5.1.2 功能模块 (28)5.2仿真步骤 (30)结论 (31)参考文献 (32)致谢 (33)前言直流电流源是电子技术常用的设备之一,广泛应用于教学、科研等领域。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于MSP430单片机的虚拟I2C总线软件包VIIC_M1.0
一、VIIC_M1.0 软件包的组成根据归一化设计的要求,主方式下虚拟I2CC
总线由下列10 个子程序组成:1、时序模拟子程序4 个I2C_sta,I2C _stop,I2C _mack ,I2C _mnack 2、操作模拟子程序3 个I2C_ackn,I2C _wr_byte,I2C _rd_byte3、数据读写子程序3 个I2C_wr_nbyte,I2C _rd_nbyte,I2C_wr_addr
二、应用对象
1、MSP430 单片机MSP430 单片机为低功耗的16 位单片机,有
MSP430X11、MSP430X112、MSP430X1101、MSP430X13X、MSP430X14X、MSP430X31X/32X/33X、MSP430X41X 等型号,每种芯片都有丰富的I/O 端口。

本设计采用芯片为MSP430E325(1)虚拟I2C 总线所使用的I/O 端口数据线(SDA)使用的是通用端口P0 中的P0.7,该端口为输入/输出双向口,有输入
寄存器(P0IN)、输出寄存器(P0OUT)及方向寄存器(P0DIR)等寄存器,
通过字节指令访问。

时钟线(SCL)使用的是通用定时器/端口TP 中的TP.1,
该端口为输出口,有定时器/端口控制寄存器(TPCTL)、定时器/端口数据寄存
器(TPD)及定时器/端口允许寄存器(TPE)等,通过字节指令访问。

(2)运
行时所使用的时钟频率MSP430E325 运行时用两个时钟:辅助时钟(ACLK)
和主时钟(MCLK)。

当采用32768KHz 的晶体振荡器,并且系统时钟控制寄存
器采用缺省值时,主时钟的频率为1.049MHz。

若主时钟的频率不是
1.049MHz,请适当调整程序中nop 的个数。

2、EEPROM 器件(1)EEPROM 器件本例使用的EEPROM 器件为
24LC65(MICROCHIP)。

24LC65 容量为8KB,其中的字节地址为13 位,分
两个字节:SUBADDR_H 为高5 位地址SUBADDR_L 为低8 位地址;24LC65 的封装引脚如图1 所示:(2)24LC65 的数据格式A、当前地址写:。

相关文档
最新文档