mcuhome_com mcuhome_com
关注数: 1 粉丝数: 0 发帖数: 33 关注贴吧数: 10
单片机英文缩写 PC = progammer counter //程序计数器 ACC = accumulate //累加器 PSW = progammer status word //程序状态字 SP = stack point //堆栈指针 DPTR = data point register //数据指针 寄存器 IP = interrupt priority //中断优先级 IE = interrupt enable // 中断使能 TMOD = timer mode //定时器 方式 (定时器/计数器 控制寄存器) ALE = alter (变更,可能是) PSEN = progammer saving enable //程序存储器使能(选择外部程序存储器的意思) EA = enable all(允许所有中断)完整应该是 enable all interrupt PROG = progamme (程序) SFR = special funtion register //特殊功能寄存器 TCON = timer control //定时器控制 PCON = power control //电源控制 MSB = most significant bit//最高有效位 LSB = last significant bit//最低有效位 CY = carry //进位(标志) AC = assistant carry //辅助进位 OV = overflow //溢出 ORG = originally //起始来源 DB = define byte //字节定义 EQU = equal //等于 DW = define word //字定义 E = enable //使能 OE = output enable //输出使能 RD = read //读 WR = write //写 中断部分: INT0 = interrupt 0 //中断0 INT1 = interrupt 1//中断1 T0 = timer 0 //定时器0 T1 = timer 1 //定时器1 TF1 = timer1 flag //定时器1 标志 (其实是定时器1中断标志位) IE1 = interrupt exterior //(外部中断请求,可能是) IT1 = interrupt touch //(外部中断触发方式,可能是) ES = enable serial //串行使能 ET = enable timer //定时器使能 EX = enable exterior //外部使能(中断) PX = priority exterior //外部中断优先级 PT = priority timer //定时器优先级 PS = priority serial //串口优先级 XTAL:External Crystal Oscillator,外部晶体振荡器 CLKOUT:Clock out,时钟输出 BUSWDITH:总线宽度 Vref:参考电压(带ADC的单片机中有的) RESET:复位,重启 ACH:?? HSO:High Speed Output,高速输出 HSI:High Speed Input:高速输入 INST:Instruction,指令 READY:就绪,总线中的就绪信号或引脚 NMI:No Mask Interruput (Input):不可屏蔽的中断请求(输入) RXD:Receive Data ,接收串行数据,单片机中有UART/USART功能的串行数据输入引脚 TXD:Transmit Data,发送串行数据,单片机中有UART/USART功能的串行数据输出引脚 EA:External Address Enable,外部存储器地址允许,针对51单片机而言 //这个应该是EA拨 RD:ReaD,存储器的读信号 WR:WRite,存储器的写信号 BHE:Bank High Enable:存储器的高位允许,如在80286系统中RAM的组织为16位的,分为高8位和低8位数据,分别的控制信号为BHE和BLE ALE:Address Latch Enable,地址信号锁定允许,这在早期Intel总线结构中是必不可少的信号,常和锁存器使用来分离地址/数据复用端口的地址和数据信
单片机小知识 今天有学员问到这个问题,我顺便整理一下,干脆发到这里,有需要补充这个方面的基础知识可以看看。以后学员问到的一些问题我也会部分整理到这里发布。二楼一日一贴专用,回复请从三楼开始。 单片机的进制及其转换 进制也就是进位制,是人们规定的一种进位方法。对于任何一种进制---X进制,就表示某一位置上的数运算时是逢X进一位。十进制是逢十进一,十六进制是逢十六进一,二进制就是逢二进一。 单片机是信息处理的工具,任何信息必须转换成二进制形式数据后才能由单片机进行处理,存储和传输。二进制数中只有两个字符0和1,表示具有两个不同稳定状态的元器件。例如,电路中有,无电流,有电流用1表示,无电流用0表示。类似的还比如电路中电压的高,低,晶体管的导通和截止等。 在单片机中常用的进制有二进制、十进制、十六进制。 二进制:它由两个基本数字0,1组成,二进制数运算规律是逢二进一。 十进制:有0,1,2….9十个基本数字组成,十进制数运算是按“逢十进一”的规则进行的. 十六进制: 它由十六个字符0~9以及A,B,C,D,E,F组成(它们分别表示十进制数10~15),十六进制数运算规律是逢十六进一,即基R=16=2^4,通常数字前面加加以0x表示。 数制转换: 1.二进制数、十六进制数转换为十进制数(按权求和) 二进制数、十六进制数转换为十进制数的规律是相同的。把二进制数(或十六进制数)按位权形式展开多项式和的形式,求其最后的和,就是其对应的十进制数——简称“按权求和”. 例如:把(1001.01)2 二进制计算。 解:(1001.01)2 =8*1+4*0+2*0+1*1+0*(1/2)+1*(1/4) =8+0+0+1+0+0.25 =9.25 把(38A.11)16转换为十进制数 解:(38A.11)16 =3×16的2次方+8×16的1次方+10×16的0次方+1×16的-1次方+1×16的-2次方 =768+128+10+0.0625+0.0039 =906.0664 2.十进制数转换为二进制数,十六进制数(除2/16取余法) 整数转换.一个十进制整数转换为二进制整数通常采用除二取余法,即用2连续除十进制数,直到商为0,逆序排列余数即可得到――简称除二取余法. 例:将25转换为二进制数 解:25÷2=12 余数1 12÷2=6 余数0 6÷2=3 余数0 3÷2=1 余数1 1÷2=0 余数1 所以25=(11001)2 同理,把十进制数转换为十六进制数时,将基数2转换成16就可以了. 例:将25转换为十六进制数 解:25÷16=1 余数9 1÷16=0 余数1 所以25=(19)16 3.二进制数与十六进制数之间的转换 由于4位二进制数恰好有16个组合状态,即1位十六进制数与4位二进制数是一一对应的.所以,十六进制数与二进制数的转换是十分简单的. (1)十六进制数转换成二进制数,只要将每一位十六进制数用对应的4位二进制数替代即可――简称位分四位. 例:将(4AF8B)16转换为二进制数. 解: 4 A F 8 B 0100 1010 1111 1000 1011 所以(4AF8B)16=(1001010111110001011)2 (2)二进制数转换为十六进制数,从低位向高位每四位一组,依次写出每组4位二进制数所对应的十六进制数――简称四位合一位. 例:将二进制数(0001 1101 0110)2转换为十六进制数. 解: 0001 1101 0110 1 D 6 所以(111010110)2=(1D6)16 转换时注意最后一组不足4位时必须加0补齐4位
如何学好单片机! 很多想学单片机的人问我的第一句话就是怎样才能学好单片机?对于这个问题我今天就我自己是如何开始学单片机,如何开始上手,如何开始熟练这个过程给大家讲讲。   先说说单片机,一般我们现在用的比较多的的MCS-51的单片机,它的资料比较多,用的人也很多,市场也很大,我们平时说的C51,C52,S51,S52都是51内核的,只是内存容量有差别,或是烧写程序的方法不同。只要你学会了51,那什么凌阳,AVR,什么样原理都是一样。触类旁通。   先说说就我个人的体会怎么样才能更快的学会单片机这门课。单片机这门课是一项非常重视动手实践的科目,不能总是看书,但是学习它首先必须得看书,因为从书中你需要大概了解一下,单片机的各个功能寄存器,而说明白点,我们使用单片机就是用软件去控制单片机的各个功能寄存器,再说明白点,就是控制单片机那些管角的电平什么时候输出高,什么时候输出低。而由这些高低电平的变化来控制由单片机为核心的系统板。从而实现我们需要的各个功能。对于看书,我们只需大概看看了解一个单片机各个管角都是干什么的?都有什么样的功能,能实现什么样的功能?其实第一次,第二次你可能都看不明白,但这不要紧,因为你没有和实际的物体建立起来这样一种互通的观念,所以我总是说,学单片机看书看两三天的时间就够了,看小说你一天能看五六本,看单片机你两三天看两三边就够了,而且可以不用很仔细的看。推荐一本书,就这一本就足够,书名忘了,是哈尔滨工业大学出版社出的的,作者是张毅刚。大概三四百页吧。大概了解一下书上的内容后,就开始做实践,这是非常关键的,如果说学单片机你不做实践那是不可能学会的,关于做实践有两种方法你可以选择,一种方法:你自己花钱买一块单片机的学习板,不要求功能太全的,对于初学者来说你买功能非常多的那种板子,上面有很多东西你这辈子都用不着,我建议有流水灯,数码管,独立键盘,矩阵键盘,有AD或DA(原理一样),有个简单的液晶,有蜂鸣器,这就差不多了,如果上面我提到的这些东西你能让它都熟练工作了,那可以说对于单片机方面的硬件你已经入门了,再剩下的就是自己练习设计其它电路,这需要你练习,不断的积累经验,只要过了第一关,后面的路就好走多了,万事开头难,大家可能都听过。方法二:你身边如果有单片机方面的高手,向他求助,让你帮你搭个简单的最最小系统板,其实对于高手来说,做个单片机的小系统板只需要一分钟的时间,而对于初学者可就难多了,因为只有你对硬件了解了才会对它熟悉。而如果你身边没有这样的高手,又找不到可以帮助你的人,那我劝你最好是自己买上一块,毕竟自己有一块要方便的多,以后做单片机类的小实验时都能用得上,还省事。   总结上面,只要你有信心,做事能坚持到底,有不成功不放弃的强烈意志。那学个单片机来说就是件非常容易的事。   步骤:1。找本书大概了解一下单片机结构,大概了解就行。不用都看懂,又不让你出书的。(三天)   2。找学习板练习编写程序,学单片机就是练编程序,遇到不会的再问人或查书找。 (二十天)   3。自己网上找些小电路类的资料练习设计外围电路。焊好后自己调试,熟悉过程。 (十天)   4。自己完全设计具有个人风格的电路,产品,。。。你已经是高手了。 。。。。 玩单片机控制,首先要会硬件,硬件是基础,没有一定的硬件基础单片机是很难做好的.首先开发一个项目要的步骤有以下几个: 一、先做好规划,确定项目的用途,需要用到哪些方面的知识,是单纯的开关控制还是需要通信。然后选择单片机,选择一个合适单片机是一个很重要的步骤,单片机选择的正确与否能以后的开发有很大的关系 二、搭硬件电路,选择一个画电路图的软件,比如PROTEL 99等,找一款合适自己的软件,根据自己的需要画电路,完成电路图时候如果还需要仿真的话可以找一个能做仿真的软件,最后在电路图斟酌无误的情况就布PCB电路板,拿到做PCB的厂家去做。 三、单片机编程,这也是核心部分,看一个项目做的好坏,最重要的就是看单片机编的如何,这需要一定的基础知识和经验,单片机编程与计算机编程一个很大的区别就是单片机需要经验,有的地方如果没人指点一二很可能很长时间就调出结果的,所以找一个有经验的师傅很有必要,尽管有的问题很简单,但你如果没碰到过就很难调痛,有了一定的基础知识,学好C51,准备一个仿真器,接到你的电路板就可以开始编程了。。
1 下一页