- 博客(15)
- 收藏
- 关注
原创 结构体中的函数指针使用方法
首先定义一个函数指针:typedef int (*Operation)(int a , int b );再定义两个函数://a和b相加int Add (int a, int b){ return a + b ;}//a和b相乘int Multi (int a, int b){ return a * b ;}定义一个结构体:typedef struct _str { int result ; // 用来存储结果 Operation opt; // 函数指针
2021-08-18 16:04:37 2217 2
原创 矩阵键盘的编程
KEY_H1,KEY_H2,KEY_H3,KEY_H4,KEY_H5,KEY_H6,KEY_H7接单片机普通端口且需要带上拉功能。KEY_L1,KEY_L2,KEY_L3,KEY_L4,KEY_L5,KEY_L6接单片机普通端口且需要带上拉功能。按键检测子函数:#define P53 KEY_H1#define P23 KEY_H2#define P04 KEY_H3#define P35 KEY_H4#define Pvoid Keyscan(){ static _u16.
2021-05-11 14:30:44 951
原创 JLink Warning: T-bit of XPSR is 0 but should be 1. Changed to 1.
JLink Warning: T-bit of XPSR is 0 but should be 1. Changed to 1.最近在使用stm32调试的时候老是出现错误,报错信息为JLink Warning: T-bit of XPSR is 0 but should be 1. Changed to 1.在网上查找了相关问题,要么是说仿真器的速度快了,要么是说什么复位口没接到地,要么是什么地址范围错了,实际试了都不行,还是报错。现在现象是,只要程序关闭看门狗运行一段时间就会出现这样的错误,特别在进
2020-08-23 06:59:34 1424
原创 IIC通讯通用代码
IIC通讯通用代码在实际项目中往往要用到IIC与不同的设备通讯,做一个通用型的IIC驱动代码很有必要,面得每次还得去自己测时序,实在是太麻烦了。而网上其他的IIC通讯代码要么只是适配51,要么用不了,我要弄的是适配所有平台,不需要再去检查IIC的时序。#define SDA RB0#define SCL RB1#define SDA_SET SDA=1;#define SCL_SET SCL=1;#define SDA_RESET SDA=0;#def
2020-07-13 08:48:10 1052 2
转载 STM32端口相关寄存器
STM32端口寄存器在做项目的时候,有事要临时的改变端口的输入输出或者其他状态,这个时候如果用库操作显得繁琐,代码量大,如果直接操作寄存器,则简单快捷干净。STM32寄存器如下:端口模式寄存器(GPIOx_MODER):每IO口两位1 MODERy[1:0]:(y=0…15)2 00:输入(复位状态)3 01:通用输出模式4 10:复用功能模式5 11:模拟模式端口输出类型寄存器(GPIOx_OTYPER):每IO口一位,高16位不用1 OTy[1:0]:(y=0…15)2 0:输出推挽
2020-07-02 08:47:59 921
原创 实用的温度查询算法,超好用
实用的温度查询算法本来是想着至少一周写一遍博客,但是忙着没时间写,其实时间都是花在没有什么意义的事情上面了,感觉做的事情对自己帮助不大,而正真自己想做的有意义的事却搁置了,真是得不偿失。比如一周一遍博客,我感觉就是有意义的事,既是对自己的一个总结,也能让自己反思一些问题,让自己持续的更新。废话说得太多不好,在一些项目中,往往要用到NTC来检测温度,比如要显示或者获取当前温度之类的,此时就得查表来得到温度,现下面这种算法,如果8位AD的温度,只需要查询8次,12位的AD循环查询12次即可得到当前温度,超好
2020-06-27 22:31:28 1091
原创 STM32开双串口的问题和总结
这里写自定义目录标题欢迎使用Markdown编辑器新的改变`在这里插入代码片`功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导...
2020-05-25 08:51:26 2672 1
原创 C语言结构体的相关知识点的总结
感觉自己对结构体的使用还不太熟练,趁有空总结一下,多熟悉一些,以后好在实际的项目中更灵活的运用。1,结构体的声明struct Info //这里info是结构体的类型名{ unsigned long identifier; //学号 char name[20]; //名字 unsigned int year; //入学年份 unsigned int years;//学制}2...
2020-04-29 14:53:32 3125
原创 CMS汇编比较unsigned int类型的两个数大小,并在其上的延伸
CMS汇编比较unsigned int类型的两个数大小在项目中需要用到CMS汇编。实现时钟的按键调节。按+键要以10min加,按减键以1min减,范围是00:00-04:00。编写一个子程序来实现,达到这类型的功能通用。如果要用C来表示如下:uchar Var_min; //需要显示的minuchar Var_hour; //需要显示的hourvoid Maink_add_pro(uc...
2020-04-28 16:05:42 366
原创 C语言效率笔记
提高C语言效率笔记数组索引方式1for(;;){ A=array[t++];}改成:p=array;for(;;){ a=*(p++);}2int I,J;I=257/8;J=456%32;改成:int I,J;I=257>>3;J=456-(456>>5<<5);3a=a+b;改成:a+=...
2020-04-24 09:21:56 148
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人