- 博客(72)
- 资源 (21)
- 收藏
- 关注
原创 C语言中if判断语句 == 的问题
一、在C语言中if判断语句用的是 == 的时候前后条件互换过来会怎么样呢? if(a == 10); if(10 == a);类似与这种情况,一般情况下这两种情况都是一致;二、如果这个时候在if条件语句中打少一个等于号呢?一般情况下成熟的程序员都会将值放在==号之前,例如10 == a;if(a = 10)编译器是不报错的,如果在很多代码中去查这个错误是不值得的;if(10 = a)编译器是报错的。在判断比较关系运算符==容易写成赋值运算符=,避免的方法就是常量写左边,变量写右边,
2021-08-05 20:50:32
4838
转载 Doxygen简单注释语法说明
一、个人想法随着进一步的学习,我也了解到了Doxygen语法注释的好处以及用法,我感觉这是一个很好的注释方法,能让人一目了然明白代码的作用。还能够使用官网的工具生成整个代码的注释,能更好的读懂代码。在今后的敲代码生涯中我也要尽可能的用这个语法规范我的程序。(其实例如正点原子STM32代码的注释就是用了这种语法注释,只是当初我们可能没有了解这种语法注释而已)二、语法简介Doxygen 是一个程序的文件产生工具,可将程序中的特定批注转换成为说明文件。提供了一套注释方式便于把代码中的注释生成说明文档。很多
2020-07-04 11:43:19
1149
原创 手机APP连接华为OceanConnect平台下发指令控制硬件(附Android Studio 代码工程和APK)
1、接口首先看到华为平台的接口这些就是云平台上面的对接信息,然后现在用的HTTPS链接。安全秘钥是每个应用都有一个的。2、开发文档如果想要开发好APP,一定要看华为云平台上面的开发文档,这里直接给出开发文档的链接好好细看就可以很快的入手了。3、连接平台代码连接方式主要就是以HTTP的方式进行链接的。如果没有这方面的知识必须要好好脑补一下。下面看代码。有端口,IP地址,ID和密钥,密钥要改成自己的。 /** * * 登陆 * */ private v
2020-05-29 11:11:49
1882
12
原创 华为OceanConnect平台开发展示
1、项目列表:2、产品开发3、profile定义4、编解码插件开发连线完后必须点击部署5、在线调试在这里你可以选择真实物理设备进行调试也可以选择虚拟设备进行调试。部署完成后首先进行虚拟设备进行调试看一下格式的问题,然后再用真是的物理设备进行调试即可。完成后可以看到历史数据哪里有很多的历史信息:...
2020-05-29 10:25:40
576
原创 STM32控制NBIOT模块收发信息(附代码)
1、连线一般来说只需要将NB模块的串口线对应连接单片机的串口即可。具体连线方式为模块的VCC,GND分别连接单片机的5V和GND,模块的TXD连接单片机的PB10,RXD连接PB11.。即通过串口三与nb模块通信2、代码串口三的配置代码这里不详细说,都是仿照串口1的代码抄写过来的。需要的直接下载工程文件即可。下面看看核心代码:void NBIOT_test(void){// char wbuf[10]; while(NBIOT_send_cmd("AT","OK\r\n",20))//检查
2020-05-28 15:51:23
8781
67
原创 电机调速(PID算法)(程序原理图全套资料)
要求设计一个基于改变PWM信号占空比来实现直流电动机转速控制的系统,满足控制指标要求。最终设计的成果为:测速使用霍尔传感器,然后霍尔传感器感应的是使用高强度的磁铁(淘宝上面有买)电机驱动用现成的L9110模块,显示直接用OLED,主控用52单片机。最终的成果图如图所示:最主要的测速装置就是霍尔传感器测速,千万不要用其他的测速模块,那些是不准确的,因为模块的原因,测速最好用的还是霍尔传感器测速,比较直接,如果不相信你做过对比就知道了。下面单独看看测速装置的图片:下面看看主要的PID算法:floa
2020-05-27 22:50:09
9325
7
原创 STM32用PID算法控制220V通断(原理图程序全套)
原理图首先先把这个控制通断的关键原理图放出来主要芯片就是moc3032 BTA16-600B,主要控制过程就是单片机输出低电平然后三极管导通然后芯片触发控制BTAT1和T2脚导通,然后灯泡就会导通正常工作。当然灯泡也可以换成其他的220V工作的物品。作品实物图如图:然后下面看看主要的PID代码void PID_Calc() //pid计算{ float DelEk; float ti,ki;// float Iout;// float Pout;// float Dout; f
2020-05-27 15:40:46
4613
1
原创 单片机上电不断重启复位
单片机不断重启复位的原因主要是一个原因;就是单片机在不断复位造成复位的原因有几个;1、单片机硬件复位,这个要检查硬件电路中的复位电路是不是有错误2、单片机程序中有代码造成软件复位3、单片机在不断上电断电循环过程造成不断复位主要讲一下第三种情况,这种情况的主要原因的因为外部电源供电不足导致单片机不断复位。你先检查一下自己的电路中是否有很多需要供电的模块,比如电机,制冷发热类的模块等等需要...
2020-04-19 10:09:17
9012
1
原创 STM32拔掉J-Link程序就不运行了直接卡主
问题今天调试代码的时候发现使用J-Link下载器下载程序,当J-Link插在板子上的时候程序运行一切正常,但是拔掉J-Link程序直接卡主或者不运行。原因1、自己做的板子先检查一遍原理图是否错误2、首先检查boot引脚的电平 都要直接接一个10K电阻下拉到地看一下电平是否正确3、重点检查复位电路,看一下有没有元器件的漏焊以及元器件的焊错。解决方法出现这个问题的原因大概就是拔掉J-...
2020-04-09 22:05:59
2138
原创 TJC串口屏显示带小数数据的方法
使用串口屏显示带小数数据的方法:成功的方法:1.在两个数字控件之间采用文本控件,文本控件的内容设置为".",也就是把小数点采用文本控件固定,自己调整距离即可;2.使用虚拟浮点数控件也可以显示小数,这里需要注意的是:1)数据的整数和小数的位数都是可以在控件的属性里面可以设置的;2)虚拟浮点数控件的val属性一定要注意,比如你要显示23.24,切记编程的时候不能写出x0.val=23.24,这...
2020-04-02 10:50:43
1011
3
原创 Proteus+VSPD实现仿真stm32虚拟串口
工具软件准备1、keil5 用于创建stm32工程2、Proteus用于绘制电路仿真原理图。3、VSPD是一款虚拟串口软件,VSPD下载链接:https://www.lanzous.com/iawnmsf安装以后打开,创建虚拟串口。vspd是以串口对形式添加的,比如COM1,COM2成对,那么COM1的数据就只能发到COM2,COM2会自动接收COM1发送的数据。如图,我们就成功创建了...
2020-04-02 09:28:57
6351
5
原创 STM32中主程序不执行但中断函数执行
2020年3月26日,新冠病毒导致开学延迟,第一次遇到这个问题,可把我一通好搞!具体问题是:STM32的定时器中断卡死了主程序循环简单一点就是程序运行几分钟后主程序不执行了,直接卡死了,但是中断函数还可以用,定时器中断和串口中断还是在执行的!所以导致程序假死!这种情况看门狗也用不了。问题原因分析:1;定时器定时中断时间间隔很小,导致很快进入定时器中断2;定时器中的程序代码很多,而且主程序...
2020-03-28 21:48:51
5906
3
原创 STM32中(PB2)BOOT1引脚使用
电路工作正常的前提,必须保证VDD、VDDA、RESET状态正常。PB2/BOOT1不要做输入用了,建议PB2只做高电平有效的输出用,平常为低电平,并且下拉10K电阻。GPIO口要做按键输入用的话,建议外部加上拉电阻。可以改变电阻的值,改变导通时电流,来增强抗干扰能力,必要的情况下还得加ESD/TVS,RC滤波等。...
2020-03-23 19:13:50
9817
转载 Reading package lists... Done Building dependency(安装软件无法安装都适用)
我是在Docker的Ubuntu容器上出现的问题一般apt-get出现这种情况:`Reading package lists... DoneBuilding dependency tree Reading state information... DoneE: Unable to locate package ****或者Reading package lists... ...
2020-03-23 13:28:15
27607
2
转载 在VMware中手动安装VMware Tools
VMware Tools作用更新虚拟机中的显卡驱动,使虚拟机中的XWindows可以运行在SVGA模式下。在主机和客户机之间的时间同步。只有当你在客户操作系统中设置时钟为一个比在...
2020-03-23 13:14:03
601
原创 STM32控制HC-SR04超声波测距实现(一路到多路)
简介HC-SR04超声波模块可提供2cm~400cm的距离感测功能,测量精度可以达到3mm。模块包括超声波发射器,接收器与控制电路。基本工作原理采用Trig引脚触发,给至少10us的高电平脉冲信号模块自动发送8个40kHz的方波,自动检测是否有信号返回有信号返回,通过Echo引脚输出一个高电平脉冲,高电平脉冲持续的时间就是超声波从发射到反射返回的时间。距离=(高电平脉冲时间*340)/2...
2020-03-12 15:38:39
3581
4
原创 VMware Workstation12安装Ubuntu看不见那个Continue怎么办
如图直接按住ALT键加鼠标就可以解决了直接拖动这个窗口就可动了。
2020-03-08 12:13:58
1209
原创 以管理员身份运行 Microsoft Edge 时不支持登录
之前一直用 edge chromium bate版本 一直不能登录 今天试了正式版 还是这样 然后百度一大堆没找到解决方案设置兼容性为windown7 是可以的 但是 UI显示会有问题 再次打开 又不是兼容模式了(也许可以登录之后再退出兼容模式?)不过我是这么解决的1、Windows10系统下点击Edge浏览器图标,弹出“无法打开这个应用”,无法使用内置管理员账户打开Microsoft ...
2020-03-01 14:45:00
5212
4
原创 Android Studio 超级简单的打包生成apk的方法
本文介绍了Android Studio 超级简单的打包生成apk,分享给大家,也给自己留个笔记。为什么要打包:apk文件就是一个包,打包就是要生成apk文件,有了apk别人才能安装使用。打包分debug版和release包,通常所说的打包指生成release版的apk,release版的apk会比debug版的小,release版的还会进行混淆和用自己的keystore签名,以防止别人反编译后...
2020-02-27 11:52:50
1125
2
原创 对于android中 compile 'com.android.support:design:引用不成功的问题(错误很多)
对于android中 compile 'com.android.support:design:引用不成功的问题,最先想到的不应该是急忙从网上下载而是要到project structure中的depandeces中找到+号选择library dependency中找到自己已有的design例如解决方法就是换成你里面的不然是编译不成功的,或者一直卡主,或者出现很多错误...
2020-02-15 12:31:56
1746
转载 Android UI开发
这里有个专栏:https://blog.youkuaiyun.com/xyz_lmn/column/info/xyzlmn
2020-02-09 23:42:31
108
转载 Android 碎片fragment使用详解
作为一名专业的android开发人员,需要我们能够同时做到兼顾平板和手机。下面的内容会对你有一定帮助目录1.碎片介绍2.碎片的基本使用3.动态添加碎片4.在碎...
2020-02-08 21:52:15
467
原创 在Android Studio中为定义的变量生成获取方法的设置方法的快捷方法
比如你在一开始定义了两个变量 如:private UUID mId;private String mTitle;接下来要为这两个变量生成获取的方法和设置的方法:右键单击构造器方法下面的空白处,选择Generate…---->Getter菜单项,然后选择需要的变量,在选择Generate…------>Getter and Setter为需要的变量生成获取的方法和设置的方法。...
2020-02-07 22:32:39
491
转载 intent详解
看这个博主的就够了 转载:https://blog.youkuaiyun.com/harvic880925/article/details/38399723
2020-02-07 00:15:46
145
转载 详解显式intent和隐式intent
Intent是Android程序中各组件之间进行交互的一种重要方式。它不仅可以指明activity想要执行的动作,也可以在不同组件之间传输数据。 Intent分为两种,显式intent和隐式intent,以下分别进行描述:一、显式intent bt.setOnClickListener(new View.OnClickListener() { @Override ...
2020-02-06 00:04:04
293
原创 Android onCreate 详解
在AndroidManifest.xml文件中的元素中有这么两句: 当写好的应用发布到手机上之后,当双击”抽屉“里该应用的图标时,系统会将这个点击时间包装成一个Intent,该Intent包含两个参数,如上所述的两个参数被传递给应用之后,在应用的功能清单文件中寻找与该意图匹配的意图过滤器,如果匹配成功,找到相匹配的意图过滤器所在的Activity元素,再根据元素的”...
2020-02-05 18:46:21
782
原创 串口助手调试NB模块(BC35G/BC95)
1 首先看一下模块最常用的模块就是直接引排针出来的通过串口通信的NB模块,类似于以下这几个类似于这种的模块都是直接通过串口通讯的,所以直接连接串口助手插上电脑打开串口助手就可以通讯了。如果不懂怎么连接TTL下载器的话建议看一下51单片机如何用TTL下载器下载程序。我现在手头上的模块就是第一个。2 模块通过TTL连接串口助手插入电脑后打开串口助手,我这里使用的是XCOM (微信公众号...
2020-02-04 16:06:47
2833
3
原创 华为OceanConnect平台使用(2020年2月)
1 注册华为云平台1.1 首先登陆华为云官网注册登陆自己的账号。1.2 点击右上角的控制台进入自己的控制台,如下图所示:下滑找到物联网专区的IoT边缘点击进去点击进去之后如图:1.4然后点击右上角的开发中心创建一个自己的测试项目。不会点官方文档在里面的项目就有怎么创建一个项目,然后开发一个自己的产品,这个官方文档里面也有教怎么创建一个产品,我这里也有一个文档教怎么创建项目和产品...
2020-02-04 12:41:50
2389
原创 Error:Another 'refresh project' task is currently running for the project: H:\App_File\test1 Consu
android studio 克隆项目后,重新导入后显示Gradle sync failed: Another ‘refresh project’ task is currently running for the project…同步失败错误。解决方案:主要是红色部分操作 (AppCompatActivity),让gradle自己重新搭建。1.在任务栏打开File,选择Invalidate ...
2020-02-03 22:22:25
787
原创 Log.d学习
Log是Android中的日志工具类,用来打印日志Log.d(String tag, String msg)对应Debug调试第一个参数tag:打印信息的标签(标志)(如果设置该参数为TAG,在查看logcat时,可以通过搜索栏来搜索标签为TAG的打印信息)第二个参数msg:表示需要打印出来的信息举个例子在探究碎片的生命周期时会加入打印日志的代码,下面是例子 @Override...
2020-02-01 23:55:00
1537
转载 Android中的MVC
Android中的MVCView层UI的描述一般来说都是用的res中的那一堆xmlController层Android的Controller基本上就Activity。个人觉得严格意义上讲,Activity还承担了一部分View跟Model之间的交接。Model层针对业务逻辑,进而开发的IO,NIO,DB,之类的操作都在这里。MVC代码讲解Controller层...
2020-01-30 22:25:30
274
原创 Android控件设置id什么用
设置控件的id跟不设置有什么不一样呢?比如说,我添加一个Button,andriod id="@+id/XX"这行代码要不要有什么区别?id是组件的唯一标识,通过id可以在应用中获取到该组件findViewById(R.id.xxxx);如果需要在应用中对组件进行设置,比如文字显示信息,背景颜色等代码设置,则需要设置该组件的id,以便于在应用中找到该组件。如果在应用中不对该组件进行操作,则不...
2020-01-29 21:39:07
1852
转载 Android Studio如何轻松整理字符串到string.xml中
1、在布局文件中写的字符串,整理到string.xml中1、如下面的布局文件,一般写布局文件的时候都是直接把字符串写到里面,之后再整理到string.xml中:&l...
2020-01-29 19:08:53
499
转载 LinearLayout 与RelativeLayout的区别
一、线性布局(LinearLayout)线性布局:线性布局是我们在开发中最常见的布局方式之一,线性布局可以分为水平线性布局和垂直线性布局这两种布局方式线性布局的属性...
2020-01-29 18:45:47
1043
原创 串口助手测试NB-IoT模块与华为OceanConnect平台通信(BC35-G模块、非常详细)
华为OceanConnect平台配置1 注册华为云平台1.1 首先登陆华为云官网注册登陆自己的账号。1.2 点击右上角的控制台进入自己的控制台,如下图所示:1.3 进入控制台点击左上角的服务列表如图所示:(要点击服务列表才会显示出来更多)下滑找到物联网专区的IoT边缘点击进去点击进去之后如图:然后点击右上角的开发中心创建一个自己的测试项目。不会点官方文档在里面的项目就...
2020-01-29 14:21:21
6168
3
原创 STM32F103控制28BYJ-48步进电机正转或者反转一定的角度
介绍参数含义28——步进电机的有效最大外径是28毫米B——表示是步进电机Y——表示是永磁式J——表示是减速型48——表示四相八拍原理图步进电机控制电路工作原理通过对不同的相依次导通一定时间,使得定子转到指定角度。最佳工作模式为八拍模式(八拍转过一个定子角度)需要注意减速比节拍刷新大于1.8ms即可单片机控制首先查询得步进电机节拍对应的IO控制代码然后每隔一定的时...
2020-01-29 11:25:25
8985
14
原创 FPGA—verilog语言写数电
以下所有历程都是用Quartus II工具编写的verilog程序,主要是用来描述数字逻辑中的电路,可以实际拿来使用,都是我经过测试的!1、非门2、三线—八线译码器3、四选一数据选择器4、四位二进制数据比较器5、四位数据比较器6、数码管七段码译码器7、D触发器8、八位移位寄存器9、可控移位寄存器10、四位二进制模十计数器11、三位八进制计数器12、八位...
2019-08-19 08:45:32
1341
转载 Keil在线调试
参考文章UP主:https://blog.youkuaiyun.com/ybhuangfugui分享一个大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到人工智能的队伍中来!http://www.captainbed.net/strongerhuangⅠ、写在前面Keil在线调试的内容有很多,本文带来在线调试常用的内容:Debug Toolbar调试工具栏(复位、全速运行、停止运...
2019-08-18 09:22:06
3098
2
原创 NXP1768学习感悟
1、 前言在大三下最后一两周的时间内,我把NXP1768基本的东西都弄懂了!说来也巧,其实之前我都不知道有NXP1768这个芯片的,淘宝上面一搜,比32还贵。再到谷歌一搜他的功能,瞬间让我大跌眼镜,因为他的功能实在是不可恭维,可用的资源实在是太少了,可以说是51单片机的两倍而已,而且的他程序写法还是和操作51单片机的寄存器类似的!所以可以说是功能少,而且还难操作!2、 学习原因由于找到的...
2019-08-01 08:44:55
880
转载 AD中检查PCB布线是否完成
</div> <link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-3019150162.css"><style ...
2019-07-31 09:18:43
13927
2
基于STM32的温控PID
2020-05-27
两路超声波测距.zip
2020-03-12
STM32控制28BYJ-48步进电机
2020-01-29
BC95中文指令集 V2.0.pdf
2020-01-12
谷雨NB开发板NB-EK-L476华为IOT平台LED控制实验.pdf
2020-01-12
51单片机读取MPU6050三角以及六个原始数据.zip
2019-07-17
鸟哥linux所有资料,包括基础和服务器篇,还有一些学习方法和命令总结
2019-03-02
平衡小车之家以及自己的有关于平衡小车的资料
2019-01-13
30S可调倒计时
2019-01-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人