
1. 首先,将键盘翻转过来,把键帽从下方拆下来,揭开后将键帽和键轴分开,即可看到底部电路板上的按键。
2. 通过调整按键的位置和方向,来实现下排按键的设施。按键的位置和方向需要与电路板的布局相对应,以确保按键能够正常工作。
3. 拆下键帽后,可以在键轴上安装新的键帽,以实现更换按键的目的。键帽的形状和大小需要与键轴相匹配,以确保按键的灵敏度和舒适度。
需要注意的是,设施下排按键需要一定的技术和经验,如果您没有相关经验,建议寻求专业人士的帮助,以避免损坏键盘和电路板。同时,使用机械键盘时需要注意保养和清洁,避免灰尘和污垢影响键盘的使用寿命和性能。
[cpp] view plaincopyprint?/* ----------------------------------------------------------------------------
-- PORT
---------------------------------------------------------------------------- */
/**
* @addtogroup PORT_Peripheral PORT
* @{
*/
/** PORT - Peripheral register structure */
typedef struct PORT_MemMap {
uint32_t PCR[32] /**<Pin Control Register n, array offset: 0x0, array step: 0x4 */
uint32_t GPCLR /**<Global Pin Control Low Register, offset: 0x80 */
uint32_t GPCHR /**<Global Pin Control High Register, offset: 0x84 */
uint8_t RESERVED_0[24]
uint32_t ISFR /**<Interrupt Status Flag Register, offset: 0xA0 */
uint8_t RESERVED_1[28]
uint32_t DFER /**<Digital Filter Enable Register, offset: 0xC0 */
uint32_t DFCR /**<Digital Filter Clock Register, offset: 0xC4 */
uint32_t DFWR /**<Digital Filter Width Register, offset: 0xC8 */
} volatile *PORT_MemMapPtr
/* ----------------------------------------------------------------------------
-- PORT - Register accessor macros
---------------------------------------------------------------------------- */
/**
* @addtogroup PORT_Register_Accessor_Macros PORT - Register accessor macros
* @{
*/
/* PORT - Register accessors */
#define PORT_PCR_REG(base,index) ((base)->PCR[index])
#define PORT_GPCLR_REG(base) ((base)->GPCLR)
#define PORT_GPCHR_REG(base) ((base)->GPCHR)
#define PORT_ISFR_REG(base) ((base)->ISFR)
#define PORT_DFER_REG(base) ((base)->DFER)
#define PORT_DFCR_REG(base) ((base)->DFCR)
#define PORT_DFWR_REG(base) ((base)->DFWR)
/**
* @}
*/ /* end of group PORT_Register_Accessor_Macros */
/* ----------------------------------------------------------------------------
-- PORT Register Masks
---------------------------------------------------------------------------- */
/**
* @addtogroup PORT_Register_Masks PORT Register Masks
* @{
*/
/* PCR Bit Fields */
#define PORT_PCR_PS_MASK 0x1u
#define PORT_PCR_PS_SHIFT0
#define PORT_PCR_PE_MASK 0x2u
#define PORT_PCR_PE_SHIFT1
#define PORT_PCR_SRE_MASK0x4u
#define PORT_PCR_SRE_SHIFT 2
#define PORT_PCR_PFE_MASK0x10u
#define PORT_PCR_PFE_SHIFT 4
#define PORT_PCR_ODE_MASK0x20u
#define PORT_PCR_ODE_SHIFT 5
#define PORT_PCR_DSE_MASK0x40u
#define PORT_PCR_DSE_SHIFT 6
#define PORT_PCR_MUX_MASK0x700u
#define PORT_PCR_MUX_SHIFT 8
#define PORT_PCR_MUX(x) (((uint32_t)(((uint32_t)(x))<<PORT_PCR_MUX_SHIFT))&PORT_PCR_MUX_MASK)
#define PORT_PCR_LK_MASK 0x8000u
#define PORT_PCR_LK_SHIFT15
#define PORT_PCR_IRQC_MASK 0xF0000u
#define PORT_PCR_IRQC_SHIFT 16
#define PORT_PCR_IRQC(x) (((uint32_t)(((uint32_t)(x))<<PORT_PCR_IRQC_SHIFT))&PORT_PCR_IRQC_MASK)
#define PORT_PCR_ISF_MASK0x1000000u
#define PORT_PCR_ISF_SHIFT 24
/* GPCLR Bit Fields */
#define PORT_GPCLR_GPWD_MASK 0xFFFFu
#define PORT_GPCLR_GPWD_SHIFT0
#define PORT_GPCLR_GPWD(x) (((uint32_t)(((uint32_t)(x))<<PORT_GPCLR_GPWD_SHIFT))&PORT_GPCLR_GPWD_MASK)
#define PORT_GPCLR_GPWE_MASK 0xFFFF0000u
#define PORT_GPCLR_GPWE_SHIFT16
#define PORT_GPCLR_GPWE(x) (((uint32_t)(((uint32_t)(x))<<PORT_GPCLR_GPWE_SHIFT))&PORT_GPCLR_GPWE_MASK)
/* GPCHR Bit Fields */
#define PORT_GPCHR_GPWD_MASK 0xFFFFu
#define PORT_GPCHR_GPWD_SHIFT0
#define PORT_GPCHR_GPWD(x) (((uint32_t)(((uint32_t)(x))<<PORT_GPCHR_GPWD_SHIFT))&PORT_GPCHR_GPWD_MASK)
#define PORT_GPCHR_GPWE_MASK 0xFFFF0000u
#define PORT_GPCHR_GPWE_SHIFT16
#define PORT_GPCHR_GPWE(x) (((uint32_t)(((uint32_t)(x))<<PORT_GPCHR_GPWE_SHIFT))&PORT_GPCHR_GPWE_MASK)
/* ISFR Bit Fields */
#define PORT_ISFR_ISF_MASK 0xFFFFFFFFu
#define PORT_ISFR_ISF_SHIFT 0
#define PORT_ISFR_ISF(x) (((uint32_t)(((uint32_t)(x))<<PORT_ISFR_ISF_SHIFT))&PORT_ISFR_ISF_MASK)
/* DFER Bit Fields */
#define PORT_DFER_DFE_MASK 0xFFFFFFFFu
#define PORT_DFER_DFE_SHIFT 0
#define PORT_DFER_DFE(x) (((uint32_t)(((uint32_t)(x))<<PORT_DFER_DFE_SHIFT))&PORT_DFER_DFE_MASK)
/* DFCR Bit Fields */
#define PORT_DFCR_CS_MASK0x1u
#define PORT_DFCR_CS_SHIFT 0
/* DFWR Bit Fields */
#define PORT_DFWR_FILT_MASK 0x1Fu
#define PORT_DFWR_FILT_SHIFT 0
#define PORT_DFWR_FILT(x)(((uint32_t)(((uint32_t)(x))<<PORT_DFWR_FILT_SHIFT))&PORT_DFWR_FILT_MASK)
/**
* @}
*/ /* end of group PORT_Register_Masks */
/* PORT - Peripheral instance base addresses */
/** Peripheral PORTA base pointer */
#define PORTA_BASE_PTR ((PORT_MemMapPtr)0x40049000u)
/** Peripheral PORTB base pointer */
#define PORTB_BASE_PTR ((PORT_MemMapPtr)0x4004A000u)
/** Peripheral PORTC base pointer */
#define PORTC_BASE_PTR ((PORT_MemMapPtr)0x4004B000u)
/** Peripheral PORTD base pointer */
#define PORTD_BASE_PTR ((PORT_MemMapPtr)0x4004C000u)
/** Peripheral PORTE base pointer */
#define PORTE_BASE_PTR ((PORT_MemMapPtr)0x4004D000u)
/* ----------------------------------------------------------------------------
-- PORT - Register accessor macros
---------------------------------------------------------------------------- */
/**
* @addtogroup PORT_Register_Accessor_Macros PORT - Register accessor macros
* @{
*/
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)