当前位置: 首页 > news >正文

ip地址做网站泰安网站建设课程报告

ip地址做网站,泰安网站建设课程报告,宁夏固原住房和建设局网站,东莞网站建设及外包HALSTM32通用定时器EXTI实现单击/双击/长按功能 ✨在使用USB功率计的时候#xff0c;发现上面的一个按键实现多画面功能切换#xff0c;于是探索了一下是如何实现的#xff0c;将其实现的基本思路以及综合网上收集的相关实现方法#xff0c;粗陋的整理了一下#xff0c;将… HALSTM32通用定时器EXTI实现单击/双击/长按功能 ✨在使用USB功率计的时候发现上面的一个按键实现多画面功能切换于是探索了一下是如何实现的将其实现的基本思路以及综合网上收集的相关实现方法粗陋的整理了一下将其基本功能实现了一下具体的功能没有做只是做了一个简单的框架。 功能实现并不能保证每次处理的按键结果都如预期效果主要的影响因数是单击和双击之间的间隔时间每个人的手感或者每次按下的时间差异并不能像计算器那么准确和标准。 HAL STM32CubeMX工程配置 基于STM32F103芯片。 主要配置一个外部中断按键引脚。 GPIO引脚按键外部使用电路参考 配置一个定时器 NVIC中断使能以及优先级配置。 其他串口和I2C配置用于显示和调试输出。(这里根据个人需求配置个人推荐还是使用软件I2C实现比较好硬件I2C如果程序比较复杂cpu处理各种中断容易导致硬件I2C出错导致显示画面异常的情况。) 其他时钟配置和工程生成就不展示了根据个人情况配置。 ⛳功能实现 完善按键中断回调内容 //重写回调函数 void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) {/*判断是中断引脚*/if(GPIO_Pin KEY_Pin){Trg;HAL_GPIO_TogglePin(GPIOE, GPIO_PIN_5);//状态翻转} }定时器中断回调函数 void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef* htim) {static uint32_t click 0;static char keyStatus 0;static char LongPress 0;if(htim -Instance TIM6){if(cnt_1ms 1000){cnt_1ms 0;HAL_GPIO_TogglePin(GPIOB, GPIO_PIN_5);//状态翻转}if(Trg 0){keyStatus HAL_GPIO_ReadPin(KEY_GPIO_Port, KEY_Pin);//读取按键状态click;if((click _debounce_ms) (keyStatus 1) (LongPress 0)) //1000{if((Trg 1) || (Trg 2)) //单击{Trg 0;funIndex ;printf(_click_ms,%d\r\n, funIndex);click 0;//清零}if(Trg 2) //双击{Trg 0;funIndex 2;printf(_doubleClick %d\r\n, funIndex);click 0;//清零}}if((click _press_ms) (keyStatus 0) (LongPress 0)) //1000{printf(_longPressStart\r\n);LongPress 1;}if((LongPress 1) (keyStatus 1)){LongPress 0;Trg 0;funIndex 3;//松开才赋值click 0;printf(_longPressStop %d\r\n, funIndex);}}if(funIndex 8)funIndex 0;} } oled驱动显示内容可以根据个人使用的屏幕规格型号自行完善个人使用的是SH1106 1.3“寸的OLED屏幕作为显示。按键菜单显示内容参考网上的内容。 unsigned char funIndex 0;//9和0-1-1 void menu11(void); void menu12(void); void menu21(void); void menu22(void); void menu23(void); void menu31(void); void menu32(void); void menu33(void); void menu34(void); //定义按键操作数据 KEY_TABLE table[9] {{0, 0, 1, 0, 2, (*menu11)},{1, 0, 1, 1, 4, (*menu12)},{2, 2, 3, 0, 5, (*menu21)},{3, 2, 3, 0, 7, (*menu22)},{4, 4, 4, 1, 4, (*menu23)},{5, 5, 6, 2, 5, (*menu31)},{6, 5, 6, 2, 6, (*menu32)},{7, 7, 8, 3, 7, (*menu33)},{8, 7, 8, 3, 8, (*menu34)}, };void ShowMenu(int16_t x, int16_t y,char *text) {OLED_ShowString(x, y, text, 12);//x,y,字符串字体大小 }//一级菜单1 void menu11(void) {// OLED_Clear();OLED_ShowString(36, 6, menu1-1, 16); }//一级菜单2 void menu12(void) { // OLED_Clear();OLED_ShowString(36, 6, menu1-2, 16); }//二级菜单1 void menu21(void) { // OLED_Clear();OLED_ShowString(36, 6, menu2-1, 16); }//二级菜单2 void menu22(void) { // OLED_Clear();OLED_ShowString(36, 6, menu2-2, 16); }//二级菜单3 void menu23(void) { // OLED_Clear();OLED_ShowString(36, 6, menu2-3, 16);}//三级菜单1 void menu31(void) { // OLED_Clear();OLED_ShowString(36, 6, menu3-1, 16); }//三级菜单2 void menu32(void) { // OLED_Clear();OLED_ShowString(36, 6, menu3-2, 16); }//三级菜单3 void menu33(void) { // OLED_Clear();OLED_ShowString(36, 6, menu3-3, 16); }//三级菜单4 void menu34(void) { // OLED_Clear();OLED_ShowString(36, 6, menu3-4, 16);}main主函数 int main(void) {/* USER CODE BEGIN 1 *//* USER CODE END 1 *//* MCU Configuration--------------------------------------------------------*//* Reset of all peripherals, Initializes the Flash interface and the Systick. */HAL_Init();/* USER CODE BEGIN Init *//* USER CODE END Init *//* Configure the system clock */SystemClock_Config();/* USER CODE BEGIN SysInit *//* USER CODE END SysInit *//* Initialize all configured peripherals */MX_GPIO_Init();MX_I2C1_Init();MX_USART1_UART_Init();MX_I2C2_Init();MX_TIM6_Init();/* USER CODE BEGIN 2 */OLED_Init();HAL_TIM_Base_Start_IT(htim6);ShowMenu(2, 0, OneKey Mul-Menu);/* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while(1){/* USER CODE END WHILE *//* USER CODE BEGIN 3 */current table[funIndex].operation;//根据需要获取对应需要执行的函数(*current)();//执行获取到的函数}/* USER CODE END 3 */ }工程源码 链接https://pan.baidu.com/s/1eR14Lpfjqm7nA0lvwbv5xg 提取码vs7f
http://www.yutouwan.com/news/367959/

相关文章:

  • 龙华网站建设yihe kj群艺馆网站建设方案
  • 三亚旅游网站建设推荐几个高端大气上档次网站
  • 一个高端的网站设计大的网站制作
  • 徐州峰华网架公司sem seo新手好做吗
  • 网站建设捌金手指专业5a标签怎么显示wordpress
  • 哪个网站可以做行程wordpress鼠标点击彩色
  • 网站截流做cpa徐州圣道网络科技有限公司
  • 生鲜电商网站建设策划书观澜小学 网站建设
  • 公司怎样制作网站成都建设网站 scgckj
  • 广东省网站设计师网站logo下载
  • 工程建设质量安全管理协会网站门户网站免费建设
  • 网站开发语言windows免费国外云服务器
  • 怎么通过做网站来赚钱吗织梦网站 数据库
  • 电脑建网站软件都匀网站开发
  • 成都做网站的公司哈尔滨网站开发渠道
  • 网站集约化建设管理十堰网站seo方法
  • 如何选择网站建设郑州网站推广公司案例
  • 做企业门户网站都网站建设基本代码
  • 临淄网站建设价格网站负责人 备案
  • 成都网站建设 四川冠辰科技免费制作网站平台哪个好
  • 铜仁建设厅官方网站新乡专业网站建设公司
  • 网站建设优化东莞wordpress数据库替换网址
  • 嘉兴建站模板系统密云广州网站建设
  • php网站开发实验报告网页认证怎么认证
  • 做玻璃钢的企业网站如何建立自己的网站教程
  • 汽车网站开发流程wordpress标签数量
  • 学什么可以做推广网站建站公司 网站
  • 专业集团门户网站建设服务商宜宾网站建设哪家好
  • 石家庄城乡建设网站网络推广怎么优化
  • 刚做的网站怎么收录营销型网站和普通网站