专注电子技术学习与研究
当前位置:单片机教程网 >> MCU设计实例 >> 浏览文章

SDBC的特殊寄存器(可位寻址的定义方法)

作者:佚名   来源:本站原创   点击数:  更新时间:2012年08月29日   【字体:
'AT89X52.BI
'用于52兼容MCU
'Const 变量和 Const 变量在编译的时候运算完
'By 万致远,sdbc 
'定义可位寻址的数据类型
Type SFR_BIT_A
	Dim SFR_BIT_A As sfr 
	'定义字节地址sfr,如果Type里有和Type名一样的变量,则编译器将把它当作默认变量
	'比如说这个type里面有SFR_BIT_A,那么外部给这个类定位地址,事实上是给这个变量定位地址
	'比如Dim P0 As SFR_BIT_A at &H80,那么P0=0就是相当于MOV #80H,0.
	'然后设计如果需要数字变量名,需要在前面加$,但是如果在类外/类型外引用,则不需要,with语句也需要
	'类似P0.0=1。With P0 .$0=1 End With一样
	'在type内的地址声明将在编译时被固定处理,类似声明P0在0x80,那么$0~$7固定为0x80~0x87
	Dim $0 As sbit at &SFR_BIT_A
	Dim $1 As sbit at &SFR_BIT_A+1
	Dim $2 As sbit at &SFR_BIT_A+2
	Dim $3 As sbit at &SFR_BIT_A+3
	Dim $4 As sbit at &SFR_BIT_A+4
	Dim $5 As sbit at &SFR_BIT_A+5
	Dim $6 As sbit at &SFR_BIT_A+6
	Dim $7 As sbit at &SFR_BIT_A+7
End Type

'IO口定义
Dim P0 As SFR_BIT_A at &H80'声明P0在0x80位置
Dim P1 As SFR_BIT_A at &H90'声明P1在0x90位置
Dim P2 As SFR_BIT_A at &HA0'声明P2在0xA0位置
Dim P3 As SFR_BIT_A at &HB0'声明P3在0xB0位置
'IO口定义结束
关闭窗口

相关文章