㈠ 单片机哪些品牌
补充说明楼上的
FairChild 仙童半导体(美国),这是半导体行业的鼻祖,历史悠久,目前世界上很多NB的半导体公司出自仙童
国内常用的:
ATMEL(美国):AT89S51
TI德州仪器(美国):MSP430系列
MicroChip(美国):PIC系列单片机
飞思卡尔半导体(原摩托罗拉半导体)(美国):基于ARM系列
Intel英特尔(美国):也有51系列的
NS国家半导体,国半(美国):NS系列单片机
冷门的:
Epson爱普生(日本):现在做打印机较多
SST(美国)
Zilog(美国)
NEC(日本)
富士通(日本)
东芝(日本)
松下(日本)
日立(日本)
Philips(荷兰)
SAMSUNG三星(韩国)
RENESAS瑞萨半导体(日本)
国产:
宏晶科技(深圳):STC
凌阳科技(台湾)
义隆单片机(台湾):EMP78
HOTLEK(台湾)
时代民芯(北京)
㈡ 51单片机中scon中ren什么作用
REN:允许接收位。 REN用于控制数据接收的允许和禁止,REN=1时,允许接收,REN=0时,禁止接收。
(1).SM0、SM1:串行口工作方式控制位。 SM0,SM1 工作方式 00 方式0 01 方式1 10 方式2 11 方式3 (2).SM2:多机通信控制位。 多机通信是工作于方式2和方式3,SM2位主要用于方式2和方式3。接收状态,当串行口工作于方式2或3,以及SM2=1时,只有当接收到第9位数据(RB8)为1时,才把接收到的前8位数据送入SBUF,且置位RI发出中断申请,否则会将接受到的数据放弃。当SM2=0时,就不管第9位数据是0还是1,都会将数据送入SBUF,并发出中断申请。 工作于方式0时,SM2必须为0。 (3).REN:允许接收位。 REN用于控制数据接收的允许和禁止,REN=1时,允许接收,REN=0时,禁止接收。 (4).TB8:发送接收数据位8。 在方式2和方式3中,TB8是要发送的——即第9位数据位。在多机通信中同样亦要传输这一位,并且它代表传输的地址还是数据,TB8=0为数据,TB8=1时为地址。 (5).RB8:接收数据位8。 在方式2和方式3中,RB8存放接收到的第9位数据,用以识别接收到的数据特征。 (6).TI:发送中断标志位。 可寻址标志位。方式0时,发送完第8位数据后,由硬件置位,其它方式下,在发送或停止位之前由硬件置位,因此,TI=1表示帧发送结束,TI可由软件清“0”。 (7).RI:接收中断标志位。 可寻址标志位。接收完第8位数据后,该位由硬件置位,在其他工作方式下,该位由硬件置位,RI=1表示帧接收完成。 在串口中断处理时,TI,RI都需要软件清"0",硬件置位后不可能自动清0,此外,在进行缓冲区操作时,需要ES=0,以防止中断出现。
㈢ 在调试rs232串口通信时,单片机往PC机上发数据,串口调试助手可以接收,但是PC往单片机发数据,接收不到。
先解释一下现象:
(1)MAX232的12脚即R1OUT连接到了单片机的RX脚,因此使用探头碰MAX232的12引脚时导入了干扰信号,所以接收到了乱的数据。同时,也证明了单片机的接收电路和程序都没有问题。
(2)板子上的地接到示波器上的地,PC才能收到数据,说明单片机与PC没有共地。同时,也证明了单片机的发送电路、程序和PC的接收电路都没有问题。
原理:
(1)PC的串口即RS232有9个引脚,与单片机通信时用到三个引脚,依次是2脚RX、3脚TX、5脚信号GND。
(2)而单片机串口与此相反,2脚TX、3脚RX、5脚信号GND。
(3)只要把这三根线依次连接,2-2、3-3、5-5即可完成通信。
(4)同时,根据实际通信设备接口不同,串口线也分多种,如直连线、交叉线、公母头区别等。
故障排除流程:
(1)用万用表等测量MAX232的14脚T1OUT与开发板串行接口的2脚TX、MAX232的13脚R1IN与开发板串行接口的3脚RX、开发板串行接口的5脚与电源地是不是分别连接。如果连接没问题,则进行下一步。
(2)用万用表等测量串口线,PC端的2脚与单片机端的2脚、PC端的3脚与单片机端的3脚、PC端的5脚与单片机端的5脚是不是分别对应,如果对应连接没问题,则进行下一步。
(3)将PC上串行接口的2、3引脚短接。
(4)打开串口工具如“超级串口”等,下载地址http://www.powerserial.com/download/,打开串口,在输入框中随便输入几个字符,看是不是能在接收窗口中收到。
(5)如果收不到,则说明PC的串口问题(排除串口工具没有开错串口或短接没问题的情况下),换台电脑试下。能收到,则说明电脑端收发都没问题,进行下一步。
(6)将串口线插到电脑上,开发板端的插头不插而直接将2、3脚短接。再次用串口工具发送,看是否能接收到,如果能接收到,则证明串口线没问题,进行下一步。
(7)将串口线插到开发板得串行接口上,再使用串口工具收发。
(8)如果以上都不行,则自己做3根线,也可以使用杜邦线,将PC的TX与开发板的RX、PC的RX与开发板的TX、PC的信号地与开发板的地分别相连。再用串口工具收发测试。
通过以上步骤,则可以逐步排查到问题的具体原因。不过,根据问题及之后的描述,最大的可能性是串口线用的不对,导致PC串口与开发板串口的3根线没有分别对应上。
㈣ SCON=0x52;具体是什么意思!
楼主,你好。SCON是单片机的串行口控制寄存器,可直接寻址的宏变量。楼主想问的是0x52给它是什么意思?0x52代表的二进制为:01100010,各位代表的意思为:(高位在前,地位在后)SM0、SM1:串行口工作方式选择位
SM2:多机通信控制位
REN:允许/禁止串行口接收的控制位
TB8:在方式2和方式3中,是被发送的第9位数据,可根据需要由软件置1或清零,也可以作为奇偶校验位,在方式1中是停止位。
RB8:在方式2和方式3中,是被接收的第9位数据(来自第TB8位);在方式1中,RB8收到的是停止位,在方式0中不用。
TI——串行口发送中断请求标志位
当发送完一帧串行数据后,由硬件置1;在转向中断服务程序后,用软件清0。
RI——串行口接收中断请求标志位
㈤ 单片机中特殊功能寄存器的定义与初始化的区别
这两者的区别大了呀。。。
SCON寄存器在单片机中的地址是0x98...
sfr
SCON=ox98,是一个特殊寄存器的定义,也就是告诉你SCON的地址是0x98.当然这个是你目前不用考虑的。因为头文件(reg52.H等,就是在编写程序开头写的那个)都已经写好了。可以打开keil->c51->ASM->reg52.INC查看。。里面都是寄存器的定义。
SCON=0x52。。首先SCON寄存器的标志位有:
SM0,SM1,SM2,REN,TB8,RB8,TI,RI.
SCON=0X52,其实就是定好标志位的值。相当于:
SM0=0;
SM1=1;
SM2=1;
REN=0;
TB8=0;
RB8=0;
TI=1;
RI=0;
也可以写成上述形式,因为SCON地址可以被8整除(凡是地址可以被8整除的都可以位寻址),可以位寻址(即可以一个个位的赋值)
希望采纳,如有不懂,可以HI我。。。