- 博客(23)
- 资源 (7)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 简谈二维码(QRcode)的C语言生成,在单片机平台的实现
1)单片机嵌入式二维码(QRcode)生成2)单片机嵌入式二维码(QRcode)解码 二维码又称QR Code,QR全称Quick Response,越来越多的在生活中出现,作为一种标识,以其廉价简单方便的使用很快普及到生活的角角落落。像衣、食、住、行、社交等等,就连发这篇博客时,登录CSDN也是扫码登录,确实好用。而且这种增长趋势还在持续。 以往我们所使用...
2017-05-09 16:06:20
42415
76
原创 Ubuntu 突然不然联网解决方法
系统:Ubuntu 18.04虚拟机问题过程:之前Ubuntu 18.04虚拟机一直使用的好好的,突然连不了网,查了很多方法,包括设置桥接方式等,都没有解决。root@ubuntu:~# ping www.baidu.comconnect: Network is unreachableroot@ubuntu:~# ifconfiglo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netma
2021-04-24 12:50:24
468
原创 Ubuntu18.04 64位 安装arm-none-eabi 交叉编译工具链,提示No such file or directory”的问题
问题描述:在Ubuntu18.04 64位安装arm-none-eabi交叉编译工具链,安装完成后,设置好环境变量,执行arm-none-eabi-gcc命令,提示“No such file or directory”。问题原因:arm-none-eabi是32位的,而系统是64位的,所以不兼容。解决办法:安装32位运行库sudo apt-get install lib32ncurses5 lib32z1即可解决问题。...
2021-03-15 22:02:45
1095
原创 Python批量提取文档中的电话号码和邮箱
当你想批量提取文档(如简历)中的电话和邮箱,可以参考以下代码:import osfrom win32com import client as wcimport globfrom shutil import copyfileimport os.path,refrom pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreterfrom pdfminer.converter import PDFPageAggregator
2020-06-28 10:31:15
3631
4
原创 实用开放源代码库分享
干货分享:single_file_libs:具有最小依赖性的单文件公共域/开放源代码库。github地址:https://github.com/nothings/single_file_libs包括:数据结构、数学库、文件解析、图像解析、数据压缩、操作系统功能、调试、分析、测试甚至AI等等,非常全面,强烈建议收藏!!!...
2020-06-19 11:56:16
2506
原创 ARM各内核系列整型运算能力对比---DMIPS / MHz
DMIPS:Dhrystone Million Instructions executed Per Second (百万条整数运算指令/秒),主要用于测整数计算能力。ARM各架构整型运算能力对比(单位:DMIPS / MHz) A系列 R系列 M系列 其他 Cortex-A5 1.57 Cortex-R4F 1.6 cortex M0 0.9 ARM7 0.9 Cortex-A7 1.9 cor.
2020-06-05 10:22:01
32929
3
原创 IAR 实现类linux驱动模块框架module_init(init_fun)
其实在单片机上也能使用类linux驱动模块框架module_init(init_fun),从而给驱动管理提供了新的方式。boot.icf文件/*###ICF### Section handled by ICF editor, don't touch! ****//*-Editor annotation file-*//* IcfEditorFile="$TOOLKIT_DIR$\co...
2019-12-06 16:01:47
667
原创 IAR 的ICF文件之新建一个BLOCK
在IAR编译环境设置存储空间是通过“*.icf”文件来完成的。icf文件中:region >block >section修改前:/*###ICF### Section handled by ICF editor, don't touch! ****//*-Editor annotation file-*//* IcfEditorFile="$TOOLKIT_DIR...
2019-12-06 14:32:33
1044
原创 protobuf 环境搭建和使用过程。
1.为什么要用protobuf? protobuf 是 google 推出的平台无关、语言无关、可扩展的结构化数据序列化机制,为不同平台间的通讯数据解析,提供了简单高效的方法。支持所有常见语言(C/C++、Java、Python、OC、C#、JS、Ruby、Go、PHP、Dart)。不同于json、xml这种可读性强的数据格式,protobuf格式的数据是二进制格式无可读性,需要进...
2019-12-03 15:21:39
1355
1
原创 个人时间管理
关于上班时间引发的思考,假设平均每人每天上班路上花2小时(上班+下班路上),甚至有人上下班花4个小时都见过的。以平均每天2小时,每个月工作22天,一年12个月,来算一笔账: (1) 2 *22 *12 = 528 小时 。 ---你每年要花 528 小时在上下班路上。 按照每天除睡觉8小时外,有效活动时间为16小时计算。 (2) 528 ÷ 16 = ...
2019-11-26 15:36:34
378
1
原创 linux socket编程
阻塞方式设置(默认的):fcntl(conn, F_SETFL, fcntl (conn, F_GETFL,0)&~O_NONBLOCK);非阻塞方式设置:fcntl(conn, F_SETFL, fcntl (conn, F_GETFL,0) | O_NONBLOCK);
2019-11-11 16:16:27
229
原创 单片机嵌入式二维码解码识别
1)单片机嵌入式二维码(QRcode)生成2)单片机嵌入式二维码(QRcode)解码在我另一篇博客关于 “嵌入式二维码生成” 的博客里,经常会有小伙伴咨询关于单片机上做二维码解码的方法,其实直接利用单片机做解码基本是不可行的,不是速度慢就是内存不够,因为绝大多数单片机的资源是捉襟见肘的。因此本博主推出嵌入式二维码解码模组,需要在嵌入式环境做二维码解码的朋友,有福了。它体积小巧更易集...
2019-08-25 18:48:11
4766
原创 常见开源密码算法库
算法库 描述 简介 源码网站 OpenSSL 开源密码算法库,源码为C语言,提供基本的密码算法库和密钥和证书管理方法,广泛应用于网络设备间通信安全和身份认证等,功能非常强大,一般的计算机设备均有OpenSSL的身影。 ...
2019-07-12 17:59:50
4880
原创 命令行实现进度条
有时候需要在命令行实现进度显示,有个进度条就很直观,这里分享一段在命令行实现进度条的方法。#include <windows.h>#include <stdio.h>static const char *ponit[]={"\x20\x20", "\xA8\x87", "\xA8\x86", "\xA8\x84", "\xA8\x83", "\xA8\...
2019-03-22 18:04:35
4591
4
原创 arm-eabi(arm交叉编译器) 在ubuntu虚拟机上的安装方法
arm-eabi 交叉编译器:可以用来编译 Android ARM ,Xboot,RT-Thread等。 在ubuntu虚拟机上的安装方法:# 此处为获取7.3.1版本,您可获取其他版本或者通过链接直接下载wget https://releases.linaro.org/components/toolchain/binaries/latest-7/arm-eabi/gcc-linaro...
2019-01-17 17:29:17
607
原创 STM32 USB CDC 驱动问题
问题:STM32的 USB CDC 工程使用STM32Cube 生成,编译下载后,插上USB发现如下图问题:在设备管理器显示黄色感叹号,驱动不正常。原因: 由于SMT32 USB 部分的代码用到了 malloc 和 free 这种标准库(#include <stdlib.h>)中定义的内存管理接口 ,而使用这种函数的前提是在内存中开出大小确定的 Heap_Siz...
2018-07-16 20:09:34
6390
原创 飞思卡尔Kinetis系列单片机被锁住后,怎么解锁
Kinetis提供了相当可靠地知识产权保护机制;人为的给芯片上锁,这个对量产后的产品是必须的。但是,用户误擦写了芯片内部security的内存部分(0x400~0x40F),从而锁住了芯片;难道芯片就要报废了么,其实有解救办法。一旦芯片被锁,就是J-LINK等调试工具都没法下载程序,真是烦人。不过我们现在有解救办法了:在"J-Link Commander"中输入 “unlock k...
2017-09-21 18:14:09
7726
3
原创 fatfs移植和使用(在SPI_FLASH上建立文件系统)
文件系统对于嵌入式系统的重要性是不言而喻的,有了文件系统管理数据和外设变得方便许多,同时简化了应用的开发。今天我们来以在SPI_FLASH上建立文件系统为例,看看FATFS文件系统怎么移植和使用。需要准备的材料有:(1)FATFS文件系统源码(点此下载最新FATFS源码)。(2)单片机平台一个(内存越大越好)。(3)SPI_FLASH芯片一个(如:W25Q32)。FATFS是一...
2017-09-19 17:55:14
30835
48
原创 单片机上内存管理(重定义malloc &amp;amp;amp; free)de实现
在单片机上经常会需要用到像标准c库中的内存分配,可是单片机并没有内存管理机制,如果直接调用库函数(malloc,free...),会导致内存碎片越用越多,很容易使系统崩溃掉,这里分享一个自己写的适用于单片机的内存分配方法,具备轻量级的内存管理能力,有效减少内存碎片,提高单片机系统工作稳定性。 如下图,heap_start开始的地方,是我们存放用户数据的地方,在heap_end之前都是...
2017-08-25 16:36:33
4971
原创 嵌入式中 固化函数接口,并通过函数的入口地址来调用
在嵌入式开发中,经常需要将函数接口固化到Flash中的特定位置,供其他应用来调用。特别是层次分明的嵌入式开发(IAP编程),这种需求会变得更加强烈。今天介绍一种简单的方法,来实现这一功能。1、先来分析下,在同一块MCU上,要想让A程序调用B程序中的函数,首先得让A程序知道自己将要调用的这个函数,在B程序中的入口地址。那么我们是不是首先得在A、B程序之间做一个约定,将接口放在某一特定地址,让A程
2017-08-18 10:53:04
3216
4
原创 DDI DEV DRV 之间的关系
做底层驱动的人对这名词肯定不陌生,那么他们之间又有什么样的联系呢?DRV(Driver )指硬件驱动:这层是直接和寄存器打交道,也是和硬件接触最紧密的软件层。一般DRV层代码会由芯片供应商提供,我们只需要按照自己的需求修改。比如:擦除LCD的显示buffer。DEV(Device ):也不知道起个什么汉语名字给它,因为它正好处在 硬件驱动DRV和设备驱动接口DDI之间。它完成的功能是对DR
2017-03-17 09:55:28
2505
原创 第一次写博客
知道CSDN好久了,用CSDN也好久了,就是没有写过自己的经验。带着些许青春的躁动和对知识的崇拜,我这是要踏上一条不归路了吗?以前只是喜欢自己闷头钻研,现在还挺喜欢分享自己的新的体会。因为在我进步的道路上,没少受到互联网资源的帮助,所以我决定分享自己的经验心得,帮助和自己一样正在进步的“学者”。
2016-10-18 17:53:13
306
QRcode_源代码_(2017.12.12).zip
2019-07-25
PN512n官方手册
2017-05-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人