摘要:
DMA配置程序过程 a) RCC_AHBPeriphClockCmd(); a) DMA_Init(); a) USART_DMACmd(); a) DMA_Cmd(); a) DMA_GetFlagStatus(); a) DMA_GetCurrDataCounter(); b) DMA_SetC 阅读全文
2018年11月17日 #
摘要:
a) RCC_APB1PeriphClockCmd(); a) PWR_BackupAccessCmd(); a) RCC_RTCCLKConfig(); b) RCC_RTCCLKCmd(); c) 如果使用LSE,要打开LSE: a) RTC_SetPrescaler(); a) RTC_Set 阅读全文
摘要:
l 初始化定时器和通道对应IO的时钟。 l 初始化IO口,模式为输入: GPIO_Init(); GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPD; //PA0 输入 l 初始化定时器ARR,PSC TIM_TimeBaseInit(); l 初始化输入捕获通 阅读全文
摘要:
独立看门狗步骤: l 取消寄存器写保护: n IWDG_WriteAccessCmd(); l 设置独立看门狗的预分频系数,确定时钟: n IWDG_SetPrescaler(); l 设置看门狗重装载值,确定溢出时间: n IWDG_SetReload(); l 使能看门狗 n IWDG_Enab 阅读全文
摘要:
typedef struct { uint16_t TIM_OCMode; //PWM模式1或者模式2 uint16_t TIM_OutputState; //输出使能 OR失能 uint16_t TIM_OutputNState; uint16_t TIM_Pulse; //比较值,写CCRx u 阅读全文
摘要:
l 使能定时器时钟。 RCC_APB1PeriphClockCmd(); l 初始化定时器,配置ARR,PSC。 TIM_TimeBaseInit(); l 开启定时器中断,配置NVIC。 void TIM_ITConfig(); NVIC_Init(); l 使能定时器。 TIM_Cmd(); l 阅读全文
摘要:
① 初始化IO口为输入。 GPIO_Init(); ② 开启IO口复用时钟。 RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE); ③ 设置IO口与中断线的映射关系。 void GPIO_EXTILineConfig(); ④ 初始化线上中断,设置触 阅读全文
摘要:
l 串口时钟使能,GPIO时钟使能: RCC_APB2PeriphClockCmd(); l 串口复位: USART_DeInit(); 这一步不是必须的 l GPIO端口模式设置: GPIO_Init(); l 串口参数初始化: USART_Init(); l 开启中断并且初始化NVIC(如果需要 阅读全文
摘要:
技巧一:理解指针或引用的含义 技巧二:指针丢失和内存泄漏 技巧三:利用哨兵简化实现难度 技巧四:重点留意边界条件处理 如果链表未空时,代码是否能够正常运行 如果链表只包含一个节点时,代码能否正常运行 如果链表只包含两个节点时,代码能否正常运行 代码逻辑在处理头节点和尾节点的时候,能否正常运行 技巧五 阅读全文
摘要:
缓存淘汰策略: 一、什么是链表? 1.和数组一样,链表也是一种线性表。 2.从内存结构来看,链表的内存结构是不连续的内存空间,是将一组零散的内存块串联起来,从而进行数据存储的数据结构。 3.链表中的每一个内存块被称为节点Node。节点除了存储数据外,还需记录链上下一个节点的地址,即后继指针next。 阅读全文