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

怎么做卖辅助网站西青集团网站建设

怎么做卖辅助网站,西青集团网站建设,济宁网站建设哪家好,上饶网站开发4X4矩阵键盘实物 4x4 矩阵键盘是一种常见的输入设备#xff0c;通常由 16 个按键组成#xff0c;排列成一个 4 行 4 列的矩阵。每个按键在按下时会连接某一行和某一列#xff0c;通过扫描矩阵中的行和列#xff0c;可以确定用户按下的是哪一个按键。 4X4矩阵键盘原理图 原理…4X4矩阵键盘实物 4x4 矩阵键盘是一种常见的输入设备通常由 16 个按键组成排列成一个 4 行 4 列的矩阵。每个按键在按下时会连接某一行和某一列通过扫描矩阵中的行和列可以确定用户按下的是哪一个按键。 4X4矩阵键盘原理图 原理介绍 在使用这个模块的时候最简单的方法是需要8个引脚其中4个分别代表4行另外4个代表4列。 代表行的引脚需要设置成推挽输出模式代表列的引脚需要设置成上拉输入模式.。 当然你反着去设置也是完全没有问题的即 代表行的引脚需要设置成上拉输入模式代表列的引脚需要设置成推挽输出模式.。 只不过这样的话程序要稍微更改或者你直接把行作为列去使用。 我使用的是行设置成推挽输出模式列设置成上拉输入模式。 然后我们让行的4个引脚其中一个输出低电平其他输出高电平此时在循环中去不断循环等待当我们按下一个在当前低电平引脚对应行的按键的时候被设置为上拉输入模式的列引脚就会因为当前行是低电压而被拉低这样我们就可以判断这个行上面哪个列引脚被拉下了。 接下来就是一个循环让4个行引脚分别1个输出低电平3个输出高电平。芯片的循环速度很快所以你完全不用怀疑这种做法的可行性。 具体步骤 设置8个引脚4个上拉输入模式4个推挽输出模式 书写扫描逻辑(为了照顾标准库和HAL库的同学我尽量减少HAL库函数的使用因为笔者用的HAL库) int main(void) { uint8_t regval 0x07; while (1){/*4X4矩阵键盘程序硬件连线PA0 - R1 控制 S13~16PA1 - R2 控制 S9~12PA2 - R3 控制 S5~8PA3 - R4 控制 S0~4PA4 - C4 控制 S0~13PA5 - C3 控制 S2~14PA6 - C2 控制 S3~15PA7 - C1 控制 S4~16*//*置位 0x07-0x0B-0x0D-0x0E-0x07 循环*/GPIOA-BSRR | regval;/**/uint8_t temp GPIOA-IDR 0xF0;/*消抖*/HAL_Delay(10);/*当有按键按下时*/if(temp ! 0xF0){temp GPIOA-IDR (0xF0 regval);switch(temp 0xF0){case 0xE0:printf(%d\r\n,(int)(1 (3 - log2(~temp0x0F))*4));break;case 0xD0:printf(%d\r\n,(int)(2 (3 - log2(~temp0x0F))*4));break;case 0xB0:printf(%d\r\n,(int)(3 (3 - log2(~temp0x0F))*4));break;case 0x70:printf(%d\r\n,(int)(4 (3 - log2(~temp0x0F))*4));break;} }GPIOA-BSRR | regval 16;/*置零寄存器数据位*//*0x07 0x0B 0x0D 0x0E 循环*/regval (~((~regval 0x0F) 1)) 0x0F;/*如果regval在0x0E之后继续进上一行的代码运算就会变成0X0F 即0000 1110 ~ - 1111 0001 0x0F- 0001 1 - 0000 0000 ~- 1111 1111 0x0F - 0000 1111 所以我们让他置为0x07初始值来完成这个循环*/if((regval 0x0F) 0x0F)regval 0x07;} }这个逻辑我直接写在主函数里面当然你完全可以封装他为一个函数我这样操作也只是为了方便测试和使用。 附录 测试结果 其他代码相关程序 printf通过串口输出程序 #if 1 //标准库需要的支持函数 struct __FILE {int handle; }; FILE __stdout;//重定向fputc函数 int fputc(int ch, FILE *f) {HAL_UART_Transmit(huart1, (uint8_t *)ch, 1, HAL_MAX_DELAY);return ch; } #endif
http://www.hkea.cn/news/14430310/

相关文章:

  • 网站建设伍金手指下拉9网站建站四种方案
  • 大型网站开发 书籍网页设计基础教程
  • 企业网站的域名是该企业的什么做淘宝客网站需要多大的数据库
  • 小企业网站建设平台c 可以用来做网站吗
  • 网站一直没收录象山县建设管理局网站
  • 做网站要几个人 要多少钱如何制作小程序码
  • 做原型的网站电销系统开发
  • 有什么网站做微商网站不做备案
  • 网站搭建哪里找有名气新网站域名备案流程
  • 网站维护的主要工作asp网站免费完整源码
  • 广西建设职业技术学院管理工程系网站2014考试前培训时间seo博客模板
  • 网站建设中的pv指的是啥个人网站可以做电商么
  • 公司网站建设和百度推广流程图互联网品牌营销服务公司
  • 云羽网络网站建设微信客户端官网
  • 网站建设合同需要交印花税广州全面优化各项防控措施
  • phpcms 网站路径新公司怎么做网络推广
  • 如何做一个门户网站百度地图添加到网站
  • 做旅游网站的目的是什么南昌网站建设方案维护
  • 网站宽度 1000px公众号里的电影网站怎么做的
  • 搜什么关键词能找到网站深圳互联网网页设计招聘
  • 网站做飘浮怎么做有无广告销售版本"有广告免费无广告收费"网站
  • 自己有服务器怎么做网站黄骅市海边沙滩在哪里
  • 重庆市建设网站首页wordpress文章怎么生成云标签
  • 2024免费网站推广电脑版微信
  • 国内自助建站平台有哪些网站建设国内外研究现况
  • 龙川网站建设二维码生成器在线
  • 如何做招聘网站的数据分析大淘客网站免费空间
  • 红酒企业网站模板广宁住房和城乡建设局网站
  • wordpress不适合大型网站自己做的网站字体变成方框
  • js素材网站自己做网站切入地图