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

📄 avr8100bluetooth.asm

📁 通过篮牙将手机号码显示在IPOD机器上
💻 ASM
📖 第 1 页 / 共 3 页
字号:
;==================================================================================================
EEPROM_WRITE:
	cli
	sbic	eecr,eewe
	rjmp	EEPROM_WRITE
	ldi	r16,0x00
	out	eearh,r16
	ldi	r16,0x00
	out	eearl,r16
	lds	r16,i2cda_h
	out	eedr,r16
	sbi	eecr,eemwe
	sbi	eecr,eewe
EEPROM_WRITE_1:
	sbic	eecr,eewe
	rjmp	EEPROM_WRITE_1
	ldi	r16,0x00
	out	eearh,r16
	ldi	r16,0x01
	out	eearl,r16
	lds	r16,i2cda_l
	out	eedr,r16
	sbi	eecr,eemwe
	sbi	eecr,eewe
	;SEI
	ret
;---------------------------------------------------	
EEPROM_read:
	cli
	sbic	eecr,eewe
	rjmp	EEPROM_read
	ldi	r16,0x00
	out	eearh,r16
	ldi	r16,0x00
	out	eearl,r16
	sbi	eecr,eere
	in	r16,eedr
	sts	i2cda_h,r16
EEPROM_read_1:
	sbic	eecr,eewe
	rjmp	EEPROM_read_1
	ldi	r16,0x00
	out	eearh,r16
	ldi	r16,0x01
	out	eearl,r16
	sbi	eecr,eere
	in	r16,eedr
	sts	i2cda_l,r16
	;SEI
	ret
;-----------------------------------------------------------

;==================================================================================================
; ;(17)  标号: HB2   功能:双字节十六进制整数转换成双字节BCD码整数
;
;;入口条件:待转换的双字节十六进制整数在R16、R17中。
;;出口信息:转换后的三字节BCD码整数在r16,r17,r18,r19,r20中。
;;影响资源:PSW、A、R2~R7    堆栈需求:  2字节
;使用 R16,R17,r18,r19,r20
hextobcd:
	lds	r17,i2cda_h
	lds	r16,i2cda_l
	ser	r20
hextobcd_1:
	;inc	r20
	;subi	r16,low(10000)
	;sbci	r17,high(10000)
	;brcc	hextobcd_1
	;subi	r16,low(-10000)
	;sbci	r17,high(-10000)
	ser	r19
hextobcd_2:
	inc	r19
	subi	r16,low(1000)
	sbci	r17,high(1000)
	brcc	hextobcd_2
	subi	r16,low(-1000)
	sbci	r17,high(-1000)	
	ser	r18
hextobcd_3:
	inc	r18
	subi	r16,low(100)
	sbci	r17,high(100)
	brcc	hextobcd_3
	subi	r16,low(-100)
	sbci	r17,high(-100)	
	ser	r17
hextobcd_4:
	inc	r17
	subi	r16,10
	brcc	hextobcd_4
	subi	r16,(-10)
	sts	bcdda1000,r19
	sts	bcdda100,r18
	sts	bcdda10,r17
	sts	bcdda1,r16
	ret
	
;========================================
;*********************************************************************	INITIALIZE

;****************************************************************************
INITIALIZE: 
  			CLI
 			CLR		R0
  			out		MCUCSR,R0			;LOW LEVEL INI
  			out		sfior,r0
  		;	ldi		r16,(1<<int0)			;INT0 INI
  		;	out		GICR,R16
  					 		;INITIALIZE
Init_Reg:   						;INITIALIZE RESISTER
 
		
Init_IO:                 				;INITIAL I/O
			SBI		PORTB,1	;增强,减弱
			SBI		PORTb,BTPIO		;phonejt
  			SBI		PORTc,upkey         ; upkey		
  			SBI		PORTc,downkey		;downkey
 ;----------------------------------------------------------------------------
  			SBI		PORTD,POWERCL
  			sbi		portd,rem
  			sbi		portd,5
  			sbi		portd,6
  			sbi		portd,7
  			SBI		PORTD,0	;SET PORTD0 TO INPUT, PULL-HIGH(RXD)
  			SBI		PORTD,1			 	;SET PORTD1 TO OUTPUT,PULL-HIGH(TXD)
;----------------------------------------------------------------  INPUT
  			cbi		ddrb,BTPIO
  			cbi		ddrc,upkey 						
  			cbi		ddrc,downkey 
			cbi		ddrd,rem
;-------------------------------------------------------------  OUTPUT
			SBI		DDRD,POWERCL
			sbi		ddrd,5
			sbi		ddrd,6
			sbi		ddrd,7
			cbi		ddrd,0
  			SBI 	DDRD,1
  
Init_Uart:
  			LDI		R16,$07	
  			OUT		UBRRL,R16		 	;SET BAUD-RATE 57600, USING CRYSTAL 7.3728MHZ
  
  			LDI		R16,(1<<URSEL)|(3<<UCSZ0)  ;SET 8-N-1 PROTOCOL
  			OUT		UCSRC,R16

  			LDI		R16,(1<<RXEN)|(1<<TXEN)
  			OUT		UCSRB,R16	     ;RX, TX ENABLE
  			;ldi		r16,0
  			;mov		r10,r16			; clr status
			RCALL		DELAY1s
  			ret
;**************************************************************************  tab	 
;----------------------------------------------------------------------
exitexmodeltab:	;    exit remote mode
        .dw      0xff55,0x0200,0x06f8,0x8888;    
;-----------------------------------------------------------------------------------
playresumetab:
.dw	0xFFff, 0x5504, 0x0200, 0x0001, 0xF999
.dw	0xFF55, 0x0602, 0x0000, 0x0000, 0x00F8,0x8888 
pausetab:
.dw	0xFFff, 0x5504, 0x0200, 0x0002, 0xF899
.dw	0xFFff, 0x5504, 0x0200, 0x0002, 0xF899
.dw	0xFF55, 0x0602, 0x0000, 0x0000, 0x00F8,0x8888 
	
;------------------------------------------------------------------------------
exttab:
.dw	0xFF55, 0x0600, 0x0105, 0x0002, 0x01F1,0x9999 
.dw	0xFF55, 0x0302, 0x0001, 0xFA99 
.dw	0xFF55, 0x0602, 0x0000, 0x0000, 0x00F8,0x9999 
.dw	0xFF55, 0x0600, 0x0105, 0x0002, 0x01F1,0x9999 
.dw	0xFF55, 0x0302, 0x0001, 0xFA99 
.dw	0xFF55, 0x0602, 0x0000, 0x0000, 0x00F8,0x9999 
.dw	0xFF55, 0x0402, 0x0000, 0x01F9,0x9999 
.dw	0xFF55, 0x0602, 0x0000, 0x0000, 0x00F8,0x9999 
.dw	0xFF55, 0x0E00, 0x1300, 0x0000, 0x3500,0x0000,0x0400,0x0000, 0x00A6,0x99ff
.dw	0xFF55, 0x0200, 0x05F9,0x99ff
.dw	0xFF55, 0x0302, 0x0001, 0xFA99 
.dw	0xFF55, 0x0602, 0x0000, 0x0000,0x00F8,0x99ff 
.dw	0xFF55, 0x0402, 0x0000, 0x01F9,0x99ff 
.dw	0xFF55, 0x0602, 0x0000, 0x0000, 0x00F8,0x8888 

exttab1:
.dw	0xFF55, 0x0200, 0x05F9,0x9999 
.dw	0xFF55, 0x0302, 0x0001, 0xFA99
.dw	0xFF55, 0x0602, 0x0000, 0x0000, 0x00F8,0x99ff 
.dw	0xFF55, 0x0402, 0x0000, 0x01F9,0x99ff
.dw	0xFF55, 0x0602, 0x0000, 0x0000, 0x00F8,0x8888 

;-----------------------------------------------------------------
phonelinktab:

.dw	0xFF55, 0x0200, 0x05F9,0x9988
;--------------------------------------------------------------------------------------------------------------

Instruction_SetDisplay_Descriptor:
   .DW $FFFF,$5500,$012e,$0400,$3200,$0001,$0060,$0018,$0000,$0018
  
displayphonefirsttab:
.DW	$FFFF,$5500,$018e,$0400,$3200, $0001,$0080,$0030,$0000,$0020
  
displayphonesecondtab: 
  
.dw	0xFF55,0x0001,0x8504,0x0032,0x0001 
 
displayphonethirdtab:

.dw	0xFF55,0x0001,0x8504,0x0032,0x0002
 
displayphonefourtab:

.dw	0xFF55,0x0001,0x8504,0x0032,0x0003


figurtab:
.dw	0xFF55,	 0x0001,0x2504, 0x0032, 0x0001
  
FONT_TAB:
 .DW FONT_0,FONT_1,FONT_2,FONT_3,FONT_4,FONT_5,FONT_6,FONT_7,FONT_8,FONT_9
;;-------------------------------------------------------------------------------------------
FONT_0: 
.dw	0x03FF,0xFC00
.dw	0x0FFF,0xFF00
.dw	0x3FFF,0xFFC0
.dw	0x3FC0,0x3FC0
.dw	0xFF00,0x0FF0
.dw	0xFF00,0x0FF0
.dw	0xFF00,0x03F0
.dw	0xFC00,0x03F0
.dw	0xFC00,0x03F0
.dw	0xFC00,0x03F0
.dw	0xFC00,0x03F0
.dw	0xFC00,0x03F0
.dw	0xFC00,0x03F0
.dw	0xFC00,0x03F0
.dw	0xFC00,0x03F0
.dw	0xFF00,0x03F0
.dw	0xFF00,0x0FF0
.dw	0xFF00,0x0FF0
.dw	0x3FC0,0x3FC0
.dw	0x3FFF,0xFFC0
.dw	0x0FFF,0xFF00
.dw	0x03FF,0xFC00
.dw	0x0000,0x0000
.dw	0x0000,0x0000

FONT_1:
.dw	0x000F,0xC000
.dw	0x003F,0xC000
.dw	0x00FF,0xC000
.dw	0x03FF,0xC000
.dw	0x3FFF,0xC000
.dw	0xFFFF,0xC000
.dw	0xFF3F,0xC000
.dw	0xF03F,0xC000
.dw	0x003F,0xC000
.dw	0x003F,0xC000
.dw	0x003F,0xC000
.dw	0x003F,0xC000
.dw	0x003F,0xC000
.dw	0x003F,0xC000
.dw	0x003F,0xC000
.dw	0x003F,0xC000
.dw	0x003F,0xC000
.dw	0x003F,0xC000
.dw	0x003F,0xC000
.dw	0x003F,0xC000
.dw	0x003F,0xC000
.dw	0x003F,0xC000
.dw	0x0000,0x0000
.dw	0x0000,0x0000

FONT_2:
.dw  0x00FF,0xFF00
.dw	0x0FFF,0xFFC0
.dw	0x3FFF,0xFFF0
.dw	0x3FC0,0x0FFC
.dw	0xFF00,0x03FC
.dw	0xFF00,0x03FC
.dw	0xFF00,0x03FC
.dw	0x0000,0x03FC
.dw	0x0000,0x03FC
.dw	0x0000,0x0FF0
.dw	0x0000,0x3FF0
.dw	0x0000,0xFFC0
.dw	0x0003,0xFF00
.dw	0x000F,0xFC00
.dw	0x00FF,0xF000
.dw	0x03FF,0x0000
.dw	0x0FFC,0x0000
.dw	0x3FF0,0x0000
.dw	0x3FC0,0x0000
.dw	0xFFFF,0xFFFC
.dw	0xFFFF,0xFFFC
.dw	0xFFFF,0xFFFC
.dw	0x0000,0x0000
.dw	0x0000,0x0000

 
 
 
 
FONT_3:
.dw	0x03FF,0xFC00
.dw	0x0FFF,0xFF00
.dw	0x3FFF,0xFFC0
.dw	0xFF00,0x3FC0
.dw	0xFF00,0x0FC0
.dw	0xFF00,0x0FF0
.dw	0x0C00,0x0FC0
.dw	0x0000,0x3FC0
.dw	0x0003,0xFFC0
.dw	0x003F,0xFF00
.dw	0x003F,0xFF00
.dw	0x003F,0xFFC0
.dw	0x0000,0x0FF0
.dw	0x0000,0x0FF0
.dw	0x0000,0x03FC
.dw	0xFC00,0x03FC
.dw	0xFC00,0x03FC
.dw	0xFF00,0x0FF0
.dw	0xFF00,0x3FF0
.dw	0x3FFF,0xFFC0
.dw	0x0FFF,0xFF00
.dw	0x03FF,0xFC00
.dw	0x0000,0x0000
.dw	0x0000,0x0000

FONT_4:
.dw	0x0000,0x3FC0
.dw	0x0000,0x3FC0
.dw	0x0000,0xFFC0
.dw	0x0003,0xFFC0
.dw	0x000F,0xFFC0
.dw	0x000F,0xFFC0
.dw	0x003F,0xFFC0
.dw	0x00FF,0x3FC0
.dw	0x00FC,0x3FC0
.dw	0x03FC,0x3FC0
.dw	0x0FF0,0x3FC0
.dw	0x3FC0,0x3FC0
.dw	0x3F00,0x3FC0
.dw	0xFF00,0x3FC0
.dw	0xFFFF,0xFFFF
.dw	0xFFFF,0xFFFF
.dw	0xFFFF,0xFFFF
.dw	0x0000,0x3FC0
.dw	0x0000,0x3FC0
.dw	0x0000,0x3FC0
.dw	0x0000,0x3FC0
.dw	0x0000,0x3FC0
.dw	0x0000,0x0000
.dw	0x0000,0x0000

FONT_5:
.dw	0x0FFF,0xFFF0
.dw	0x0FFF,0xFFF0
.dw	0x0FFF,0xFFF0
.dw	0x3FC0,0x0000
.dw	0x3FC0,0x0000
.dw	0x3FC0,0x0000
.dw	0x3FC0,0x0000
.dw	0x3FFF,0xFC00
.dw	0x3FFF,0xFFC0
.dw	0xFFFF,0xFFF0
.dw	0xFFC0,0x3FF0
.dw	0xFF00,0x03FC
.dw	0x0000,0x03FC
.dw	0x0000,0x03FC
.dw	0x0000,0x03FC
.dw	0xFC00,0x03FC
.dw	0xFF00,0x03FC
.dw	0xFF00,0x03FC
.dw	0xFFC0,0x0FF0
.dw	0x3FFF,0xFFC0
.dw	0x0FFF,0xFF00
.dw	0x03FF,0xFC00
.dw	0x0003,0x0000
.dw	0x0000,0x0000

FONT_6:
.dw	0x00FF,0xFC00
.dw	0x03FF,0xFFC0
.dw	0x0FFF,0xFFC0
.dw	0x3FC0,0x0FF0
.dw	0x3F00,0x0FF0
.dw	0xFF00,0x03F0
.dw	0xFF00,0x0000
.dw	0xFC0F,0xF000
.dw	0xFCFF,0xFF00
.dw	0xFFFF,0xFFC0
.dw	0xFFFC,0xFFF0
.dw	0xFFC0,0x0FF0
.dw	0xFF00,0x03F0
.dw	0xFF00,0x03FC
.dw	0xFF00,0x03FC
.dw	0xFF00,0x03FC
.dw	0xFF00,0x03FC
.dw	0xFF00,0x0FF0
.dw	0x3FC0,0x0FF0
.dw	0x0FFF,0xFFC0
.dw	0x0FFF,0xFF00
.dw	0x00FF,0xFC00
.dw	0x0000,0x0000
.dw	0x0000,0x0000

FONT_7:
.dw	0xFFFF,0xFFFC
.dw	0xFFFF,0xFFFC
.dw	0xFFFF,0xFFFC
.dw	0x0000,0x0FF0
.dw	0x0000,0x3FC0
.dw	0x0000,0xFFC0
.dw	0x0000,0xFF00
.dw	0x0003,0xFC00
.dw	0x0003,0xFC00
.dw	0x000F,0xF000
.dw	0x000F,0xF000
.dw	0x003F,0xC000
.dw	0x003F,0xC000
.dw	0x00FF,0x0000
.dw	0x00FF,0x0000
.dw	0x00FF,0x0000
.dw	0x00FC,0x0000
.dw	0x03FC,0x0000
.dw	0x03FC,0x0000
.dw	0x03FC,0x0000
.dw	0x03FC,0x0000
.dw	0x03FC,0x0000
.dw	0x0000,0x0000
.dw	0x0000,0x0000

FONT_8:
.dw	0x03FF,0xFC00
.dw	0x0FFF,0xFF00
.dw	0x3FFF,0xFFC0
.dw	0x3FC0,0x3FC0
.dw	0xFF00,0x0FF0
.dw	0xFF00,0x0FF0
.dw	0xFF00,0x0FF0
.dw	0x3FC0,0x0FF0
.dw	0x3FFF,0xFFC0
.dw	0x0FFF,0xFF00
.dw	0x0FFF,0xFF00
.dw	0x3FFF,0xFFC0
.dw	0xFF00,0x0FF0
.dw	0xFF00,0x03F0
.dw	0xFC00,0x03FC
.dw	0xFC00,0x03FC
.dw	0xFC00,0x03FC
.dw	0xFF00,0x03F0
.dw	0xFF00,0x0FF0
.dw	0x3FFF,0xFFC0
.dw	0x0FFF,0xFF00
.dw	0x03FF,0xFC00
.dw	0x0000,0x0000
.dw	0x0000,0x0000

FONT_9:
.dw	0x03FF,0xF000
.dw	0x0FFF,0xFF00
.dw	0x3FFF,0xFFC0
.dw	0xFFC0,0x3FC0
.dw	0xFF00,0x0FF0
.dw	0xFC00,0x03F0
.dw	0xFC00,0x03F0
.dw	0xFC00,0x03FC
.dw	0xFC00,0x03FC
.dw	0xFF00,0x0FFC
.dw	0xFF00,0x0FFC
.dw	0x3FFF,0xFFFC
.dw	0x3FFF,0xFFFC
.dw	0x0FFF,0xF3FC
.dw	0x00FF,0x03F0
.dw	0x0000,0x03F0
.dw	0xFC00,0x0FF0
.dw	0xFF00,0x0FF0
.dw	0xFF00,0x3FC0
.dw	0x3FFF,0xFF00
.dw	0x0FFF,0xFF00
.dw	0x03FF,0xF000
.dw	0x0000,0x0000
.dw	0x0000,0x0000

FONT_DOT:
.dw	0x0000,0x0000
.dw	0x0000,0x0000
.dw	0x0000,0x0000
.dw	0x0000,0x0000
.dw	0x0000,0x0000
.dw	0x0000,0x0000
.dw	0x0000,0x0000
.dw	0x0000,0x0000
.dw	0x0000,0x0000
.dw	0x0000,0x0000
.dw	0x0000,0x0000
.dw	0x0000,0x0000
.dw	0x0000,0x0000
.dw	0x000F,0x0000
.dw	0x00FF,0xF000
.dw	0x00FF,0xF000
.dw	0x03FF,0xFC00
.dw	0x03FF,0xFC00
.dw	0x00FF,0xF000
.dw	0x00FF,0xF000
.dw	0x000F,0x0000
.dw	0x0000,0x0000
.dw	0x0000,0x0000
.dw	0x0000,0x0000

.EXIT

















⌨️ 快捷键说明

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