虫虫首页| 资源下载| 资源专辑| 精品软件
登录| 注册

169<b>1</b>5.<b>1</b>

  • MSP430系列单片机C语言程序设计与开发

    MSP430系列单片机C语言程序设计与开发MSP430系列是一个具有明显技术特色的单片机品种。关于它的硬件特性及汇编语言程序设计已在《MSP430系列超低功耗16位单片机的原理与应用》及《MSP430系列 FLASH型超低功耗16位单片机》等书中作了全面介绍。《MSP430系列单片机C语言程序设计与开发》介绍IAR公司为MSP430系列单片机配备的C程序设计语言C430。书中叙述了C语言的基本概念、C430的扩展特性及C库函数;对C430的集成开发环境的使用及出错信息作了详尽的说明;并以MSP430F149为例,对各种应用问题及外围模块操作提供了典型的C程序例程,供读者在今后的C430程序设计中参考。   《MSP430系列单片机C语言程序设计与开发》可以作为高等院校计算机、自动化及电子技术类专业的教学参考书,也可作为工程技术人员设计开发时的技术资料。MSP430系列超低功耗16位单片机的原理与应用目录MSP430系列单片机C语言程序设计与开发 目录  第1章 C语言基本知识1.1 标识符与关键字11.1.1 标识符11.1.2 关键字11.2 数据基本类型21.2.1 整型数据21.2.2 实型数据31.2.3 字符型数据41.2.4 各种数据转换关系61.3 C语言的运算符71.3.1 算术运算符71.3.2 关系运算符和逻辑运算符71.3.3 赋值运算符81.3.4 逗号运算符81.3.5 ? 与 :运算符81.3.6 强制转换运算符91.3.7 各种运算符优先级列表91.4 程序设计的三种基本结构101.4.1 语句的概念101.4.2 顺序结构111.4.3 选择结构121.4.4 循环结构141.5 函数181.5.1 函数定义181.5.2 局部变量与全局变量191.5.3 形式参数与实际参数201.5.4 函数调用方式201.5.5 函数嵌套调用211.5.6 变量的存储类别221.5.7 内部函数和外部函数231.6 数组231.6.1 一维数组241.6.2 多维数组241.6.3 字符数组261.7 指针271.7.1 指针与地址的概念271.7.2 指针变量的定义281.7.3 指针变量的引用281.7.4 数组的指针281.7.5 函数的指针301.7.6 指针数组311.8 结构和联合321.8.1 结构定义321.8.2 结构类型变量的定义331.8.3 结构类型变量的初始化341.8.4 结构类型变量的引用341.8.5 联合341.9 枚举361.9.1 枚举的定义361.9.2 枚举元素的值371.9. 3 枚举变量的使用371.10 类型定义381.10.1 类型定义的形式381.10.2 类型定义的使用381.11 位运算391.11.1 位运算符391.11.2 位域401.12 预处理功能411.12.1 简单宏定义和带参数宏定义411.12.2 文件包含431.12.3 条件编译命令44第2章 C430--MSP430系列的C语言2.1 MSP430系列的C语言452.1.1 C430概述452.1.2 C430程序设计工作流程462.1.3 开始462.1.4 C430程序生成472.2 C430的数据表达482.2.1 数据类型482.2.2 编码效率502.3 C430的配置512.3.1 引言512.3. 2 存储器分配522.3.3 堆栈体积522.3.4 输入输出522.3.5 寄存器的访问542.3.6 堆体积542.3.7 初始化54第3章 C430的开发调试环境3.1 引言563.1.1 Workbench特性563.1.2 Workbench的内嵌编辑器特性563.1.3 C编译器特性573.1. 4 汇编器特性573.1.5 连接器特性583.1.6 库管理器特性583.1.7 C?SPY调试器特性593.2 Workbench概述593.2.1 项目管理模式593.2.2 选项设置603.2.3 建立项目603.2.4 测试代码613.2.5 样本应用程序613.3 Workbench的操作623.3.1 开始633.3.2 编译项目683.3.3 连接项目693.3.4 调试项目713.3.5 使用Make命令733.4 Workbench的功能汇总753.4.1 Workbench的窗口753.4.2 Workbench的菜单功能813.5 Workbench的内嵌编辑器993.5.1 内嵌编辑器操作993.5.2 编辑键说明993.6 C?SPY概述1013.6.1 C?SPY的C语言级和汇编语言级调试1013.6.2 程序的执行1023.7 C?SPY的操作1033.7.1 程序生成1033.7.2 编译与连接1033.7.3 C?SPY运行1033.7.4 C语言级调试1043.7.5 汇编级调试1113.8 C?SPY的功能汇总1133.8.1 C?SPY的窗口1133.8.2 C?SPY的菜单命令功能1203.9 C?SPY的表达式与宏1323.9.1 汇编语言表达式1323.9.2 C语言表达式1333.9.3 C?SPY宏1353.9.4 C?SPY的设置宏1373.9.5 C?SPY的系统宏137 第4章 C430程序设计实例4.1 程序设计与调试环境1434.1.1 程序设计调试集成环境1434.1.2 设备连接1444.1.3 ProF149实验系统1444.2 数值计算1454.2.1 C语言表达式1454.2.2 利用MPY实现运算1464.3 循环结构1474.4 选择结构1484.5 SFR访问1494.6 RAM访问1504.7 FLASH访问1514.8 WDT操作1534.8. 1 WDT使程序自动复位1534.8.2 程序对WATCHDOG计数溢出的控制1544.8.3 WDT的定时器功能1554.9 Timer操作1554.9.1 用Timer产生时钟信号1554.9.2 用Timer检测脉冲宽度1564.10 UART操作1574.10.1 点对点通信1574.10.2 点对多点通信1604.11 SPI操作1634.12 比较器操作1654.13 ADC12操作1674.13.1 单通道单次转换1674.13.2 序列通道多次转换1684.14 时钟模块操作1704.15 中断服务程序1714.16 省电工作模式1754.17 调用汇编语言子程序1764.17.1 程序举例1764.17.2 生成C程序调用的汇编子程序177第5章 C430的扩展特性5.1 C430的语言扩展概述1785.1.1 扩展关键字1785.1.2 #pragma编译命令1785.1.3 预定义符号1795.1.4 本征函数1795.1.5 其他扩展特性1795.2 C430的关键字扩展1795.2.1 interrupt1805.2.2 monitor1805.2.3 no_init1815.2.4 sfrb1815.2.5 sfrw1825.3 C430的 #pragma编译命令1825.3.1 bitfields=default1825.3.2 bitfields=reversed1825.3.3 codeseg1835.3.4 function=default1835.3.5 function=interrupt1845.3.6 function=monitor1845.3.7 language=default1845.3.8 language=extended1845.3.9 memory=constseg1855.3.10 memory=dataseg1855.3.11 memory=default1855.3.12 memory=no_init1865.3.13 warnings=default1865.3.14 warnings=off1865.3.15 warnings=on1865.4 C430的预定义符号1865.4.1 DATE1875.4.2 FILE1875.4.3 IAR_SYSTEMS_ICC1875.4.4 LINE1875.4.5 STDC1875.4.6 TID1875.4.7 TIME1885.4.8 VER1885.5 C430的本征函数1885.5.1 _args$1885.5.2 _argt$1895.5.3 _BIC_SR1895.5.4 _BIS_SR1905.5.5 _DINT1905.5.6 _EINT1905.5.7 _NOP1905.5.8 _OPC1905.6 C430的汇编语言接口1915.6.1 创建汇编子程序框架1915.6.2 调用规则1915.6.3 C程序调用汇编子程序1935.7 C430的段定义1935.7.1 存储器分布与段定义1945.7.2 CCSTR段1945.7.3 CDATA0段1945.7.4 CODE段1955.7.5 CONST1955.7.6 CSTACK1955.7.7 CSTR1955.7.8 ECSTR1955.7.9 IDATA01965.7.10 INTVEC1965.7.11 NO_INIT1965.7.12 UDATA0196第6章 C430的库函数6.1 引言1976.1.1 库模块文件1976.1.2 头文件1976.1.3 库定义汇总1976.2C 库函数参考2046.2.1 C库函数的说明格式2046.2.2 C库函数说明204第7章 C430编译器的诊断消息7.1 编译诊断消息的类型2307.2 编译出错消息2317.3 编译警告消息243附录 AMSP430系列FLASH型芯片资料248附录 BProF149实验系统251附录 CMSP430x14x.H文件253附录 DIAR MSP430 C语言产品介绍275

    标签: MSP 430 C语言 单片机

    上传时间: 2014-05-05

    上传用户:253189838

  • 8051电子钟设计论文

    一:微电脑设计11.1:微电脑基本结构11.2:单芯片微电脑21.3:单芯片微电脑种类3二:MCS51架构介绍62.1:接脚说明62.2:内部构造图72.3:系统时序82.4:内存结构92.5:系统重制142.6:中断结构15三:LCD简介243.1:简介243.2:内部结构263.3:模块指令29图1-1 微电脑基本结构1表1-1 MCS-51 单芯片比较.5图2-1 MCS-51 接脚图.6图2-2 内部结构方块图8图2-3 MCS-51 指令执行时序.9图2-4 MCS-51 内部数据存储器.10图2-5 MCS-51 程序内存结构图.10图2-6 MCS-51内部数据存储器结构11图2-7 特殊功能缓存器12表2-1 特殊功能缓存器(SFC)初值设定.13图2-8 数据存储器结构图13表2-2 SFR重置设定值.15表2-3 中断向量17图2-9 中断结构方块图18表2-4 中断致能缓存器IE19表2-5 中断优先权缓存器(IP) .20表2-6 中断源优先权顺序21表2-7 计时/计数控制缓存器TCON.21表2-8 计时/计数模式设定.23图3-1 LCD 的接口电路方图24表3-1 LCD 接脚说明25表3-2 控制脚功能25表3-3 LCD 模块地址对映26表3-4 字符产生器与字型码对映27表3-5 LCD 内字型表28表3-6 LCD 控制指令表32图3-2 初始化流程图33表4-1 功能说明34图4-1 电路图35图4-2 程序流程图36此篇专题主要研究是利用8051芯片制作出电子钟,利用LCD当作显示介面,并且设置有闹铃功能,是很可以融入生活的小家电。关键词: AT89C51,LCD,电子锺,数字钟,闹铃。四:电子钟344.1:相关知识344.2:功能说明344.3`:流程图36五:心得感想41六:程序代码42附录:MCS51指令集.54参考数据60

    标签: 8051 电子钟 论文

    上传时间: 2013-10-11

    上传用户:butterfly2013

  • 8086指令系统

    8086指令系统目录 概述 2.1节   目录 2.1.1--2.1.5(传送)     2.1.1 目录:1~3        2.1.1-1 mov类例1                   mov类例2                   mov类例3                   mov类例4(END)        2.1.1-2. xchg  --3.XLAT                 查表示意图(end)     2.1.2堆栈操作指令(1)            堆栈操作指令(2)            堆栈操作指令(3)            堆栈操作指令(4)            堆栈操作指令(5)(END)     2.1.3标志传送指令(1)            标志传送指令(2)(end)     2.1.4地址传送指令(1)            地址传送指令(2)            地址传送指令(3)(end)     2.1.5输入输出指令(1)            输入输出指令(2)            输入输出指令(3)(end) 2.2节   目录 2.2.1--2.2.6(算术)     2.2.1加法指令(1)            加法指令(2)            加法指令(3)            加法指令(4)            加法指令5 end     2.2.2减法指令(1)            减法指令(2)            减法指令(3)            减法指令(4)      减法指令(5)            减法指令(6)(end)     2.2.3乘法指令(1)            乘法指令(2)            乘法指令(3)(end)     2.2.4除法指令(1)            除法指令(2)(end)     2.2.5符号扩展指令(end) 符号扩展说明     2.2.6十进制调整指令(1)            十进制调整指令(2)            十进制调整指令(3)            十进制调整指令(4)            十进制调整指令(5)            十进制调整指令(6)            十进制调整指令(7)            十进制调整指令(8)            十进制调整指令(9)(end) 2.3节  目录 2.3.1--2. 3.3(位)     2.3.1 逻辑运算指令(1)             逻辑运算指令(2)             逻辑运算指令(3)             逻辑运算指令(4)             逻辑运算指令(END)     2.3.2 移位指令(1)             移位指令(2)             移位指令(3)             移位指令(4)(end)     2.3.3 循环移位指令(1)             循环移位指令(2)(end) 2.4节  目录     2.4.1 无条件转移指令(1) 短转移的转移范围             无条件转移指令(2)             无条件转移指令(3)             无条件转移指令(4)(end)     2.4.2 条件转移指令(1)             条件转移指令(2)             条件转移指令(3)             条件转移指令(4)             条件转移指令(5)(end)     2.4.3 循环控制指令(1)             循环控制指令(2)(end)  2.4.4 子程序调用及返回指令(1)        子程序调用及返回指令(2)        子程序调用及返回指令(3)        子程序调用及返回指令(4)        子程序调用及返回指令(5) 子程序调用及返回指令(6) (end)     2.4.5 中断控制指令(1)             中断控制指令(2)             中断控制指令(3)             中断控制指令(4)             中断控制指令(5)             中断控制指令(6)             中断控制指令(7)             中断控制指令(8)(end)     2.4.6 系统功能调用(1)             系统功能调用(2)             系统功能调用(3)(end) 2.5节 目录 1---6(串操作) 串操作(1)传送 串操作(2) 串操作(3) 串操作(4)存串 串操作(5)读串、比较 串操作(6)搜索、重复前缀 串操作(7)REP 串操作(8)REPZ/REPNZ 串操作(9)前缀注释 串操作(10)例题 串操作(11)注释(end) 2.6 处理机控制类指令(1)(end)

    标签: 8086 指令系统

    上传时间: 2013-10-30

    上传用户:大三三

  • 给初学单片机的40个实验(含电路图和源程序)

    给初学单片机的40个实验(含电路图和源程序) 1. 闪烁灯 1.  实验任务 如图4.1.1所示:在P1.0端口上接一个发光二极管L1,使L1在不停地一亮一灭,一亮一灭的时间间隔为0.2秒。 2.  电路原理图 . 模拟开关灯 1. 实验任务 如图4.2.1所示,监视开关K1(接在P3.0端口上),用发光二极管L1(接在单片机P1.0端口上)显示开关状态,如果开关合上,L1亮,开关打开,L1熄灭。 2. 电路原理图 5. 广告灯(利用取表方式) 1. 实验任务 利用取表的方法,使端口P1做单一灯的变化:左移2次,右移2次,闪烁2次(延时的时间0.2秒)。 2. 电路原理图

    标签: 单片机 实验 电路图 源程序

    上传时间: 2013-11-29

    上传用户:frank1234

  • MPC106 PCI桥/存储器控制器硬件规范说明

    The Motorola MPC106 PCI bridge/memory controller provides a PowerPCªmicroprocessor common hardware reference platform (CHRPª) compliant bridgebetween the PowerPC microprocessor family and the Peripheral Component Interconnect(PCI) bus. In this document, the term Ô106Õ is used as an abbreviation for the phraseÔMPC106 PCI bridge/memory controllerÕ. This document contains pertinent physicalcharacteristics of the 106. For functional characteristics refer to theMPC106 PCI Bridge/Memory Controller UserÕs Manual.This document contains the following topics:Topic PageSection 1.1, ÒOverviewÓ 2Section 1.2, ÒFeaturesÓ 3Section 1.3, ÒGeneral ParametersÓ 5Section 1.4, ÒElectrical and Thermal CharacteristicsÓ 5Section 1.5, ÒPin AssignmentsÓ 17Section 1.6, ÒPinout Listings 18Section 1.7, ÒPackage DescriptionÓ 22Section 1.8, ÒSystem Design InformationÓ 24Section 1.9, ÒDocument Revision HistoryÓ 29Section 1.10, ÒOrdering InformationÓ 29

    标签: MPC 106 PCI 存储器

    上传时间: 2013-11-04

    上传用户:as275944189

  • 万年历算法

    公历是全世界通用的历法以地球绕太阳的一周为一年一年365 天,分为12 个月1 3 5 7 8 10 12 月为31 天2 月为28 天其余月份为30 天事实上地球绕太阳一周共365 天5 小时48 分46 秒比公历一年多出5 小时48分46 秒为使年误差不累积公历年用闰年法来消除年误差 由于每年多出5 小时48 分46 秒每4 年累计多出23小时15 分4 秒接近1 天天文学家就规定每4 年有一个闰年把2 月由28 天改为29 天凡是公历年代能被4 整除的那一年就是闰年但是这样一来每4 年又少了44 分56 秒为了更准确地计时天文学家又规定凡能被100 整除的年份只有能被400 整除才是闰年即每400 年要减掉3 个闰年经过这样处理后实际上每400 年的误差只有2 小时53 分20 秒已相当准确了。

    标签: 万年历 算法

    上传时间: 2014-12-28

    上传用户:liufei

  • 中断技术.ppt

    5.1  中断基本概念5.1.1 中断基本概念定义:CPU暂停现行程序,转而处理随机到来的事件,待处理完后再回到被暂停的程序继续执行,这个过程就是中断。中断过程:中断处理的隐操作:程序状态及程序断点地址的进栈及出栈。  中断系统其他功能:    支持多中断源和多种中断源。    支持中断屏蔽处理。    支持中断嵌套处理。    支持中断优先级修改。    支持中断结束方式选择。5.1.2 中断类型1.外部硬件(如键盘、鼠标,串口,并口打印机等)中断属性:硬件、可屏蔽、向量。 中断请求:多个中断请求的排队和判优由中断控制器完成,产生的有无中断请求的信号送到CPU的INTR引脚。  中断类型号:通过数据总线送到CPU中。EFLAGS寄存器的IF位影响CPU对中断请求的响应。处理器在当前指令执行结束的时候启动中断识别INTA总线周期。

    标签: 中断技术

    上传时间: 2013-11-09

    上传用户:黄婷婷思密达

  • 自制微型51/AVR通用编程器

    微型51/AVR 编程器套件装配说明书 请您在动手装配这个编程器之前,务必先看完本说明书,避免走弯路。 1.收到套件后请对照元器件列表检查一下,元件、配件是否齐全? Used  Part Type        Designator ==== ================ ========== 1    1k               R6         1    1uf 50V          C11        5    2k2              R2 R3 R4 R5 R11     1    10K*8            RN1        2    11.0592MHZ       Q1 Q2      1    12V,0.5W         D2         2    15k              R7 R8      2    21k              R9 R10     4    33p              C6 C7 C8 C9         1    47uf 25V         C10        1    74HC164          IC6        2    78L05            IC4 IC5    1    100uf 25V        C12        1    220R             R1         1    AT89C51          IC2        1    B40C800(W02)     D1         2    BS170            T1 T2      1    BS250            T3         1    DB9/F            J2         1    J1X2             J1         1    LED GN5          D3         1    LM317L           IC1        1    TLC2272          IC7        1    ZIF40            IC3        5    1uf              C1 C2 C3 C4 C5 另外,套件配有1.5米串行电缆一根和配套的PCB一块,不含电源。编程器使用的15V交流电源或12V直流电源需要自己配套。2.装配要点:先焊接阻容元件,3个集成电路插座(IC2,IC7,IC6)其次是晶振, 全桥,稳压IC 等,然后焊接J2,最后焊接T1,T2,T3三只场效应管。焊接场效应管时务必按照以下方法:拔去电烙铁的电源,使用电烙铁余温去焊接三只场效应管,否则静电很容易损坏管子。这是装配成功的关键。这三只管子有问题,最典型的现象是不能联机。由于电源插座封装比较特殊,国内无法配套上,已改用电源线接线柱,可直接焊接在PCB板焊盘上,如下图1所示(在下图中两个红色圆圈内指示的焊盘),然后在连接到套件中配套的电源插座上。最近有朋友反映用15V交流比较麻烦,还要另外配变压器。如果要使用12V的直流电,无需将全桥焊上,将两个接线柱分别焊接在全桥的正负输出位置的焊盘上即可,如下图2所示,蓝色圆圈内指示的焊盘,连接电源的时候要注意正负极,不要接错了。方形焊盘是正极。40脚ZIF插座焊接前,应该将BR1飞线焊接好。注意:由于焊盘比较小,注意焊接温度,不要高温长时间反复焊接,会导致焊盘脱落。

    标签: AVR 51 编程器

    上传时间: 2013-12-31

    上传用户:caiguoqing

  • 单片开关电源的设计和应用

    单片开关电源集成电路于20世纪如年代中、后期问世以来,在国际上获得广泛应用,已成为开发中、小功率无工频变压器式高效开关电源的首选产品。本书从实用角度出发,全面系统深入地阐述了单片开关电源的设计与应用。全书共10章。第1至4章分别介绍了六大系列TOPswitch、TOPSwitch—II、TinySwitch、TNY256、MC33370、TOPSwitch—FX等67种型号的单片开关电源集成电路的原理与应用。第5章讲述L4960、L4970/4970A系列15种型号的单片开关式稳压器。第6章介绍16种单片开关电源模块的设计。第7章阐述单片开关电源的特殊应用。第8、9、10章分别介绍单片开关电源的设计指南、电磁兼容性及酗试技术、外围电路关键元器件的选择。这是国内第一部关于单片开关电源的专著,充分反映了该领域的国内外最新研究成果。 第1章 单片开关电源概述 1.1 开关电源的发展趋势 1.1.1 开关电源的发展历史 1.1.2 单片开关电源的发展趋势 1.2 开关电源的基本原理 1.2.1 开关电源的控制方式 1.2.2 脉宽调制式开关电源的基本原理 1.3 单片开关电源的产品分类及主要特点 1.4 单片开关电源的基本原理及反馈电路类型 1.4.1 单片开关电源的基本原理 1.4.2 单片开关电源的两种工作模式 1.4.3 反馈电路的四种基本类型 1.5 单片开关电源典型产品的技术指标 第2章 三端单片开关电源的原理与应用 2.1 TOPSwitch—II系列的产品分类及性能特点 2.1.1 TOPSwitch—II的产品分类 2.1.2 TOPSwitch—II的性能特点 2.2 TOPSwitch—II系列单片开关电源的工作原理

    标签: 单片开关 电源

    上传时间: 2013-10-29

    上传用户:潜水的三贡

  • DS1820 C51 子程序 (一线数据传输)

    //芯片资料请到www.elecfans.com查找 //DS1820 C51 子程序//这里以11.0592M晶体为例,不同的晶体速度可能需要调整延时的时间//sbit DQ =P2^1;//根据实际情况定义端口 typedef unsigned char byte;typedef unsigned int  word; //延时void delay(word useconds){  for(;useconds>0;useconds--);} //复位byte ow_reset(void){  byte presence;  DQ = 0; //pull DQ line low  delay(29); // leave it low for 480us  DQ = 1; // allow line to return high  delay(3); // wait for presence  presence = DQ; // get presence signal  delay(25); // wait for end of timeslot  return(presence); // presence signal returned}     // 0=presence, 1 = no part //从 1-wire 总线上读取一个字节byte read_byte(void){  byte i;  byte value = 0;  for (i=8;i>0;i--)  {    value>>=1;    DQ = 0; // pull DQ low to start timeslot    DQ = 1; // then return high    delay(1);  //for (i=0; i<3; i++);     if(DQ)value|=0x80;    delay(6); // wait for rest of timeslot  }  return(value);} //向 1-WIRE 总线上写一个字节void write_byte(char val){  byte i;  for (i=8; i>0; i--) // writes byte, one bit at a time  {    DQ = 0; // pull DQ low to start timeslot    DQ = val&0x01;    delay(5); // hold value for remainder of timeslot    DQ = 1;    val=val/2;  }  delay(5);} //读取温度char Read_Temperature(void){  union{    byte c[2];    int x;  }temp;   ow_reset();  write_byte(0xCC); // Skip ROM  write_byte(0xBE); // Read Scratch Pad  temp.c[1]=read_byte();  temp.c[0]=read_byte();  ow_reset();  write_byte(0xCC); //Skip ROM  write_byte(0x44); // Start Conversion  return temp.x/2;}

    标签: 1820 C51 DS 程序

    上传时间: 2013-11-03

    上传用户:hongmo