自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(230)
  • 资源 (17)
  • 收藏
  • 关注

原创 [8266]1.开篇

原创 比特 找小黑 让我们一起用esp8266做一些好玩的东西吧ESP8266简介ESP8266是上海乐鑫出的一颗SOC,最近几年非常的火爆。我在官网上看了,8266主页的介绍很简单:ESP8266低功耗、高集成度的 Wi-Fi 芯片仅需 7 个外围元器件超宽工作温度范围:-40°C 至 +125°CESP8285 - ESP82...

2020-02-20 00:16:45 550

原创 [xhOS]04OS点亮LED--可能是彻底理解操作系统最容易的一次

我们已经可以用裸机点亮LED了,接下来我们要使用OS点亮LED了。现在的问题是我们还没有OS,哈哈哈哈哈哈,为了学习,还是从0写一个XHOS吧。我们是为了介绍OS而介绍OS,正常流程应该是先说说裸机和OS的优缺点(详情点击这里),然后再引入OS。现在假设大家已经知道了一些必要的知识,来看看我们的OS(当然是非常简单的)。.├── Makefile // 编译脚本├── start.s // 启动文件├── user_main.c // 用户代码,main函数在此├──

2020-11-23 20:59:23 557

原创 [esp8266]网页控制GPIO

网页控制GPIO是小黑固件最基础的一个应用,可以通过手机或者电脑的浏览器控制GPIO的状态(有电ON或者没电OFF)。通过控制GPIO,就做了一个无线开关;可以控制LED灯,控制继电器,从而控制各种设备的开关,非常适合DIY。如果你还不清除小黑是什么,以及它如何使用,看这里:[ESP8266]小黑固件是什么[ESP8266]小黑固件详情快来试试在系统固件中选择APP>网页控制GPIO>远程更新APP。大概30秒更新完成(更新时间根据网络情况可能不同)...

2020-10-25 15:32:10 819

原创 比特说串口编程

要说一种植物,从种子发芽开始.要说计算机,从源头开始.在1.X系列的文章中,我们从最开始的灯泡的例子开始,一步步深入,知道了CPU是怎么工作的,配合内存可以自动工作。前面的内容基本上是CPU工作原理的完整轮廓了。我们知道现在使用的各种形态的计算机除了CPU还有很多别的设备,这些所有的设备都不在CPU里面,都是外部设备,简称:外设。常见外设有:键盘,鼠标,屏幕,或者触摸屏......这些都是按照功能划分的。我们关注的是计算机的工作原理,对外设的分类当然按照工作原理划...

2020-10-03 11:36:42 273

原创 git常用操作--分支

工欲善其事,必先利其器分支分支是简单的概念,和日常生活中用到的一样,比如说头发分杈:从一根开始分成了2根甚至更多,每一个分杈就是一个分支。git的分支功能让它的使用方便了很多。每一个分支是相互独立的环境,你修改了一个分支,别的分支不会受到影响。最大的好处就是,你可以分别在不同的分支干不同的事情,而且互相不受影响。比如你在电脑上写代码,突然手机收到推送“美国和伊朗打起来了”,你的注意力从代码切换到手机的新闻,注意力从写代码切换到看手...

2020-08-21 19:04:44 317

原创 git常用操作及原理--本地

​工欲善其事,必先利其器git是跨平台的,在linux、windows、mac上都能使用的优秀的版本管理工具。git干啥的?为什么要用git?话不多说,看图:你是否也有这样的遭遇,文件有很多个版本,管理这些版本使你快要崩溃。git就是解决这个问题的,它把所有的修改记录下来,你可以自由的修改,不怕改错,因为你可以随时返回到某个历史版本。git如何管理文件那git是如何管理文件的呢?git是以目...

2020-08-21 19:03:11 189

原创 搭建gitserver并实现git push 自动部署

git push自动部署能大大提交开发部署效率git 自动部署分为2类,git server和部署不在同一个服务器上(比如通过github部署) git server和要部署的目录在同一个服务器上。这里记录第2种情况,说明如何实现在远程服务器上搭建git server并实现git push自动部署。0. 整体框架我这里服务器的IP为 192.168.1.123, 工作流程如下:在本地PC 的/home/my/website上开发, 开发完成后push到服务器上的git仓库/home

2020-08-14 14:14:19 256

原创 ubuntu服务器新建用户,并且免密码ssh登陆

1 在服务器新建用户(注意使用adduser,不要使用useradd)这里创建xiaohei用户,根据提示完成信息确认就创建成功了server$ sudo adduser xiaohei2 设置免密码登陆2.1 本地PC生成密钥(一路回车默认即可)PC$ ssh-keygen查看生成的密钥PC$ ls ~/.sshid_rsa (私钥)id_rsa.pub (公钥)2.2 上传公钥到服务器PC$ ssh-copy-id -i ~/.ssh/id..

2020-08-14 11:45:12 532

原创 [rsp8266]疫情期间我开发了小黑,很多人却说他看不懂

-------------------------------------------------------------------让我们一起用esp8266做一些好玩的东西吧疫情期间我开发了小黑,很多人却说他看不懂,那让我们好好的了解一下它吧。图片均来源网络,侵删它不是一条狗我的公众号叫找小黑,其实我原来有个小黑,是机器...

2020-03-26 19:52:36 660 1

原创 [8266]小黑固件正式发布

让我们一起用esp8266做一些好玩的东西吧小黑固件是什么小黑固件是作者比特针对ESP8266开发的一个基于浏览器控制的固件。该固件兼容所有ESP8266模块和开发板。为了方便使用,该固件完全基于浏览器(手机或电脑均可)通过内置的web服务器完成wifi配网、串口发送数据(同时实现了一个控制MP3模块的功能)、PWM控制舵机、灵活的GPIO控制(可配置不...

2020-02-22 09:29:20 791

原创 [8266]3. hello world

原创 比特 找小黑 让我们一起用esp8266做一些好玩的东西吧一看到标题,是不是就知道我要干什么了,哈哈哈,和很多编程语言一样,先来个hello world。上节我们说到测试一个工程是:#拷贝官方的hello world工程cd~/esp//这个是拷贝到esp目录下,实际上可以拷贝到任何地方cp -r $IDF_PATH/example...

2020-02-20 00:26:50 224

原创 [8266]2.开发之前要了解的事实

原创 比特 找小黑 让我们一起用esp8266做一些好玩的东西吧再次认识ESP8266 ESP8266EX内置超低功耗 Tensilica L106 32-bit RISC 处理理器器,CPU 时钟速度最⾼高可达160 MHz,⽀支持实时操作系统 (RTOS) 和 Wi-Fi 协议栈。 ESP8266EX内置64KB iRAM(用来执行...

2020-02-20 00:21:32 298

原创 在Linux下掌握arm和操作系统(3)--点亮LED

说了那么多,我们终于开始写代码了.毫不例外,我们从世界上最著名的程序"helloword"开始,硬件的"helloword"就是点亮一个LED.硬件原理图:从原理图看出,LED (D1)连接电源和地,上电就亮. LED D2连接VCC和PC13,所以我们只要给PC13引脚一个低电平就可以点亮这个LED.准备点灯俗话说,让我点亮一个LED我就能上天. 看把你能的,LED 可不...

2019-01-06 18:15:22 714 2

原创 在Linux下掌握arm和操作系统(2)--开发环境最小系统

开发环境最小系统是指,搭建开发环境所需的最小部件.1,开发板,2.linux系统,3,USB转串口.1.先说开发板我使用的是STM32F103C8T6核心板,长这个模样:就中间这货,淘宝上也就在十几块钱,从上图看这功能还是很强大的嘛.而且STM32F103C8T6说是有64K flash,可实际上有128K.意外的惊喜.2.linux系统,我是Ubantu 16.04,在电...

2019-01-06 17:17:41 1059 1

原创 在Linux下掌握arm和操作系统(1)--stm32和arm

大家都知道,arm是卖IP,授权给芯片厂商,芯片厂商再增加外设等组成CPU/MCU/SOC生产销售。arm的发展历程网络上太多了,我也不多说。只要我们明确目前arm主要产品是armv7,armv8架构的。其中armv7又分为armv7-A,armv7-R,armv7-M,而armv8 只有armv8-A。A系列主要面向高端应用,R系列主要面向实时类的场景,M系列是面向低端控制器场景。而我...

2019-01-06 15:30:39 503

原创 在Linux下掌握arm和操作系统(0)--开篇闲聊

很明显我是标题党,真正的标题是《在Linux下学习stm32和NUTTX RTOS》。由于stm32也是ARM的,NUTTX也是操作系统,stm32和NUTTX有着arm的基本特征,NUTTX有着操作系统的基本特征,如果把这两者搞明白了,你会发现其他的arm芯片和操作系统似曾相识。至于为什么选这两者结合,原因有一下几点:1,nuttx对stm32支持的特别好,2.stm32资料很多,很容...

2019-01-03 20:27:24 381

转载 回调函数以及钩子函数的概念

钩子函数,只是回调函数的一个特例,是windows的东西。不关心windows只看后面例子即可。钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗口前,钩子程序就先捕获该消息,亦即钩子函数先得到控制权。这时钩子函数即可以加工处理(改变)该消息,也可以不作处理而继续传递该消息,还可以强制结束消息的传递。对每种类型的钩子由系统来维护一

2016-08-12 17:54:41 500

转载 Linux内核编译 CONFIG_MODVERSIONS 作用

关于Linux内核编译 CONFIG_MODVERSIONS 作用的两篇文章整理。一般情况下,如果没有选择CONFIG_MODVERSIONS,这些符号是正常的字串;如果选择了CONFIG_MODVERSIONS,这些符号就会在后面加一段校验字串。这样做的目的是避免模块不正确加载情况下,使得Linux内核崩溃。一、如果内核选择了CONFIG_MODVERSIONS选项,你的

2016-08-08 08:44:36 5461 3

转载 Kernel Symbols and CONFIG_MODVERSIONS

Kernel Symbols and CONFIG_MODVERSIONS了解modversion挺不错的文章,后面有linuxforum的朋友翻译的中文版------------------------------------- Kernel Symbols and CONFIG_MODVERSIONS ------------------------------------

2016-08-08 08:44:02 611 3

转载 Linux驱动开发 -- 打开dev_dbg()

linux设备驱动调试,我们在内核中看到内核使用dev_dbg来控制输出信息,这个函数的实质是调用printk(KERN_DEBUG )来输出打印信息。要打开这个开关需要下面两步。     1、打开调试开关:你调试的文件中必然包含了 linux/device.h,或者linux/paltforam_device.h,后者包含了前者,在包含此头文件之前,使用#define D

2016-08-05 16:21:25 745

转载 linux debug开关 dev_dbg

1、最近在写I2C下EEPROM的驱动程序,但发现使用i2c_new_probed_device函数无法枚举到设备,于是想调试该函数(位于driver/i2c/i2c-core.c内),看到其中有些调试信息如下:i2c_new_probed_device(...){    ... if (addr_list[i] == I2C_CLIENT_END) {  dev_dbg(

2016-07-21 17:43:03 561

转载 多媒体技术基础

--------------http://zzjlzx.blog.chinaunix.net/uid-23069658-id-3995439.html声音一个最基本的常识就是“它是一种能量”,初中物理课上我们也学过声音的三要素分别是音色、音调和响度。    音色:简单理解,就是一种声音的固有特征。比如,电子琴和小提琴发出的声音是有明显区别的,笛子和古筝也有各自的声音特征。有些声音模仿秀的选

2016-07-21 09:53:11 966

转载 Linux声音系统

Linux声音系统有些混乱,它有三套音频驱动: OSS (Open Sound System), 商业版的OSS,和ALSA (Advanced Linux Sound Architechture)。 所以底层驱动有OSS和ALSA两套API。一、声卡的工作原理音频驱动的主要作用是驱动声卡工作,所以也叫声卡驱动。 声卡的主要作用是完成数模转换。 当电脑播放声音时,将数字数据送到声卡

2016-07-21 09:22:50 522

转载 Android USER 版本与ENG 版本差异

Google 官方描述: USER/USERDEBUG/ENG 版本的差异, 参考alps/build/core/build-system.html 的详细说明eng This is the default flavor. A plain make is the same as make eng.* Installs modules tagged with: eng, debug, use

2016-07-06 13:23:15 595

转载 使用resize2fs调整ext4分区大小

安装公司samba服务器时对磁盘需求量估计不足,原本分的只有100GB,使用一段时间后磁盘就达到了 86%的使用量,  这都什么人啊用这么大量的磁盘。。。。现在又不想重新格式化磁盘,通过google找到了无损调整磁盘分区大小的方法。 现记录如下,以备后用。 我的情况  将一块硬盘分成了两个区,一个100GB 一个60GB  ,只使用了前100GB空间的内容,后面的分区没有挂

2016-05-30 09:15:55 50513 1

转载 LINUX+APACHE+MYSQL+PHP安全加固配置说明

人的安全意识放在首位,杜绝一切弱口令 !以下是linux+apache+mysql+php基线配置安全加固的详细说明##########################1.apache禁止列目录:cd /opt/lamppvi etc/httpd.conf# 就是这一行,只去掉indexes也可#Options Indexes FollowSymLinksO

2016-05-16 13:26:46 2908

转载 alsa-utils工具的使用

下载地址:http://www.alsa-project.org/main/index.php/Download源码包安装方法:# tar zxvf alsa-utils-1.0.6.tar.gz# cd alsa-utils-1.0.6# ./configure# make install三.alsa-utils工具的使用alsa-utils包含的工具有:al

2016-05-13 13:49:13 580

转载 UART和RS232/RS485的关系是什么?

串口通讯是电子工程师和嵌入式开发工程师面对的最基本问题,RS232则是其中最简单最常用的通讯方式。但是初学者往往搞不清有关的名词如UART和RS232或RS485之间是什么关系,因为它们经常被放到语句中同等的位置使用。在百度搜索二者的区别,可以看到排在最前面的答案充斥着混淆的概念。就此,谈谈我对这几个概念的理解,希望能帮初学者厘清它们之间的关系。~~       通讯问题,和交通是

2016-04-25 14:00:57 421

转载 ppp拨号脚本配置

ppp拨号脚本配置摘要    本文主要介绍了嵌入式Linux系统下使用pppd 2.4.4来进行PPP拨号需要使用的脚本是如何配置的,配置项的含义,同时也说明了如何来配置参数,实现ppp拨号上网。一.问题提出    嵌入式Linux操作系统下,如果要进行PPP连接,就需要配置拨号要使用的连接脚本。这些脚本参数就决定了PPPD的行为,会对PPP连接产生很大的影响。所以需要对这

2016-04-22 17:33:42 2121

转载 javascript特性杂谈

版权声明:本作品由九天雁翎创作,采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可。http://www.jtianling.com目录(?)[+]最近语言学习有些疯狂, 从Ruby到Lisp, 然后是C#, 既然已经疯狂了, 就顺面学习一下JavaScript吧. 对javascript的印象一直不佳, 从骂脏话最多的使用者, 到使用

2016-04-20 14:33:30 326

转载 linux ppp上网的文章

作者:admin 来源:未知本文将说明如何在Linux下用CDMA modem完成拨号上网的工作。首先,读者需要对PPP协议有初步的了解,比如,读者至少应该知道LCP和NCP是什么,以及PAP和CHAP是做什么的;其次,读者可能需要安装pppd和chat两个工具,通常系统中默认都是安装了这两个程序的。如果没有安装pppd,可以到http://ppp.samba.org/下载最新

2016-04-07 16:15:38 466

转载 CDMA2000 3G Chat 拨号

使用CDMA2000 3G拨号加载驱动[plain] view plaincopyinsmod usbserial vendor=0x#### product=0x####  查看驱动是否加载正常查看驱动[plain] view plaincopyT:  Bus=01 Lev=02 Prnt=02 Port=0

2016-04-07 13:20:33 880

转载 电信3G linux

物联网的发展,嵌入式节点具备3G无线上网功能是个必不可少的功能,奈何网上的资料多数以WCDMA为主,电信的evdo资料不是很多,笔者经过一番实验,搜寻了一些网站,终于在开发板上,将EVDO模块(中兴MC8630)成功拨号上网,现分享步骤如下:3G模块的速度非常快,所以普通的UART串口已经不能满足速度,所以会通过芯片的USB口来进行数据交互。硬件连接这里就忽略了,有兴趣的朋友可以买个usb

2016-04-06 14:50:27 654

转载 设备树使用手册

This page walks through how to write a device tree for a new machine. It is intended to provide an overview of device tree concepts and how they are used to describe a machine.本文将介绍如何为一个新机器编写设备树。我们准

2016-03-24 11:23:55 523

转载 Git与Repo入门

版本控制  版本控制是什么已不用在说了,就是记录我们对文件、目录或工程等的修改历史,方便查看更改历史,备份以便恢复以前的版本,多人协作。。。一、原始版本控制  最原始的版本控制是纯手工的版本控制:修改文件,保存文件副本。有时候偷懒省事,保存副本时命名比较随意,时间长了就不知道哪个是新的,哪个是老的了,即使知道新旧,可能也不知道每个版本是什么内容,相对上一版作了什么修改了,当

2016-03-07 14:42:14 367

转载 const在函数前与函数后的区别

一   const基础         如果const关键字不涉及到指针,我们很好理解,下面是涉及到指针的情况:         int   b   =   500;     const   int*   a   =   &b;              [1]     int   const   *a   =   &b;              [2]     in

2016-03-01 09:17:45 336

转载 USB原理----

USB作为目前计算机的最广泛使用的外设接口,让我们变得越来越便利。     USB的设计理念与传统的外设接口设计有很大区别,一般的外设接口设计仅仅规定通信过程的实现,很少涉及到通信内容本身。而USB协议则对通信内容的解析有很多规定,因此其协议内容比一般的协议都复杂,即使你理解TCP/IP协议,但是当面对USB协议时,也会感觉一头雾水。     正因为USB实现目标是多种不同类型和速

2016-02-24 17:35:17 537

原创 安卓源码下编译

在安卓源码下编译内核模块hello.c/* test hello.c */#include #include static int __init test_module_init(void){ printk(KERN_DEBUG "test_module_init"); return 0;}static void __exit test_module

2016-02-23 13:16:59 765

转载 Android.mk的用法和基础

一个Android.mk file用来向编译系统描述你的源代码。具体来说:该文件是GNU Makefile的一小部分,会被编译系统解析一次或多次。你可以在每一个Android.mk file中定义一个或多个模块,你也可以在几个模块中使用同一个源代码文件。每个模块属下列类型之一:  1)APK程序,一般的Android程序,编译打包生成apk文件  2)JAVA库,java类库,编译打包生成

2016-02-23 10:57:08 396

原创 mm编译 问题

mm编译一个hello.c文件为可执行文件时出现错误 make: Entering directory `/home/root_work/GF06-main/android' make: *** No rule to make target `out/target/product/generic/obj/lib/crtbegin_dynamic.o', needed by`out/targ

2016-02-23 10:47:36 1555

uart_any_baudrate.c

这是linux下的串口工具, 支持任意波特率. 用法简单: ./uart /dev/ttyUSB0 12345

2019-09-14

根据3点坐标求圆心和半径..c

c语言实现的根据3个点的(x, y)坐标值,计算出圆的圆心和半径的算法.

2019-09-14

pwm.tar.gz

linux pwm 驱动模板 ,包括 dts文件和linux驱动源码, 微调即可使用.

2019-09-14

i2c.tar.gz

linux i2c驱动访问 mpu9250 ,包括 dts文件和linux驱动源码

2019-09-14

spi.tar.gz

linux spi 驱动访问 mpu9250 ,包括 dts文件和linux驱动源码

2019-09-14

linux kobject kset bus.tar.gz

linux kobject kset测试代码,以及根据kobject,kset写了符合linux设备驱动模型的ymj总线

2019-09-14

menuconfig.tar.gz

和linux內核编译一样的menuconfig 模板, 可以在终端显示图形界面的配置.

2019-09-14

stm32f103c8t6_linux_naked.tar.gz

在linux下进行stm32 c8t6 makefile开发, 不依赖任何库.

2019-09-14

USB 开发大全

USB开发大全 第4版。

2016-04-20

WAV 格式歌曲

WAV 格式音频,超过60M,压缩后刚好。

2016-04-20

1080p bmp

1080p的 bmp格式的图片

2016-04-20

Python 英文原版

Python 英文原版,相当不错。

2016-04-19

H5 超级玛丽小游戏源码

强烈推荐的H5小游戏源码,给人不一样的感觉。

2016-04-19

CCNA 网络基础

讲网络基础,非常好的。

2016-04-19

android 框架揭秘

特别好的关于android框架的书,推荐指数5颗星。

2016-04-19

Can 测试程序

liux can 收发测试程序,可以很方便的测试

2015-12-04

空空如也

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

TA关注的人

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