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

SEG-y

  • C函数速查手册全书下载

    C函数速查手册 出版社:人民邮电出版社 《C函数速查手册》中所讲的C语言函数按照功能顺序和字母顺序进行排序,读者既可以按照功能顺序查找,也可以按照字母顺序学习。《C函数速查手册》不仅适合于C语言初学者学习使用,而且也可以作为中、高级C语言开发人员的参考手册。 目录  第1章 数学函数    1.1 _clear87函数:清除浮点状态字    1.2 _status87函数:取浮点状态字    1.3 abs函数:求整数的绝对值    1.4 acos、acosl函数:反余弦函数    1.5 asin、asinl函数:反正弦函数    1.6 atan函数:反正切函数    1.7 atan2、atan2l函数:计算Y/X的反正切值    1.8 cabs函数:计算复数的模    1.9 ceil函数:向上取整    1.10 cos函数:余弦函数    1.11 cosh函数:双曲余弦函数    1.12 div函数:求两个整数相除的商和余数    1.13 exp函数:指数函数    1.14 fabs函数:求浮点数的绝对值    1.15 floor函数:向下取整    1.16 fmod函数:计算x对y的模    1.17 frexp函数:将浮点数分为底数与指数    1.18 hypot函数:计算直角三角形的斜边    1.19 labs函数:取长整数的绝对值    1.20 ldexp、ldexpl函数:幂计算    1.21 ldiv函数:两个长整型数相除    1.22 log、logl函数:计算自然对数    1.23 log10、log10l函数:计算常用对数    1.24 max函数:求两个数中的最大者    1.25 min函数:求两个数中的最小者    1.26 modf、modfl函数:分割数为整数部分和小数部分    1.27 poly函数:计算多项式    1.28 pow函数:指数函数    1.29 pow10函数:指数函数    1.30 rand函数:随机数发生器    1.31 random函数:随机数发生器    1.32 randomize函数:初始化随机数发生器    1.33 sin函数:正弦函数    1.34 sinh函数:双曲正弦函数    1.35 sqrt函数:计算平方根    1.36 srand函数:初始化随机数发生器    1.37 tan、tanl函数:正切函数    1.38 tanh、tanhl函数:双曲正切函数    第2章 字符串函数    2.1 atof函数:把字符串转换成浮点数    2.2 atoi函数:将字符串转换成整型数    2.3 atol函数:将字符串转换成长整型数    2.4 ecvt函数:将浮点数转换为字符串    2.5 fcvt函数:将浮点数转换为字符串    2.6 gcvt函数:将浮点数转换成字符串    2.7 itoa函数:将整数值转换为字符串    2.8 isalnum函数:字母、数字判断函数    2.9 isalpha函数:字母判断函数    2.10 isascii函数:整数值的字符分类    2.11 iscntrl函数:控制字符判断函数    2.12 isdigit函数:数字判断函数    2.13 isgraph函数:打印字符判断    2.14 islower函数:小写字母判断函数    2.15 isprint函数:可打印字符判断函数    2.16 isptmct函数:标点符号判断函数    2.17 isspace函数:空格等判断函数    2.18 isupper函数:大写字母判断函数    2.19 isxdigit函数:十六进制数字判断函数    2.20 ltoa函数:将长整值转换为字符串    2.21 mbstowcs函数:将多字节字符序列转换成相应的宽字符序列    2.22 mbtowc函数:将多字节字符转换成相应的宽字符    2.23 stpcpy函数:复制字符串    2.24 strcat函数:拼接字符串    2.25 strchr函数:查找给定字符    2.26 strcmp函数:比较字符串    2.27 strcmpi函数:比较字符串    2.28 strcpy函数:复制字符串    2.29 strcspn函数:查找不包含指定字符集子串的段    2.30 strdup函数:将字符串复制到新建的位置    2.31 stricmp函数:比较字符串    2.32 strlen函数:获取字符长度

    标签: 函数 书下载 速查手册

    上传时间: 2014-12-25

    上传用户:水口鸿胜电器

  • 单片机C语言控制电机星三角自动起动

    本程序包括内容有: 1、外控制线路接线 2、控制板接线 3、参考:三相异步电动机Y-△起动电路的工作原理 4、程序控制运行流程 5、完整程序

    标签: 单片机 C语言 控制 电机

    上传时间: 2013-10-14

    上传用户:shenlan

  • SONIX 8BIT单片机26系列I/O型原理及基础课件

    主要内容: 1、Sonix 26xx单片机简介;2、Sonix 26xx单片机特点;3、Sonix 26xx单片机内部结构;4、Sonix 26xx单片机资源;5、Sonix 26xx单片机ROM、RAM的映射;6、Sonix 26xx寄存器(ACC、PFLAG、PC、Y、Z、R);

    标签: SONIX 8BIT 单片机

    上传时间: 2013-10-29

    上传用户:远远ssad

  • C51原理及相关基础入门知识

    C51原理及相关基础入门知识 第一章:C51 流程控制语句一、分类条件语句、循环语句和开关语句。下面将对这些语句作详细介绍。(1) 条件语句条件语句的一般形式为:if(表达式)语句 1;else语句 2;上述结构表示: 如果表达式的值为非0(TURE)即真, 则执行语句1, 执行完语句1 从语句2 后开始继续向下执行; 如果表达式的值为 0(FALSE)即假, 则跳过语句1 而执行语句2。所谓表达式是指关系表达式和逻辑表达式的结合式。注意:1. 条件执行语句中"else 语句2;"部分是选择项, 可以缺省, 此时条件语句变成:if(表达式) 语句1;表示若表达式的值为非 0 则执行语句1 , 否则跳过语句1 继续执行。2. 如果语句1 或语句2 有多于一条语句要执行时, 必须使用"{"和"}" 把这些语句包括在其中, 此时条件语句形式为:if(表达式){语句体 1;}else{语句体 2;}3. 条件语句可以嵌套, 这种情况经常碰到, 但条件嵌套语句容易出错, 其原因主要是不知道哪个if 对应哪个else。例如:if(x>20||x<-10)if(y<=100&&y>x)printf("Good");elseprintf("Bad");对于上述情况,规定: else 语句与最近的一个if 语句匹配, 上例中的 else 与 if(y<=100&&y>x) 相匹配。为了使 else 与if(x>20||x<-10) 相匹配, 必须用花括号。如下所示:if(x>20||x<-10){if(y<=100&&y>x)printf("Good");}

    标签: C51 入门知识

    上传时间: 2013-10-24

    上传用户:Sophie

  • linux 中断和设备驱动

    linux 中断和设备驱动 本章介绍L i n u x内核是如何维护它支持的文件系统中的文件的,我们先介绍 V F S ( Vi r t u a lFile System,虚拟文件系统),再解释一下L i n u x内核的真实文件系统是如何得到支持的。L i n u x的一个最重要特点就是它支持许多不同的文件系统。这使 L i n u x非常灵活,能够与许多其他的操作系统共存。在写这本书的时候, L i n u x共支持1 5种文件系统: e x t、 e x t 2、x i a、 m i n i x、 u m s d o s、 msdos 、v f a t、 p r o c、 s m b、 n c p、 i s o 9 6 6 0、 s y s v、 h p f s、 a ffs 和u f s。无疑随着时间的推移,L i n u x支持的文件系统数还会增加。

    标签: linux 中断 设备驱动

    上传时间: 2013-11-13

    上传用户:zxh122

  • PC机之间串口通信的实现

    PC机之间串口通信的实现一、实验目的 1.熟悉微机接口实验装置的结构和使用方法。 2.掌握通信接口芯片8251和8250的功能和使用方法。 3.学会串行通信程序的编制方法。 二、实验内容与要求 1.基本要求主机接收开关量输入的数据(二进制或十六进制),从键盘上按“传输”键(可自行定义),就将该数据通过8251A传输出去。终端接收后在显示器上显示数据。具体操作说明如下:(1)出现提示信息“start with R in the board!”,通过调整乒乓开关的状态,设置8位数据;(2)在小键盘上按“R”键,系统将此时乒乓开关的状态读入计算机I中,并显示出来,同时显示经串行通讯后,计算机II接收到的数据;(3)完成后,系统提示“do you want to send another data? Y/N”,根据用户需要,在键盘按下“Y”键,则重复步骤(1),进行另一数据的通讯;在键盘按除“Y”键外的任意键,将退出本程序。2.提高要求 能够进行出错处理,例如采用奇偶校验,出错重传或者采用接收方回传和发送方确认来保证发送和接收正确。 三、设计报告要求 1.设计目的和内容 2.总体设计 3.硬件设计:原理图(接线图)及简要说明 4.软件设计框图及程序清单5.设计结果和体会(包括遇到的问题及解决的方法) 四、8251A通用串行输入/输出接口芯片由于CPU与接口之间按并行方式传输,接口与外设之间按串行方式传输,因此,在串行接口中,必须要有“接收移位寄存器”(串→并)和“发送移位寄存器”(并→串)。能够完成上述“串←→并”转换功能的电路,通常称为“通用异步收发器”(UART:Universal Asynchronous Receiver and Transmitter),典型的芯片有:Intel 8250/8251。8251A异步工作方式:如果8251A编程为异步方式,在需要发送字符时,必须首先设置TXEN和CTS#为有效状态,TXEN(Transmitter Enable)是允许发送信号,是命令寄存器中的一位;CTS#(Clear To Send)是由外设发来的对CPU请求发送信号的响应信号。然后就开始发送过程。在发送时,每当CPU送往发送缓冲器一个字符,发送器自动为这个字符加上1个起始位,并且按照编程要求加上奇/偶校验位以及1个、1.5个或者2个停止位。串行数据以起始位开始,接着是最低有效数据位,最高有效位的后面是奇/偶校验位,然后是停止位。按位发送的数据是以发送时钟TXC的下降沿同步的,也就是说这些数据总是在发送时钟TXC的下降沿从8251A发出。数据传输的波特率取决于编程时指定的波特率因子,为发送器时钟频率的1、1/16或1/64。当波特率指定为16时,数据传输的波特率就是发送器时钟频率的1/16。CPU通过数据总线将数据送到8251A的数据输出缓冲寄存器以后,再传输到发送缓冲器,经移位寄存器移位,将并行数据变为串行数据,从TxD端送往外部设备。在8251A接收字符时,命令寄存器的接收允许位RxE(Receiver Enable)必须为1。8251A通过检测RxD引脚上的低电平来准备接收字符,在没有字符传送时RxD端为高电平。8251A不断地检测RxD引脚,从RxD端上检测到低电平以后,便认为是串行数据的起始位,并且启动接收控制电路中的一个计数器来进行计数,计数器的频率等于接收器时钟频率。计数器是作为接收器采样定时,当计数到相当于半个数位的传输时间时再次对RxD端进行采样,如果仍为低电平,则确认该数位是一个有效的起始位。若传输一个字符需要16个时钟,那么就是要在计数8个时钟后采样到低电平。之后,8251A每隔一个数位的传输时间对RxD端采样一次,依次确定串行数据位的值。串行数据位顺序进入接收移位寄存器,通过校验并除去停止位,变成并行数据以后通过内部数据总线送入接收缓冲器,此时发出有效状态的RxRDY信号通知CPU,通知CPU8251A已经收到一个有效的数据。一个字符对应的数据可以是5~8位。如果一个字符对应的数据不到8位,8251A会在移位转换成并行数据的时候,自动把他们的高位补成0。 五、系统总体设计方案根据系统设计的要求,对系统设计的总体方案进行论证分析如下:1.获取8位开关量可使用实验台上的8255A可编程并行接口芯片,因为只要获取8位数据量,只需使用基本输入和8位数据线,所以将8255A工作在方式0,PA0-PA7接实验台上的8位开关量。2.当使用串口进行数据传送时,虽然同步通信速度远远高于异步通信,可达500kbit/s,但由于其需要有一个时钟来实现发送端和接收端之间的同步,硬件电路复杂,通常计算机之间的通信只采用异步通信。3.由于8251A本身没有时钟,需要外部提供,所以本设计中使用实验台上的8253芯片的计数器2来实现。4:显示和键盘输入均使用DOS功能调用来实现。设计思路框图,如下图所示: 六、硬件设计硬件电路主要分为8位开关量数据获取电路,串行通信数据发送电路,串行通信数据接收电路三个部分。1.8位开关量数据获取电路该电路主要是利用8255并行接口读取8位乒乓开关的数据。此次设计在获取8位开关数据量时采用8255令其工作在方式0,A口输入8位数据,CS#接实验台上CS1口,对应端口为280H-283H,PA0-PA7接8个开关。2.串行通信电路串行通信电路本设计中8253主要为8251充当频率发生器,接线如下图所示。

    标签: PC机 串口通信

    上传时间: 2013-12-19

    上传用户:小火车啦啦啦

  • MPC106 PCI Bridge/Memory Contr

    In this document, the term Ô60xÕ is used to denote a 32-bit microprocessor from the PowerPC architecture family that conforms to the bus interface of the PowerPC 601ª, PowerPC 603ª, or PowerPC 604 microprocessors. Note that this does not include the PowerPC 602ª microprocessor which has a multiplexed address/data bus. 60x processors implement the PowerPC architecture as it is speciÞed for 32-bit addressing, which provides 32-bit effective (logical) addresses, integer data types of 8, 16, and 32 bits,and ßoating-point data types of 32 and 64 bits (single-precision and double-precision).1.1 Overview The MPC106 provides an integrated high-bandwidth, high-performance, TTL-compatible interface between a 60x processor, a secondary (L2) cache or additional (up to four total) 60x processors, the PCI bus,and main memory. This section provides a block diagram showing the major functional units of the 106 and describes brießy how those units interact.Figure 1 shows the major functional units within the 106. Note that this is a conceptual block diagram intended to show the basic features rather than an attempt to show how these features are physically implemented on the device.

    标签: Bridge Memory Contr MPC

    上传时间: 2013-10-08

    上传用户:18711024007

  • DS1302+AT89S52+LED时钟程序(C语言源代码+

    #include<reg51.h>/*************************ds1302与at89s52引脚连接********************/sbit T_RST=P3^5; sbit T_CLK=P3^6;                 sbit T_IO=P3^7;                                sbit ACC0=ACC^0;sbit ACC7=ACC^7;unsigned char seg[]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09};         //0~~9段码 /******************DS1302:写入操作(上升沿)*********************/ void write_byte(unsigned char da){   unsigned char i;   ACC=da;   for(i=8;i>0;i--)   {       T_IO=ACC0;   T_CLK=0;           T_CLK=1;      ACC=ACC>>1;   }} /******************DS1302:读取操作(下降沿)*****************/unsigned char read_byte(void){   unsigned char i;   for(i=0;i<8;i++)   {      ACC=ACC>>1;   T_CLK = 1;   T_CLK = 0;      ACC7 = T_IO;   }   return(ACC); } /******************DS1302:写入数据(先送地址,再写数据)***************************/ void write_1302(unsigned char addr,unsigned char da){   T_RST=0;    //停止工作   T_CLK=0;                                    T_RST=1;   //重新工作   write_byte(addr);    //写入地址      write_byte(da);   T_RST=0;   T_CLK=1;}

    标签: 1302 LED DS AT

    上传时间: 2014-01-17

    上传用户:sglccwk

  • AVR高速嵌入式单片机原理与应用(修订版)

    AVR高速嵌入式单片机原理与应用(修订版)详细介绍ATMEL公司开发的AVR高速嵌入式单片机的结构;讲述AVR单片机的开发工具和集成开发环境(IDE),包括Studio调试工具、AVR单片机汇编器和单片机串行下载编程;学习指令系统时,每条指令均有实例,边学习边调试,使学习者看得见指令流向及操作结果,真正理解每条指令的功能及使用注意事项;介绍AVR系列多种单片机功能特点、实用程序设计及应用实例;作为提高篇,讲述简单易学、适用AVR单片机的高级语言BASCOMAVR及ICC AVR C编译器。 AVR高速嵌入式单片机原理与应用(修订版) 目录 第一章ATMEL单片机简介1.1ATMEL公司产品的特点11.2AT90系列单片机简介21.3AT91M系列单片机简介2第二章AVR单片机系统结构2.1AVR单片机总体结构42.2AVR单片机中央处理器CPU62.2.1结构概述72.2.2通用寄存器堆92.2.3X、Y、Z寄存器92.2.4ALU运算逻辑单元92.3AVR单片机存储器组织102.3.1可下载的Flash程序存储器102.3.2内部和外部的SRAM数据存储器102.3.3EEPROM数据存储器112.3.4存储器访问和指令执行时序112.3.5I/O存储器132.4AVR单片机系统复位162.4.1复位源172.4.2加电复位182.4.3外部复位192.4.4看门狗复位192.5AVR单片机中断系统202.5.1中断处理202.5.2外部中断232.5.3中断应答时间232.5.4MCU控制寄存器 MCUCR232.6AVR单片机的省电方式242.6.1休眠状态242.6.2空闲模式242.6.3掉电模式252.7AVR单片机定时器/计数器252.7.1定时器/计数器预定比例器252.7.28位定时器/计数器0252.7.316位定时器/计数器1272.7.4看门狗定时器332.8AVR单片机EEPROM读/写访问342.9AVR单片机串行接口352.9.1同步串行接口 SPI352.9.2通用串行接口 UART402.10AVR单片机模拟比较器452.10.1模拟比较器452.10.2模拟比较器控制和状态寄存器ACSR462.11AVR单片机I/O端口472.11.1端口A472.11.2端口 B482.11.3端口 C542.11.4端口 D552.12AVR单片机存储器编程612.12.1编程存储器锁定位612.12.2熔断位612.12.3芯片代码612.12.4编程 Flash和 EEPROM612.12.5并行编程622.12.6串行下载662.12.7可编程特性67第三章AVR单片机开发工具3.1AVR实时在线仿真器ICE200693.2JTAG ICE仿真器693.3AVR嵌入式单片机开发下载实验器SL?AVR703.4AVR集成开发环境(IDE)753.4.1AVR Assembler编译器753.4.2AVR Studio773.4.3AVR Prog783.5SL?AVR系列组态开发实验系统793.6SL?AVR*.ASM源文件说明81第四章AVR单片机指令系统4.1指令格式844.1.1汇编指令844.1.2汇编器伪指令844.1.3表达式874.2寻址方式894.3数据操作和指令类型924.3.1数据操作924.3.2指令类型924.3.3指令集名词924.4算术和逻辑指令934.4.1加法指令934.4.2减法指令974.4.3乘法指令1014.4.4取反码指令1014.4.5取补指令1024.4.6比较指令1034.4.7逻辑与指令1054.4.8逻辑或指令1074.4.9逻辑异或指令1104.5转移指令1114.5.1无条件转移指令1114.5.2条件转移指令1144.6数据传送指令1354.6.1直接数据传送指令1354.6.2间接数据传送指令1374.6.3从程序存储器直接取数据指令1444.6.4I/O口数据传送指令1454.6.5堆栈操作指令1464.7位指令和位测试指令1474.7.1带进位逻辑操作指令1474.7.2位变量传送指令1514.7.3位变量修改指令1524.7.4其它指令1614.8新增指令(新器件)1624.8.1EICALL-- 延长间接调用子程序1624.8.2EIJMP--扩展间接跳转1634.8.3ELPM--扩展装载程序存储器1644.8.4ESPM--扩展存储程序存储器1644.8.5FMUL--小数乘法1664.8.6FMULS--有符号数乘法1664.8.7FMULSU--有符号小数和无符号小数乘法1674.8.8MOVW--拷贝寄存器字1684.8.9MULS--有符号数乘法1694.8.10MULSU--有符号数与无符号数乘法1694.8.11SPM--存储程序存储器170 第五章AVR单片机AT90系列5.1AT90S12001725.1.1特点1725.1.2描述1735.1.3引脚配置1745.1.4结构纵览1755.2AT90S23131835.2.1特点1835.2.2描述1845.2.3引脚配置1855.3ATmega8/8L1855.3.1特点1865.3.2描述1875.3.3引脚配置1895.3.4开发实验工具1905.4AT90S2333/44331915.4.1特点1915.4.2描述1925.4.3引脚配置1945.5AT90S4414/85151955.5.1特点1955.5.2AT90S4414和AT90S8515的比较1965.5.3引脚配置1965.6AT90S4434/85351975.6.1特点1975.6.2描述1985.6.3AT90S4434和AT90S8535的比较1985.6.4引脚配置2005.6.5AVR RISC结构2015.6.6定时器/计数器2125.6.7看门狗定时器 2175.6.8EEPROM读/写2175.6.9串行外设接口SPI2175.6.10通用串行接口UART2175.6.11模拟比较器 2175.6.12模数转换器2185.6.13I/O端口2235.7ATmega83/1632285.7.1特点2285.7.2描述2295.7.3ATmega83与ATmega163的比较2315.7.4引脚配置2315.8ATtiny10/11/122325.8.1特点2325.8.2描述2335.8.3引脚配置2355.9ATtiny15/L2375.9.1特点2375.9.2描述2375.9.3引脚配置2395 .10ATmega128/128L2395.10.1特点2405.10.2描述2415.10.3引脚配置2435.10.4开发实验工具2455.11ATmega1612465.11.1特点2465.11.2描述2475.11.3引脚配置2475.12AVR单片机替代MCS51单片机249第六章实用程序设计6.1程序设计方法2506.1.1程序设计步骤2506.1.2程序设计技术2506.2应用程序举例2516.2.1内部寄存器和位定义文件2516.2.2访问内部 EEPROM2546.2.3数据块传送2546.2.4乘法和除法运算应用一2556.2.5乘法和除法运算应用二2556.2.616位运算2556.2.7BCD运算2556.2.8冒泡分类算法2556.2.9设置和使用模拟比较器2556.2.10半双工中断方式UART应用一2556.2.11半双工中断方式UART应用二2566.2.128位精度A/D转换器2566.2.13装载程序存储器2566.2.14安装和使用相同模拟比较器2566.2.15CRC程序存储的检查2566.2.164×4键区休眠触发方式2576.2.17多工法驱动LED和4×4键区扫描2576.2.18I2C总线2576.2.19I2C工作2586.2.20SPI软件2586.2.21验证SLAVR实验器及AT90S1200的口功能12596.2.22验证SLAVR实验器及AT90S1200的口功能22596.2.23验证SLAVR实验器及具有DIP40封装的口功能第七章AVR单片机的应用7.1通用延时子程序2607.2简单I/O口输出实验2667.2.1SLAVR721.ASM 2667.2.2SLAVR722.ASM2677.2.3SLAVR723.ASM2687.2.4SLAVR724.ASM2707.2.5SLAVR725.ASM2717.2.6SLAVR726.ASM2727.2.7SLAVR727.ASM2737.3综合程序2747.3.1LED/LCD/键盘扫描综合程序2747.3.2LED键盘扫描综合程序2757.3.3在LED上实现字符8的循环移位显示程序2757.3.4电脑放音机2777.3.5键盘扫描程序2857.3.6十进制计数显示2867.3.7廉价的A/D转换器2897.3.8高精度廉价的A/D转换器2947.3.9星星灯2977.3.10按钮猜数程序2987.3.11汉字的输入3047.4复杂实用程序3067.4.110位A/D转换3067.4.2步进电机控制程序3097.4.3测脉冲宽度3127.4.4LCD显示8字循环3187.4.5LED电脑时钟3247.4.6测频率3307.4.7测转速3327.4.8AT90S8535的A/D转换334第八章BASCOMAVR的应用8.1基于高级语言BASCOMAVR的单片机开发平台3408.2BASCOMAVR软件平台的安装与使用3418.3AVR I/O口的应用3458.3.1LED发光二极管的控制3458.3.2简易手控广告灯3468.3.3简易电脑音乐放音机3478.4LCD显示器3498.4.1标准LCD显示器的应用3498.4.2简单游戏机--按钮猜数3518.5串口通信UART3528.5.1AVR系统与PC的简易通信3538.5.2PC控制的简易广告灯3548.6单总线接口和温度计3568.7I2C总线接口和简易IC卡读写器359第九章ICC AVR C编译器的使用9.1ICC AVR的概述3659.1.1介绍ImageCraft的ICC AVR3659.1.2ICC AVR中的文件类型及其扩展名3659.1.3附注和扩充3669.2ImageCraft的ICC AVR编译器安装3679.2.1安装SETUP.EXE程序3679.2.2对安装完成的软件进行注册3679.3ICC AVR导游3689.3.1起步3689.3.2C程序的剖析3699.4ICC AVR的IDE环境3709.4.1编译一个单独的文件3709.4.2创建一个新的工程3709.4.3工程管理3719.4.4编辑窗口3719.4.5应用构筑向导3719.4.6状态窗口3719.4.7终端仿真3719.5C库函数与启动文件3729.5.1启动文件3729.5.2常用库函数3729.5.3字符类型库3739.5.4浮点运算库3749.5.5标准输入/输出库3759.5.6标准库和内存分配函数3769.5.7字符串函数3779.5.8变量参数函数3799.5.9堆栈检查函数3799.6AVR硬件访问的编程3809.6.1访问AVR的底层硬件3809.6.2位操作3809.6.3程序存储器和常量数据3819.6.4字符串3829.6.5堆栈3839.6.6在线汇编3839.6.7I/O寄存器3849.6.8绝对内存地址3849.6.9C任务3859.6.10中断操作3869.6.11访问UART3879.6.12访问EEPROM3879.6.13访问SPI3889.6.14相对转移/调用的地址范围3889.6.15C的运行结构3889.6.16汇编界面和调用规则3899.6.17函数返回非整型值3909.6.18程序和数据区的使用3909.6.19编程区域3919.6.20调试3919.7应用举例*3929.7.1读/写口3929.7.2延时函数3929.7.3读/写EEPROM3929.7.4AVR的PB口变速移位3939.7.5音符声程序3939.7.68字循环移位显示程序3949.7.7锯齿波程序3959.7.8正三角波程序3969.7.9梯形波程序396附录1AT89系列单片机简介398附录2AT94K系列现场可编程系统标准集成电路401附录3指令集综合404附录4AVR单片机选型表408参 考 文 献412

    标签: AVR 高速嵌入式 单片机原理

    上传时间: 2013-11-08

    上传用户:xcy122677

  • 基于Proteus的单片机出租车计价器的设计

    随着单片机性能不断提高而价格却不断下降, 单片机控制在越来越多的领域得以应用。按照传统的模式, 在整个项目开发过程中, 先根据控制系统要求设计原理图, PCB 电路图绘制, 电路板制作, 元器件的焊接, 然后进行软件编程, 通过仿真器对系统硬件和软件调试, 最后将调试成功的程序固化到单片机中。这一过程中的主要问题是, 应用程序需要在硬件完成的情况下才能进行调试。虽然有的软件可以进行模拟调试, 但是对于一些复杂的程序如人机交互程序, 在没有硬件的时候, 没有界面的真实感, 给调试带来困难。在软硬件的配合中如需要修改硬件, 要重新制板, 在时间和投入上带来很大的麻烦。纵观整个过程, 无论是从硬件成本上, 还是从调试周期上, 传统开发模式的效率有待提高。能否只使用一种开发工具兼顾仿真, 调试, 制板, 以及最大限度的软件模拟来作为单片机的开发平台, 用它取代编程器、仿真器、成品前的硬件测试等工作是广大单片机开发者的梦想。 PROTEUS 软件介绍为了更加直观具体地说明Proteus 软件的实用价值, 本文以一具体的TAXI 的计价器和计时器电路板的设计过程为例。其电路板要实现的功能是:㈠计时功能(相当于时钟);㈡里程计价功能:两公里以内价格为4 元, 以后每一公里加0.7 元, 不足一公里取整(如10.3 公里取11 公里);㈢通过键盘输入里程, 模拟计算里程费, 实现Y= (X- 2)*0.7+4 的简单计算。基于上述功能, 选用ATMEL 公司生产的通用芯片AT89C51 单片机构成应用系统。AT89C51 是内含8 位4K 程序存储器, 128B 数据存储器, 2 个定时器/计数器的通用芯片。系统开发环境采用ProteusISIS 6。2.1 计价器模拟系统硬件构成系统主要由一个AT89C51 单片机、74LS373、74LS240、矩阵键盘、4 位7 段数码管等组成。通用AT89C51 单片机芯片作为整个电路的核心部分、74LS373 作为LED 段选控制、74LS240四路反相器则为4 位共阴极7 段数码管提供位选通信号、矩阵键盘输入控制信号。

    标签: Proteus 单片机 出租车计价器

    上传时间: 2013-11-09

    上传用户:木子叶1