- 博客(9)
- 资源 (1)
- 收藏
- 关注
原创 C++中数组定义及初始化
一、一维数组静态 int array[100]; 定义了数组array,并未对数组进行初始化 静态 int array[100] = {1,2}; 定义并初始化了数组array 动态 int* array = new int[100]; delete []array; 分配了长度为100的数组array 动态 int* array = new int100; delete
2018-01-24 11:01:23 404
原创 HV
使能控制电路是用来控制高压运放OPA548的工作与否,由于OPA548的工作电压为 ,因此使能电路不仅需要能将使能引脚拉低至 ,同时还需要将高压部分与低压隔离开,保证低压控制部分电路工作的安全。使能控制电路如图5-1所示。 HV_Regulator_EN信号为使能控制信号,当HV_Regulator_EN为高电平时,会使得三极管T2导通,T2的集电极接地,那么三极管T3的集电极输入低电平,由于T
2018-01-19 15:08:19 1083
原创 motor
电机驱动模块4.1 设计思路 由于系统对噪声的敏感度较高,所以在电机控制这部分对噪声的抑制尤为重要。因此最终没有采用传统的PWM控制方式,而是通过模拟电压线性放大来控制电机的转速。 电机驱动模块采用OPA548作为驱动芯片,驱动12V直流电机,同时会检测电机运转时的电流,当超过限定值的时候会降低电机的驱动电压,防止电机遇到堵转的时候因电流过大而烧毁驱动电路。 4.2 数模转换电路 由于
2018-01-19 14:55:12 1101
原创 c语言中ifndef和endif的用法
ifndef x //if not define的简写 #define x … #endif 这是宏定义的一种,它可以根据是否已经定义了一个变量来进行分支选择,一般用于调试等等.实际上确切的说这应该是预处理功能中三种(宏定义,文件包含和条件编译)中的一种—-条件编译。 C语言在对程序进行编译时,会先根据预处理命令进行“预处理”。C语言编译系统包括预处理,编译和链接等部分。
2018-01-14 18:17:53 6339 1
原创 锅仔片焊盘
硅胶外套+锅仔片按键键盘对于不同行程、大小和按压力度的锅仔片按键,配合合适的硅胶键帽可以呈现出各种神奇的效果。为了保持锅仔片良好的触压手感,须保持锅仔片各个引脚的PCB PAD露铜不上锡,即必须加阻焊层,切不可有钢网层!!!
2018-01-14 15:20:24 2429
原创 Program:GPIO FT INPUT
GPIO初始化设置为浮空本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:-*写底层Driver,对于一开始就不确定的输入,如Rx,GPIO初始化最好设置为浮空,可以便于后续进一步更新状态1、软件上下拉;2、外部信号通过硬件N-Mos栅极上拉输入,若只能高/低电平有效,则一般会使用背靠背Nmos隔离输入,作为缓冲和电平保持,特
2018-01-14 14:39:51 319
原创 Program:程序里不能死循环嵌套死循环!!!
若要处理多个对象主函数循环内可以利用 switch case ,if else,for等语句进行枚举查询,切不可使用while(1)嵌套While或其他死循环,从而令程序陷入死循环。可以使用状态机,定时器,组合逻辑等判断条件来跳出当前状态从而执行/检测下一个状态,完成对应时序控制,数据处理…… 所谓状态机,主要是要根据及时脉冲,实时记录每一个输入检测的状态变化,结合组合逻辑真值表(时序变
2018-01-11 18:42:24 679
转载 program:switch case 语句 & 函数声明要注意!!!
在网上有很多的资料上写着,default 这个语句的后面是不用加break语句的,其实是在switch 中的哪一个分支,后面都要加上break语句的,switch case 语句执行顺序就是先执行case 语句,等到case 语句全部执行完了,他在执行default 语句最后的结束条件是break语句 但是由于一般的写法下,default 后面就是switch 的括号,所以,在de
2018-01-11 18:25:38 2118
原创 C语言中的左移与右移
左移时总是移位和补零。右移时无符号数是移位和补零,此时称为逻辑右移;而有符号数大多数情况下是移位和补最左边的位(也就是补最高有效位),移几位就补几位,此时称为算术右移
2018-01-09 09:53:23 697
Mentor expedition实战经验总结
2018-09-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人