自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 资源 (16)
  • 收藏
  • 关注

原创 阿里云oss c-sdk交叉编译移植

君正T41平台 阿里云oss c-sdk交叉编译移植,包括依赖库openssl、curl、apr、mxml等移植

2023-07-19 17:48:52 937

原创 交叉编译-coreutils(dd命令)

使用dd命令进行sd读写压力测试,设备Linux系统精简无dd命令,交叉编译dd命令。

2023-07-05 17:36:08 634

原创 嵌入式面试题二

嵌入式面试题二嵌入式系统中经常要用到无限循环,你怎么样用C编写死循环?方法一:for(;;) { }说明:这两个;; 空语句,编译器一般会优掉的,直接进入死循环。方法二:while(1) { }说明:每循环一次都要判断常量1是不是等于零,在这里while比for多做了这点事,不过从汇编的角度来说,都是一样的代码。方法二:第三个方案是用 gotoLoop:…goto Loop;...

2020-07-27 14:50:56 275

原创 Linux多定时器实现

一、setitimer函数1. 头文件#include <sys/time.h>2. 函数原型int setitimer(int which, const struct itimerval *new_value, struct itimerval *old_value);which参数说明:ITIMER_REAL:给一个指定的时间间隔,按照实际的时间来减少这个计数,当时间间隔为0的时候发出SIGALRM信号;ITIMER_VIRTUA.

2020-07-25 15:24:03 1620 1

原创 条件编译使用方法

一、 如下,如果 标识符 被#define过, 编译器编译代码段1, 否则编译代码段2#ifdef 标识符代码段1#else代码段2#endif //条件编译结束的语句Eg:判断TEST_T是否被定义,下面demo中TEST_T已被定义,所以打印“代码段1”#include <stdio.h>#define TEST_T int main(void){#ifdef TEST_T printf("代码段1\n");#else pr

2020-07-25 14:54:13 485

原创 Ubuntu安装截图工具Shutter及使用(同时可对图片进行编辑)

一、安装Shutter工具1、添加安装包软件源sudo add-apt-repository ppa:shutter/ppa2、更新源并安装Shuttersudo apt-get updatesudo apt-get install shutter3、搜索shutter可看到是否安装成功二、设置快捷键1、打开系统设置2、打开keyborad键盘设置...

2019-07-09 14:31:46 1451

原创 Ubuntu下安装7z以及解压文件方式

1、安装方式:在线安装sudo apt-get install p7zip-full2、解压方式 解压命令:7z x filename.7z -r -o./test 命令说明: ① 7z 解压缩文件命令 ② x 表示解压缩 ③ ...

2019-05-14 10:50:05 5153

原创 GBK与UNICODE编码互转

  对经常玩单片机的人员来说都知道怎样通过软件制作GBK字库,再使用GBK公式计算处理在LCD屏上显示中文汉字,如果不知道GBK制作软件及方式的话可以通过文末链接下载学习;这里主要是介绍UNICODE与GBK的相互转化,在一些应用场景可能只有UNICODE编码然后中文形式显示在LCD屏上,这时可能需要转换为GBK编码。GBK与UNICODE没有直接对应的关系,通过查表方式将两者联系起来,具体实...

2019-04-11 15:10:05 5699

原创 gdb调试和gdbserver远程调试

Linux下GDB调试工具使用一、gcc编译器的常用选项  使用 GCC 编译器的时候,我们必须给出一系列必要的调用参数和文件名称。GCC 编译器的调用参数大约有100 多个,这里只介绍其中最基本、最常用的参数。GCC 最基本的用法∶ gcc [参数] [文件名称]常用的参数如下-c 只编译:不链接成为可执行文件,编译器只是由输入的.c 等源代码文件生成.o 为后缀的目标文件,通常 用...

2019-04-11 10:02:28 4025

原创 嵌入式面试题总结一

/************************************1**********************************************/int a[4]={1,2,3,4}; // a:数组首元素的首地址,即 a[0]; &amp;a:数组的首地址 int *ptr=(int*)(&amp;a+1); // a+1:数组的下一元素的首地址,即 a[1...

2018-10-11 17:10:56 790

原创 物联网-云开发(Tlink云、机智云、百度云、阿里云等)

目前市面上可以供使用的云平台有很多,TLink,YeeLink(停止服务),机智云,阿里云、氦氪云、深智云、百度云、青莲云、云智易、易微联、涂鸦云、传感云、中移物联、乐为物联等。其中对开发者比较开放的要属 TLink 和机智云;这里介绍下Tlink和百度云,有关机智云和阿里云资料可以通过下面链接下载Tlink源码:https://download.csdn.net/download/zdw68...

2018-09-20 20:33:28 9694 3

原创 STM32CubeMx-ADC

本章通过两个例程介绍STM32的模数转换器(ADC),第一个通过ADC采集内部温度传感器通道电压,然后得出MCU内部温度。第二个通过DMA的方式采集两个ADC通道电压。1.ADC本章程序在串口printf工程的基础上修改,复制串口printf的工程,修改文件夹名。击xxx.ioc打开STM32cubeMX的工程文件重新配置。ADC1外设选择温度传感器通道。ADC1配置如下,选择默认...

2018-09-09 20:43:22 12397 3

原创 STM32Cube-直接存储器访问(DMA)

在USART章节讲解了串口的轮询和中断模式,这一章介绍一下通过DMA模式控制串口传输。直接存储器访问 (DMA) 用于在外设与存储器之间以及存储器与存储器之间提供高速数据传输。可以在无需任何 CPU 操作的情况下通过 DMA 快速移动数据。这样节省的 CPU 资源可供其它操作使用。说白了DMA就是一个搬运工,将数据从一个地方搬到另一个地方而不需要CPU处理。作为一个搬运工,要他正常工作必须...

2018-09-09 16:39:20 1241

原创 STM32Cube-USART

本章以串口为例讲解,HAL 库轮询,中断,DMA 三种编程模型。1.前情回顾       在串行通信中,一个字符一个字符地传输,每个字符一位一位地传输,并且传输一个字符时,总是以“起始位”开始,以“停止位”结束。在进行传输之前,双方一定要使用同一个波特率设置。波特率就是每秒钟传输的数据位数。       常用的两种基本串行通信方式包括同步通信和异步通信。我们通常使用的是异步通信.异步通...

2018-09-09 15:38:51 4590 1

原创 STM32Cube开发-PWM

上一章我们讲解了定时器的基本应用,以及定时器中断。这一章我们讲解通过定时器控制管脚输出PWM信号,控制LED实现呼吸灯。1.    PWM简介脉冲宽度调制(PWM),是英文“ Pulse Width Modulation” 的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。简单一点,就是对脉冲宽度的控制, PWM 原理如图所示: 上图就是一个简单的 P...

2018-09-08 21:21:34 5280 2

原创 STM32Cube-定时器中断

stm32的定时器功能非常强大,包括基本定时器,通用定时器以及高级定时器。 本章介绍定时器的基本应用,通过定时器中断控制LED闪烁,间隔1s.这一章我们在前一章GPIO的工程修改。复制GPIO的工程,修改文件夹名。点XXX.ioc击打开STM32cubeMX的工程文件重新配置。开启定时器TIM3,选择内部时钟。另外,关于HAL库API的使用方法可以到ST官网下载:https://www.s...

2018-09-08 17:30:11 7405

原创 STM32Cube-EXTI

这一章用上一章GPIO的工程修改。复制GPIO的工程,修改文件夹名。点击xxxx.ioc打开STM32cubeMX的工程文件重新配置。PA0管脚重新配置为GPIO_EXIT0模式。WAKEUP按键已经外部下拉,按下是PA0为高电平。在GPIO配置中配置PA0为上升沿触发。内部下拉,添加用户标签WAKEUP。  在NVIC(嵌套向量中断控制器)中,勾选EXIT Line0 int...

2018-09-07 21:53:32 1047

原创 STM32Cube-按键控制LED

STM32Cube 是一个全面的软件平台,包括了ST产品的每个系列。平台包括了STM32Cube 硬件抽象层(一个STM32抽象层嵌入式软件,确保在STM32系列最大化的便携性)和一套的中间件组件(RTOS, USB, FatFs, TCP/IP,  Graphics, 等等).直观的STM32微控制器的选择和时钟树配置微控制器图形化配置外围设备和中间件的功能模式和初始化参数C代码生成项目覆...

2018-09-07 20:34:26 8831 2

原创 STM32-ADC

1、12 位 ADC 是一种逐次逼近型模拟数字转换器。它有多达 18 个通道,可测量 16 个外部和 2 个内部信号源。各通道的 A/D 转换可以单次、连续、扫描或间断模式执行。 ADC 的结果可以左对齐或右对齐方式存储在16 位数据寄存器中。模拟看门狗特性允许应用程序检测输入电压是否超出用户定义的高/低阀值。ADC 的输入时钟不得超过 14MHz,它是由 PCLK2 经分频产生。...

2018-09-03 16:16:20 1429

原创 基于Linux下TCP/IP协议局域网聊天室

这两天写了聊天室,基于Linux下TCP/IP协议局域网聊天,可实现聊天、上下线提醒、在线列表、文件传输。服务器 server.c#include &lt;stdio.h&gt;#include &lt;stdlib.h&gt;#include &lt;string.h&gt;#include &lt;sys/types.h&gt;#include &lt;sys/stat.h&...

2018-08-01 17:22:50 1930 2

原创 数据结构-单链表建立

顺序表是一组连续的存储单元来依次存储线性表中的结点,而链表是用一组任意的存储单元来存放线性表中的结点,这组存储单元可不连续分布在内存中的任何位置上。因此,链表中结点的逻辑顺序与存储顺序不一定相同。为了体现各结点存储单元之间的逻辑关系,再存储每个结点的同时,还必须存储与之联系的相邻结点的地址信息,这个信息称为指针或链。在C语言中,可以用指针实现。根据不同的链接方式,链表可以分为单链表,循环链表和双向...

2018-06-06 21:41:06 12194 2

原创 数据结构-顺序表

顺序表是最简单最自然的存储方法,它是将顺序表中的结点按逻辑顺序依次存放在一组地址连续的存储单元中,也就是说,顺序表的逻辑顺序与物理顺序是一致的。一般情况下,顺序表中的所有结点的类型是相同的,也就是说每个结点所占的空间是相同的。设结点所占的空间大小为L,如果顺序表中有n个结点(顺序表的长度为n),则顺序表所占空间大小为n*L。但是由于顺序表中的结点数是不确定的,其内存空间也不确定,因此可事先分配一个...

2018-06-06 17:33:58 1292

原创 基于STM32-按键输入与八种IO口模式

按键检测使用到 GPIO 外设的基本输入功能, 按键机械触点断开、闭合时,由于触点的弹性作用,按键开关不会马上稳定接通或一下子断开,使用按键时会产生图 中的带波纹信号,需要用软件消抖处理滤波,不方便输入检测。这里再讲下八种IO口模式:1.模拟输入 我认为模拟输入最重要的一点就是。他不经过输入数据寄存器,所以我们无法通过读取输入数据寄存器来获取模拟输入的值,我认为这一点也是非常好理解的,由于输入数据...

2018-06-06 15:43:10 9057

原创 sizeof与strlen的区别

一、sizeof    sizeof(...)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。    它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。    由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小。实际上,用sizeof来返回类型以及静态分配的对象、结构或数组所占的空间,返回值...

2018-06-03 15:45:27 151

原创 摆动排序

给你一个没有排序的数组,请将原数组就地重新排列满足如下性质:nums[0] &lt;= nums[1] &gt;= nums[2] &lt;= nums[3]....请写一个函数实现此排序功能。 注意事项:请就地排序数组,也就是不需要额外数组格式:输入第一行输入一个带排序的数组nums,最后输出按照要求排序后的数组序列。样例输入nums = [ 3,5,2,1,6,4 ] 样例输出[ 1,6,2,...

2018-06-03 15:21:29 631

原创 K数和

给定 n 个不同的正整数,整数 k(k &lt; = n)以及一个目标数字。在这 n 个数里面找出 k 个数,使得这 k 个数的和等于目标数字,写一个函数实现找到不同的方案的数量。格式:输入第一行输入一个整数数组,第二行输入一个整数 k ,第三行输入一个整数 target最后输出使得数组中不同的 k 个数的和为 target 的种类。样例输入[ 1,2,3,4 ]k = 2target = 5样例...

2018-06-03 15:15:18 567

原创 基于STM32-蜂鸣器

1.蜂鸣器蜂鸣器是一种发声设备,被广泛用于计算机、打印机、复印机、报警器、电子玩具等。后面介绍定时器是会给大家说说利用蜂鸣器实现歌曲演奏。蜂鸣器分为有源蜂鸣器和无源蜂鸣器。那么什么是有源,什么是无源呢?这里的有源不是指电源的“源”,而是指有没有自带震荡电路,有源蜂鸣器自带了震荡电路,一通电就会发声;无源蜂鸣器则没有自带震荡电路,必须外部提供 2~5Khz 左右的方波驱动才能发声。 2.硬件介绍这里...

2018-06-01 13:09:42 29964 3

原创 基于STM32-跑马灯实现

我学习M3有一段时间,第一次写博客,通过博客分享自己学习的经验跟大家探讨同时提高自己对M3的认识。相信大家初学时第一个实验就是实现跑马灯,这里我就介绍下跑马灯的实现。1.首先讲下GPIOGPIO—general purpose intput output是通用输入输出端口的简称,简单来说就是软件可控制的引脚,STM32芯片的GPIO引脚与外部设备连接起来,从而实现与外部通讯、控制以及数据采集的功能...

2018-06-01 09:38:23 14180 1

阿里云oss c-sdk oss-demo

阿里云oss c-sdk oss-demo

2023-07-20

阿里云oss c-sdk交叉编译移植 oss-demo.tar.gz

阿里云oss c-sdk交叉编译,demo修改后文件

2023-07-20

字库制作软件和图片取模工具

这里面包括三个软件:单个字符和中文进行取模软件、中文字库制作软件、图片取模软件;同时自己还写了两份工具使用文档,很多地方都会用到这些软件

2019-04-11

机智云和阿里云开发资料

基于STM32F103ZET6机智云和阿里云开发资料以及MQTT协议手册

2018-09-20

基于Tlink云智能检测系统

基于Tlink云智能检测系统,通过网页和手机客户端查看各个传感器信息,并且可设置触发条件以微信或者短信方式发送

2018-09-20

STM32CubeMx-直接存储器访问(DMA)

在USART章节讲解了串口的轮询和中断模式,这一章介绍一下通过DMA模式控制串口传输。

2018-09-09

STM32Cube-USART

本章以串口为例讲解,HAL 库轮询,中断,DMA 三种编程模型。

2018-09-09

STM32Cube-PWM

上一章我们讲解了定时器的基本应用,以及定时器中断。这一章我们讲解通过定时器控制管脚输出 PWM 信号,控制 LED 实现呼吸灯效果。

2018-09-08

STM32Cube-定时器中断

stm32的定时器功能非常强大,包括基本定时器,通用定时器以及高级定时器。 本章介绍定时器的基本应用,通过定时器中断控制LED闪烁,间隔1s

2018-09-08

STM32Cube-按键控制LED

TM32Cube 是一个全面的软件平台,包括了ST产品的每个系列。平台包括了STM32Cube 硬件抽象层(一个STM32抽象层嵌入式软件,确保在STM32系列最大化的便携性)和一套的中间件组件(RTOS, USB, FatFs, TCP/IP, Graphics, 等等). 直观的STM32微控制器的选择和时钟树配置 微控制器图形化配置外围设备和中间件的功能模式和初始化参数 C代码生成项目覆盖STM32微控制器的初始化符合IAR™,Keil的™和GCC编译器。 对于新的产品设计,我们强烈推荐使用STM32Cube来加速你的开发过程,并为以后的产品平台移植打下良好的基础。这里讲解一些STM32Cube简单外设配置实验

2018-09-07

心率监测系统

基于STM32的心率监测系统,通过pulse sensor传感器测量心率值,显示在OLED上,当心率不正常就会报警。

2018-09-03

Xshell6和Xftp6免费版

Xshell6和Xftp6免费版,亲测可用,自己用来连接服务器和L虚拟机。

2018-08-07

基于STM32-跑马灯实现

基于STM32的跑马灯实现,比较简单,有需要的可以看看。

2018-06-01

模拟遥控功能

基于STM32F103实现的模拟遥控功能,类似万能遥控接收器,开发板接收任意遥控的红外再经过板子上的发射头发射出去。

2018-05-29

CD4011多谐振荡器

有CD4011构成的多谐振荡器,由Proteus仿真。有需要的可以下载学习学习。

2018-05-29

美的遥控红外编码与解码

基于STM32F103实现的美的空调的遥控功能,通过分析美的空调的外红时序图来进行编码与解码。

2018-05-28

智能小车(超声波·蓝牙·红外)

基于AT89C52制作的智能小车,可实现超声波避障和红外避障,通过红外遥控和蓝牙控制小车以及寻迹功能。

2018-05-26

智能家用安防系统

基于STM32实现的智能家用安防系统,通过OLED显示家中温度和湿度,家中没人时人体红外检测是否有人非法闯入,当发生火灾或者有人非法闯入警报铃会响起,同时会向外出主人发生短信告知家中的情况

2018-05-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除