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

📄 hvwdefines.h

📁 Asuro 小车示例代码Remote controlled
💻 H
📖 第 1 页 / 共 2 页
字号:
#ifndef _HVW_DEFINES_H_
#define _HVW_DEFINES_H_ 1
/*
_BV(b) equals (1<<b), meaning, tranfer bitnumber to byte-with-bit-in-specified-byte-bit--position
Each byte is then transferred to the high part of an integer if it is a SET bit.
Each byte is then transferred to the low  part of an integer if it is a CLR bit.
Example:
	PUD				= 2
	_BV(PUD)	= 0x04
	PUD_L			= 0x0004	to be cleared
	PUD_H			= 0x0400	to be set
	The inline function will find the set-bits at NN position as 0xNN00
	The inline function will find the clr-bits at NN position as 0x00NN
*/	
//GICR
#define	INT1_L	(0x80<<8)
#define	INT1_H	(0x80)
#define	INT0_L	(0x40<<8)
#define	INT0_H	(0x40)
//TCCR2, 0x25
#define	FOC2_L	(0x80<<8)
#define	FOC2_H	(0x80)
#define	WGM20_L	(0x40<<8)
#define	WGM20_H	(0x40)
#define	COM21_L	(0x20<<8)
#define	COM21_H	(0x20)
#define	COM20_L	(0x10<<8)
#define	COM20_H	(0x10)
#define	WGM21_L	(0x08<<8)
#define	WGM21_H	(0x08)
#define	CS22_L	(0x04<<8)
#define	CS22_H	(0x04)
#define	CS21_L	(0x02<<8)
#define	CS21_H	(0x02)
#define	CS20_L	(0x01<<8)
#define	CS20_H	(0x01)
//TIMSK
#define	OCIE2_L		(0x80<<8)
#define	OCIE2_H		(0x80)
#define	TOIE2_L		(0x40<<8)
#define	TOIE2_H		(0x40)
#define	TICIE1_L	(0x20<<8)
#define	TICIE1_H	(0x20)
#define	OCIE1A_L	(0x10<<8)
#define	OCIE1A_H	(0x10)
#define	OCIE1B_L	(0x08<<8)
#define	OCIE1B_H	(0x08)
#define	TOIE1_L		(0x04<<8)
#define	TOIE1_H		(0x04)
#define	TOIE0_L		(0x01<<8)
#define	TOIE0_H		(0x01)
//SPMCR
#define	SPMIE_L		(8x00<<8)
#define	SPMIE_H		(8x00)
#define	RWWSB_L		(4x00<<8)
#define	RWWSB_H		(4x00)
#define	NONE5_L		(2x00<<8)
#define	NONE5_H		(2x00)
#define	RWWSRE_L	(1x00<<8)
#define	RWWSRE_H	(1x00)
#define	BLBSET_L	(0x08<<8)
#define	BLBSET_H	(0x08)
#define	PGWRT_L		(0x04<<8)
#define	PGWRT_H		(0x04)
#define	PGERS_L		(0x02<<8)
#define	PGERS_H		(0x02)
#define	SPMEM_L		(0x01<<8)
#define	SPMEM_H		(0x01)
//SFIOR
#define ACME_L		(0x08<<8)
#define ACME_H		(0x08)
#define PUD_L			(0x04<<8)
#define PUD_H			(0x04)
#define PSR2_L		(0x02<<8)
#define PSR2_H		(0x02)
#define PSR10_L		(0x01<<8)
#define PSR10_H		(0x01)
//SREG
#define GIE_L			(0x80<<8)
#define GIE_H			(0x80)
//ACSR
#define ACD_L			(0x80<<8)
#define ACD_H			(0x80)
#define ACBG_L		(0x40<<8)
#define ACBG_H		(0x40)
#define ACO_L			(0x20<<8)
#define ACO_H			(0x20)
#define ACI_L			(0x10<<8)
#define ACI_H			(0x10)
#define ACIE_L		(0x08<<8)
#define ACIE_H		(0x08)
#define ACIC_L		(0x04<<8)
#define ACIC_H		(0x04)
#define ACIS1_L		(0x02<<8)
#define ACIS1_H		(0x02)
#define ACIS0_L		(0x01<<8)
#define ACIS0_H		(0x01)
//ADMUX
#define REFS1_L		(0x80<<8)
#define REFS1_H		(0x80)
#define REFS0_L		(0x40<<8)
#define REFS0_H		(0x40)
#define ADLAR_L		(0x20<<8)
#define ADLAR_H		(0x20)
#define NONE4_L		(0x10<<8)
#define NONE4_H		(0x10)
#define MUX3_L		(0x08<<8)
#define MUX3_H		(0x08)
#define MUX2_L		(0x04<<8)
#define MUX2_H		(0x04)
#define MUX1_L		(0x02<<8)
#define MUX1_H		(0x02)
#define MUX0_L		(0x01<<8)
#define MUX0_H		(0x01)
//ADCSRA
#define ADEN_L		(0x80<<8)
#define ADEN_H		(0x80)
#define ADSC_L		(0x40<<8)
#define ADSC_H		(0x40)
#define ADFR_L		(0x20<<8)
#define ADFR_H		(0x20)
#define ADIF_L		(0x10<<8)
#define ADIF_H		(0x10)
#define ADIE_L		(0x08<<8)
#define ADIE_H		(0x08)
#define ADPS2_L		(0x04<<8)
#define ADPS2_H		(0x04)
#define ADPS1_L		(0x02<<8)
#define ADPS1_H		(0x02)
#define ADPS0_L		(0x01<<8)
#define ADPS0_H		(0x01)
//TCCR0
#define	CS02_L		(0x04<<8)
#define	CS02_H		(0x04)
#define	CS01_L		(0x02<<8)
#define	CS01_H		(0x02)
#define	CS00_L		(0x01<<8)
#define	CS00_H		(0x01)
//TCCR1A
#define	COM1A1_L	(0x80<<8)
#define	COM1A1_H	(0x80)
#define	COM1A0_L	(0x40<<8)
#define	COM1A0_H	(0x40)
#define	COM1B1_L	(0x20<<8)
#define	COM1B1_H	(0x20)
#define	COM1B0_L	(0x10<<8)
#define	COM1B0_H	(0x10)
#define	FOC1A_L		(0x08<<8)
#define	FOC1A_H		(0x08)
#define	FOC1B_L		(0x04<<8)
#define	FOC1B_H		(0x04)
#define	WGM11_L		(0x02<<8)
#define	WGM11_H		(0x02)
#define	WGM10_L		(0x01<<8)
#define	WGM10_H		(0x01)
//TCCR1B
#define	ICNC1_L		(0x80<<8)
#define	ICNC1_H		(0x80)
#define	ICES1_L		(0x40<<8)
#define	ICES1_H		(0x40)
#define	RSRVD5_L	(0x20<<8)
#define	RSRVD5_H	(0x20)
#define	WGM13_L		(0x10<<8)
#define	WGM13_H		(0x10)
#define	WGM12_L		(0x08<<8)
#define	WGM12_H		(0x08)
#define	CS12_L		(0x04<<8)
#define	CS12_H		(0x04)
#define	CS11_L		(0x02<<8)
#define	CS11_H		(0x02)
#define	CS10_L		(0x01<<8)
#define	CS10_H		(0x01)
//TCCR2
#define	FOC2_L		(0x80<<8)
#define	FOC2_H		(0x80)
#define	WGM20_L		(0x40<<8)
#define	WGM20_H		(0x40)
#define	COM21_L		(0x20<<8)
#define	COM21_H		(0x20)
#define	COM20_L		(0x10<<8)
#define	COM20_H		(0x10)
#define	WGM21_L		(0x08<<8)
#define	WGM21_H		(0x08)
#define	CS22_L		(0x04<<8)
#define	CS22_H		(0x04)
#define	CS21_L		(0x02<<8)
#define	CS21_H		(0x02)
#define	CS20_L		(0x01<<8)
#define	CS20_H		(0x01)
//UCSRA
#define	RXC_L     (0x80<<8)
#define	RXC_H     (0x80)
#define	TXC_L     (0x40<<8)
#define	TXC_H     (0x40)
#define	UDRE_L    (0x20<<8)
#define	UDRE_H    (0x20)
#define	FE_L      (0x10<<8)
#define	FE_H      (0x10)
#define	DOR_L     (0x08<<8)
#define	DOR_H     (0x08)
#define	PE_L      (0x04<<8)
#define	PE_H      (0x04)
#define	U2X_L     (0x02<<8)
#define	U2X_H     (0x02)
#define	MPCM_L    (0x01<<8)
#define	MPCM_H    (0x01)
//UCSRB
#define RXCIE_L   (0X80<<8)
#define RXCIE_H   (0X80)
#define TXCIE_L   (0X40<<8)
#define TXCIE_H   (0X40)
#define UDRIE_L   (0X20<<8)
#define UDRIE_H   (0X20)
#define RXEN_L    (0X10<<8)
#define RXEN_H    (0X10)
#define TXEN_L    (0X08<<8)
#define TXEN_H    (0X08)
#define UCSZ2_L   (0X04<<8)
#define UCSZ2_H   (0X04)
#define RXB8_L    (0X02<<8)
#define RXB8_H    (0X02)
#define TXB8_L    (0X01<<8)
#define TXB8_H    (0X01)
//UCSRC
#define URSEL_L   (0X80<<8)
#define URSEL_H   (0X80)
#define UMSEL_L   (0X40<<8)
#define UMSEL_H   (0X40)
#define UPM1_L    (0X20<<8)
#define UPM1_H    (0X20)
#define UPM0_L    (0X10<<8)
#define UPM0_H    (0X10)
#define USBS_L    (0X08<<8)
#define USBS_H    (0X08)
#define UCSZ1_L   (0X04<<8)
#define UCSZ1_H   (0X04)
#define UCSZ0_L   (0X02<<8)
#define UCSZ0_H   (0X02)
#define UCPOL_L   (0X01<<8)
#define UCPOL_H   (0X01)
//UBRRH
//#define URSEL_L   (0x80<<8)  allready defined with UCSRC
//#define URSEL_H   (0x80)     allready defined with UCSRC
#define UBRR11_L  (0x08<<8)
#define UBRR11_H  (0x08)
#define UBRR10_L  (0x04<<8)
#define UBRR10_H  (0x04)
#define UBRR09_L  (0x02<<8)
#define UBRR09_H  (0x02)
#define UBRR08_L  (0x01<<8)
#define UBRR08_H  (0x01)
//UBRRL
#define UBRR07_L  (0x80<<8)
#define UBRR07_H  (0x80)
#define UBRR06_L  (0x40<<8)
#define UBRR06_H  (0x40)
#define UBRR05_L  (0x20<<8)
#define UBRR05_H  (0x20)
#define UBRR04_L  (0x10<<8)
#define UBRR04_H  (0x10)
#define UBRR03_L  (0x08<<8)
#define UBRR03_H  (0x08)
#define UBRR02_L  (0x04<<8)
#define UBRR02_H  (0x04)
#define UBRR01_L  (0x02<<8)
#define UBRR01_H  (0x02)
#define UBRR00_L  (0x01<<8)
#define UBRR00_H  (0x01)
//TIFR
#define OCF2_L    (0x80<<8)
#define OCF2_H    (0x80)
#define TOV2_L    (0x40<<8)
#define TOV2_H    (0x40)
#define ICF1_L    (0x20<<8)
#define ICF1_H    (0x20)
#define OCF1A_L   (0x10<<8)
#define OCF1A_H   (0x10)
#define OCF1B_L   (0x08<<8)
#define OCF1B_H   (0x08)
#define TOV1_L    (0x04<<8)
#define TOV1_H    (0x04)
#define TIFRB1_L  (0x02<<8)
#define TIFRB1_H  (0x02)
#define TOV0_L    (0x01<<8)
#define TOV0_H    (0x01)


//PORTB
//+-------+-------+-------+-------+-------+-------+-------+-------+
//|  PB7  |  PB6  |  PB5  |  PB4  |  PB3  |  PB2  |  PB1  |  PB0  | Port name
//+-------+-------+-------+-------+-------+-------+-------+-------+
//|   7   |   6   |   5 	|   4   |   3   |    2  |    1  |   0   | bit number
//+-------+-------+-------+-------+-------+-------+-------+-------+
//|  10   |   9   |  19   |  18   |  17   |   16  |   15  |  14   | pin number
//+-------+-------+-------+-------+-------+-------+-------+-------+
//| XTAL2 | XTAL1 |REV_RGT|FWD_RGT|IR_TXD1|SPD_RGT|SPD_LFT|SLD_GRN| signal name
//+-------+-------+-------+-------+-------+-------+-------+-------+
#define	PB7_L			(0x80<<8)
#define	PB7_H			(0x80)
#define	PB6_L			(0x40<<8)
#define	PB6_H			(0x40)
#define	PB5_L			(0x20<<8)
#define	PB5_H			(0x20)
#define	PB4_L			(0x10<<8)
#define	PB4_H			(0x10)
#define	PB3_L			(0x08<<8)
#define	PB3_H			(0x08)
#define	PB2_L			(0x04<<8)
#define	PB2_H			(0x04)
#define	PB1_L			(0x02<<8)
#define	PB1_H			(0x02)
#define	PB0_L			(0x01<<8)
#define	PB0_H			(0x01)

#define PB7_I     PB7_L
#define PB7_O     PB7_H
#define PB6_I     PB6_L
#define PB6_O     PB6_H
#define PB5_I     PB5_L
#define PB5_O     PB5_H
#define PB4_I     PB4_L
#define PB4_O     PB4_H
#define PB3_I     PB3_L
#define PB3_O     PB3_H
#define PB2_I     PB2_L
#define PB2_O     PB2_H
#define PB1_I     PB1_L
#define PB1_O     PB1_H
#define PB0_I     PB0_L
#define PB0_O     PB0_H

#define FWD_RGT_L PB5_L	//forward is the wheel direction, not the engine direction
#define FWD_RGT_H PB5_H
#define REV_RGT_L PB4_L
#define REV_RGT_H PB4_H
#define IR_TXD1_L PB3_L
#define IR_TXD1_H PB3_H
#define SPD_RGT_L PB2_L
#define SPD_RGT_H PB2_H
#define SPD_LFT_L PB1_L
#define SPD_LFT_H PB1_H
#define SLD_GRN_L PB0_L
#define SLD_GRN_H PB0_H

#define FWD_RGT_I PB5_L
#define FWD_RGT_O PB5_H
#define REV_RGT_I PB4_L
#define REV_RGT_O PB4_H
#define IR_TXD1_I PB3_L
#define IR_TXD1_O PB3_H
#define SPD_RGT_I PB2_L
#define SPD_RGT_O PB2_H
#define SPD_LFT_I PB1_L
#define SPD_LFT_O PB1_H
#define SLD_GRN_I PB0_L
#define SLD_GRN_O PB0_H

⌨️ 快捷键说明

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