⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 psocgpioint.inc

📁 Button 一个国外大学生毕业设计,用的是AVR单片机
💻 INC
📖 第 1 页 / 共 2 页
字号:
; nc address and mask equates
nc_Data_ADDR:	equ	0h
nc_DriveMode_0_ADDR:	equ	100h
nc_DriveMode_1_ADDR:	equ	101h
nc_DriveMode_2_ADDR:	equ	3h
nc_GlobalSelect_ADDR:	equ	2h
nc_IntCtrl_0_ADDR:	equ	102h
nc_IntCtrl_1_ADDR:	equ	103h
nc_IntEn_ADDR:	equ	1h
nc_MASK:	equ	1h
nc_MUXBusCtrl_ADDR:	equ	1d8h
; Button 6 address and mask equates
Button 6_Data_ADDR:	equ	4h
Button 6_DriveMode_0_ADDR:	equ	104h
Button 6_DriveMode_1_ADDR:	equ	105h
Button 6_DriveMode_2_ADDR:	equ	7h
Button 6_GlobalSelect_ADDR:	equ	6h
Button 6_IntCtrl_0_ADDR:	equ	106h
Button 6_IntCtrl_1_ADDR:	equ	107h
Button 6_IntEn_ADDR:	equ	5h
Button 6_MASK:	equ	8h
Button 6_MUXBusCtrl_ADDR:	equ	1d9h
; Button 6_Data access macros
;   GetButton 6_Data macro, return in a
macro GetButton 6_Data
	mov		a,[Port_1_Data_SHADE]
	and		a, 8h
endm
;   SetButton 6_Data macro
macro SetButton 6_Data
	or		[Port_1_Data_SHADE], 8h
	mov		reg[Port_1_Data], [Port_1_Data_SHADE]
endm
;   SetButton 6_Data macro
macro ClearButton 6_Data
	and		[Port_1_Data_SHADE], ~8h
	mov		reg[Port_1_Data], [Port_1_Data_SHADE]
endm

; Button 0 address and mask equates
Button 0_Data_ADDR:	equ	4h
Button 0_DriveMode_0_ADDR:	equ	104h
Button 0_DriveMode_1_ADDR:	equ	105h
Button 0_DriveMode_2_ADDR:	equ	7h
Button 0_GlobalSelect_ADDR:	equ	6h
Button 0_IntCtrl_0_ADDR:	equ	106h
Button 0_IntCtrl_1_ADDR:	equ	107h
Button 0_IntEn_ADDR:	equ	5h
Button 0_MASK:	equ	10h
Button 0_MUXBusCtrl_ADDR:	equ	1d9h
; Button 0_Data access macros
;   GetButton 0_Data macro, return in a
macro GetButton 0_Data
	mov		a,[Port_1_Data_SHADE]
	and		a, 10h
endm
;   SetButton 0_Data macro
macro SetButton 0_Data
	or		[Port_1_Data_SHADE], 10h
	mov		reg[Port_1_Data], [Port_1_Data_SHADE]
endm
;   SetButton 0_Data macro
macro ClearButton 0_Data
	and		[Port_1_Data_SHADE], ~10h
	mov		reg[Port_1_Data], [Port_1_Data_SHADE]
endm

; Button 1 address and mask equates
Button 1_Data_ADDR:	equ	4h
Button 1_DriveMode_0_ADDR:	equ	104h
Button 1_DriveMode_1_ADDR:	equ	105h
Button 1_DriveMode_2_ADDR:	equ	7h
Button 1_GlobalSelect_ADDR:	equ	6h
Button 1_IntCtrl_0_ADDR:	equ	106h
Button 1_IntCtrl_1_ADDR:	equ	107h
Button 1_IntEn_ADDR:	equ	5h
Button 1_MASK:	equ	40h
Button 1_MUXBusCtrl_ADDR:	equ	1d9h
; Button 1_Data access macros
;   GetButton 1_Data macro, return in a
macro GetButton 1_Data
	mov		a,[Port_1_Data_SHADE]
	and		a, 40h
endm
;   SetButton 1_Data macro
macro SetButton 1_Data
	or		[Port_1_Data_SHADE], 40h
	mov		reg[Port_1_Data], [Port_1_Data_SHADE]
endm
;   SetButton 1_Data macro
macro ClearButton 1_Data
	and		[Port_1_Data_SHADE], ~40h
	mov		reg[Port_1_Data], [Port_1_Data_SHADE]
endm

; LCD_1D4 address and mask equates
LCD_1D4_Data_ADDR:	equ	8h
LCD_1D4_DriveMode_0_ADDR:	equ	108h
LCD_1D4_DriveMode_1_ADDR:	equ	109h
LCD_1D4_DriveMode_2_ADDR:	equ	bh
LCD_1D4_GlobalSelect_ADDR:	equ	ah
LCD_1D4_IntCtrl_0_ADDR:	equ	10ah
LCD_1D4_IntCtrl_1_ADDR:	equ	10bh
LCD_1D4_IntEn_ADDR:	equ	9h
LCD_1D4_MASK:	equ	1h
LCD_1D4_MUXBusCtrl_ADDR:	equ	1dah
; LCD_1D4_Data access macros
;   GetLCD_1D4_Data macro, return in a
macro GetLCD_1D4_Data
	mov		a,[Port_2_Data_SHADE]
	and		a, 1h
endm
;   SetLCD_1D4_Data macro
macro SetLCD_1D4_Data
	or		[Port_2_Data_SHADE], 1h
	mov		reg[Port_2_Data], [Port_2_Data_SHADE]
endm
;   SetLCD_1D4_Data macro
macro ClearLCD_1D4_Data
	and		[Port_2_Data_SHADE], ~1h
	mov		reg[Port_2_Data], [Port_2_Data_SHADE]
endm

; LCD_1D4_DriveMode_0 access macros
;   GetLCD_1D4_DriveMode_0 macro, return in a
macro GetLCD_1D4_DriveMode_0
	mov		a,[Port_2_DriveMode_0_SHADE]
	and		a, 1h
endm
;   SetLCD_1D4_DriveMode_0 macro
macro SetLCD_1D4_DriveMode_0
	or		[Port_2_DriveMode_0_SHADE], 1h
	mov		reg[Port_2_DriveMode_0], [Port_2_DriveMode_0_SHADE]
endm
;   SetLCD_1D4_DriveMode_0 macro
macro ClearLCD_1D4_DriveMode_0
	and		[Port_2_DriveMode_0_SHADE], ~1h
	mov		reg[Port_2_DriveMode_0], [Port_2_DriveMode_0_SHADE]
endm

; LCD_1D4_DriveMode_1 access macros
;   GetLCD_1D4_DriveMode_1 macro, return in a
macro GetLCD_1D4_DriveMode_1
	mov		a,[Port_2_DriveMode_1_SHADE]
	and		a, 1h
endm
;   SetLCD_1D4_DriveMode_1 macro
macro SetLCD_1D4_DriveMode_1
	or		[Port_2_DriveMode_1_SHADE], 1h
	mov		reg[Port_2_DriveMode_1], [Port_2_DriveMode_1_SHADE]
endm
;   SetLCD_1D4_DriveMode_1 macro
macro ClearLCD_1D4_DriveMode_1
	and		[Port_2_DriveMode_1_SHADE], ~1h
	mov		reg[Port_2_DriveMode_1], [Port_2_DriveMode_1_SHADE]
endm

; LCD_1D5 address and mask equates
LCD_1D5_Data_ADDR:	equ	8h
LCD_1D5_DriveMode_0_ADDR:	equ	108h
LCD_1D5_DriveMode_1_ADDR:	equ	109h
LCD_1D5_DriveMode_2_ADDR:	equ	bh
LCD_1D5_GlobalSelect_ADDR:	equ	ah
LCD_1D5_IntCtrl_0_ADDR:	equ	10ah
LCD_1D5_IntCtrl_1_ADDR:	equ	10bh
LCD_1D5_IntEn_ADDR:	equ	9h
LCD_1D5_MASK:	equ	2h
LCD_1D5_MUXBusCtrl_ADDR:	equ	1dah
; LCD_1D5_Data access macros
;   GetLCD_1D5_Data macro, return in a
macro GetLCD_1D5_Data
	mov		a,[Port_2_Data_SHADE]
	and		a, 2h
endm
;   SetLCD_1D5_Data macro
macro SetLCD_1D5_Data
	or		[Port_2_Data_SHADE], 2h
	mov		reg[Port_2_Data], [Port_2_Data_SHADE]
endm
;   SetLCD_1D5_Data macro
macro ClearLCD_1D5_Data
	and		[Port_2_Data_SHADE], ~2h
	mov		reg[Port_2_Data], [Port_2_Data_SHADE]
endm

; LCD_1D5_DriveMode_0 access macros
;   GetLCD_1D5_DriveMode_0 macro, return in a
macro GetLCD_1D5_DriveMode_0
	mov		a,[Port_2_DriveMode_0_SHADE]
	and		a, 2h
endm
;   SetLCD_1D5_DriveMode_0 macro
macro SetLCD_1D5_DriveMode_0
	or		[Port_2_DriveMode_0_SHADE], 2h
	mov		reg[Port_2_DriveMode_0], [Port_2_DriveMode_0_SHADE]
endm
;   SetLCD_1D5_DriveMode_0 macro
macro ClearLCD_1D5_DriveMode_0
	and		[Port_2_DriveMode_0_SHADE], ~2h
	mov		reg[Port_2_DriveMode_0], [Port_2_DriveMode_0_SHADE]
endm

; LCD_1D5_DriveMode_1 access macros
;   GetLCD_1D5_DriveMode_1 macro, return in a
macro GetLCD_1D5_DriveMode_1
	mov		a,[Port_2_DriveMode_1_SHADE]
	and		a, 2h
endm
;   SetLCD_1D5_DriveMode_1 macro
macro SetLCD_1D5_DriveMode_1
	or		[Port_2_DriveMode_1_SHADE], 2h
	mov		reg[Port_2_DriveMode_1], [Port_2_DriveMode_1_SHADE]
endm
;   SetLCD_1D5_DriveMode_1 macro
macro ClearLCD_1D5_DriveMode_1
	and		[Port_2_DriveMode_1_SHADE], ~2h
	mov		reg[Port_2_DriveMode_1], [Port_2_DriveMode_1_SHADE]
endm

; LCD_1D6 address and mask equates
LCD_1D6_Data_ADDR:	equ	8h
LCD_1D6_DriveMode_0_ADDR:	equ	108h
LCD_1D6_DriveMode_1_ADDR:	equ	109h
LCD_1D6_DriveMode_2_ADDR:	equ	bh
LCD_1D6_GlobalSelect_ADDR:	equ	ah
LCD_1D6_IntCtrl_0_ADDR:	equ	10ah
LCD_1D6_IntCtrl_1_ADDR:	equ	10bh
LCD_1D6_IntEn_ADDR:	equ	9h
LCD_1D6_MASK:	equ	4h
LCD_1D6_MUXBusCtrl_ADDR:	equ	1dah
; LCD_1D6_Data access macros
;   GetLCD_1D6_Data macro, return in a
macro GetLCD_1D6_Data
	mov		a,[Port_2_Data_SHADE]
	and		a, 4h
endm
;   SetLCD_1D6_Data macro
macro SetLCD_1D6_Data
	or		[Port_2_Data_SHADE], 4h
	mov		reg[Port_2_Data], [Port_2_Data_SHADE]
endm
;   SetLCD_1D6_Data macro
macro ClearLCD_1D6_Data
	and		[Port_2_Data_SHADE], ~4h
	mov		reg[Port_2_Data], [Port_2_Data_SHADE]
endm

; LCD_1D6_DriveMode_0 access macros
;   GetLCD_1D6_DriveMode_0 macro, return in a
macro GetLCD_1D6_DriveMode_0
	mov		a,[Port_2_DriveMode_0_SHADE]
	and		a, 4h
endm
;   SetLCD_1D6_DriveMode_0 macro
macro SetLCD_1D6_DriveMode_0
	or		[Port_2_DriveMode_0_SHADE], 4h
	mov		reg[Port_2_DriveMode_0], [Port_2_DriveMode_0_SHADE]
endm
;   SetLCD_1D6_DriveMode_0 macro
macro ClearLCD_1D6_DriveMode_0
	and		[Port_2_DriveMode_0_SHADE], ~4h
	mov		reg[Port_2_DriveMode_0], [Port_2_DriveMode_0_SHADE]
endm

; LCD_1D6_DriveMode_1 access macros
;   GetLCD_1D6_DriveMode_1 macro, return in a
macro GetLCD_1D6_DriveMode_1
	mov		a,[Port_2_DriveMode_1_SHADE]
	and		a, 4h
endm
;   SetLCD_1D6_DriveMode_1 macro
macro SetLCD_1D6_DriveMode_1
	or		[Port_2_DriveMode_1_SHADE], 4h
	mov		reg[Port_2_DriveMode_1], [Port_2_DriveMode_1_SHADE]
endm
;   SetLCD_1D6_DriveMode_1 macro
macro ClearLCD_1D6_DriveMode_1
	and		[Port_2_DriveMode_1_SHADE], ~4h
	mov		reg[Port_2_DriveMode_1], [Port_2_DriveMode_1_SHADE]
endm

; LCD_1D7 address and mask equates
LCD_1D7_Data_ADDR:	equ	8h
LCD_1D7_DriveMode_0_ADDR:	equ	108h
LCD_1D7_DriveMode_1_ADDR:	equ	109h
LCD_1D7_DriveMode_2_ADDR:	equ	bh
LCD_1D7_GlobalSelect_ADDR:	equ	ah
LCD_1D7_IntCtrl_0_ADDR:	equ	10ah
LCD_1D7_IntCtrl_1_ADDR:	equ	10bh
LCD_1D7_IntEn_ADDR:	equ	9h
LCD_1D7_MASK:	equ	8h
LCD_1D7_MUXBusCtrl_ADDR:	equ	1dah
; LCD_1D7_Data access macros
;   GetLCD_1D7_Data macro, return in a
macro GetLCD_1D7_Data
	mov		a,[Port_2_Data_SHADE]
	and		a, 8h
endm
;   SetLCD_1D7_Data macro
macro SetLCD_1D7_Data
	or		[Port_2_Data_SHADE], 8h
	mov		reg[Port_2_Data], [Port_2_Data_SHADE]
endm
;   SetLCD_1D7_Data macro
macro ClearLCD_1D7_Data
	and		[Port_2_Data_SHADE], ~8h
	mov		reg[Port_2_Data], [Port_2_Data_SHADE]
endm

; LCD_1D7_DriveMode_0 access macros
;   GetLCD_1D7_DriveMode_0 macro, return in a
macro GetLCD_1D7_DriveMode_0
	mov		a,[Port_2_DriveMode_0_SHADE]
	and		a, 8h
endm
;   SetLCD_1D7_DriveMode_0 macro
macro SetLCD_1D7_DriveMode_0
	or		[Port_2_DriveMode_0_SHADE], 8h
	mov		reg[Port_2_DriveMode_0], [Port_2_DriveMode_0_SHADE]
endm
;   SetLCD_1D7_DriveMode_0 macro

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -