C8051F与80C51系列单片机的初始化比较

时间:2012-07-07来源:网络

DJNZ R4,NNOP1

MOV CLKSEL,#00000010B ;系统时钟源用晶振再经锁相环PLL二倍频,产生50MHz的时钟

ANL OSCICN,#01111111B ?;允许外部振荡,禁止内部振荡

MOV XBR2;#01000000B ;使能交叉译码开关(这条指令很重要)

MOV P2MDOUT,#11111111B ;P2口置成输出方式

MOV P3MDOUT,#11111111B ;P0口置成输出方式(复位默认为0__开漏)

MOV XBR1,#0000100B ;允许外中断0连到端口

MOV SFRPAGE, #0H ;取特殊功能寄存器的0页(因为有关定时器、中断的SFR在0页)

SETB EX0 ;允许外中断0

SETB IT0 ;INT0下降沿中断

MOV TMOD,#21h ;设置定时器0为方式1, 定时器1为方式2

MOV CKCON,#08h ;选定时器0时钟为系统时钟,定时器1时钟为系统时钟除以12

MOV TH1,#242 ;(50/12)MHz的时钟产生9600波特率的计数初值为242

SETB TR0 ;接通定时0

SETB TR1 ;接通定时1

CLR ET1 ;禁止定时器1中断

MOV SCON,#50H ;串口工作于方式1,允许接收,单机工作

SETB ET0 ;允许T0中断

SETB PT0 ;T0的中断优先级高

SETB EA ;开中断

MOV SP,#30H ;栈底在30H单元

MAIN: . ;以上是程序的初始化

. ;主程序

JMP MAIN

?****** 定时中断子程序 *******

TIME_0:PUSH ACC

MOV TH0,#0H

MOV TL0,#0H

CPL P2.2 ;在P2口的D2脚输出方波

POP ACC

RETI

?******* 外中断子程序 *******

EX INT?PUSH ACC

MOV A,P1 ;从P1口取一字节

CPL A

MOV P3,A ;送出一字节

POP ACC

RET

1 2 3

关键词: 初始 比较 单片机 系列 80C51 C8051F

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版