自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 linux之shell脚本

1、shell脚本简介 shell脚本是与Windows/Dos下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或管理用的,但是它比Windows下的批处理更强大,比其他编程程序编辑的程序效率更高,它使用了Linux/Unix下的命令。 shell和shell脚本的区别? 确切一点来说,shell就是一个命令行解释器,它的作用就是遵循一定的语法将输入的命令加以解释并传给系统,它为用户提供了一个向linux发送请求以便运...

2020-08-27 09:55:20 5192 1

原创 linux下的常用工具

1、编辑器 linux中常用的编辑器主要是gedit编辑器和vim编辑器,接下来主要对vim编辑器进行描述。 vim编辑器有四种模式:①命令模式;②插入模式;③底行模式;④可视模式。 (1)命令模式 打开文件默认进入命令模式 命令: ①文本删除操作 d0:删除从光标前一个字符到行首内容...

2020-08-26 19:58:39 333

原创 STM32之IIC通信

1、IIC总线介绍 IIC(Inter-Integrated Circuit)总线是一种由PHILIPS(飞利浦)公司在80年代开发的两线式串行总线,用于连接微控制器及其外围设备,IIC通信是半双工通信。 IIC通信的主要特点有: (1)并行总线IIC总线协议转换器 (2)多主机功能:该模块既可做主设备也可做 从设备 (3)IIC主设备功能:①产生时钟;②产生起始和停止信号 (4)IIC从设备功能:①可编程的II...

2020-08-22 14:58:52 3815

原创 Modbus通信协议

1、Modbus通信协议介绍 Modbus通信协议是OSI模型第7层上的应用层报文传输协议,它在连接至不同类型总线或网络的设备之间提供客户机/服务器通信,OSI模型见图1.1。图1.1 Modbus是一个请求/应答协议,并且提供功能码规定的服务,modbus功能码是modbus请求/应答PDU的元素。 Modbus通信栈见图1.2所示。图1.2 Modbus缩略语:ADU 应用数据单元HDLC 高级数据链路控制...

2020-08-21 11:20:46 1325

原创 STM32之485通信

1、RS-232/422/485协议描述 RS-232通讯的最大传输距离在不增加缓冲器的情况下可以达到15m左右,传输距离较短,所以RS-485与RS-422通讯方式就诞生了。 RS-232、RS-422与RS-485最初都是由电子工业协会订制并发布的,RS-422是由RS-232发展过来的,主要是解决RS-232传输距离短和速率低的缺点,RS-422定义了一种平衡通信接口,将传输速率提高到10Mbps,在速率低于100kbps时传输距离可以延长到4000英尺(大约1219米),并允许在...

2020-08-21 09:32:40 6097

原创 linux内核烧写

本文以友善之臂产品tiny4412为例,进行内核的烧写,以SD卡启动方式为主。拷贝源码并解压得到linux-3.5tar -xvf linux-3.5-20141114.tarcd linux-3.5安装ncurses-dev库apt install ncurses-dev(若无法获得锁,重启虚拟机即可)打开配置菜单make menuconfig注意:若打不开配置菜单,可能需要缩小字体,因为菜单界面需要至少有19行和80列。对System Type中进行以下

2020-08-19 13:05:16 761

原创 STM32之实时操作系统(FreeRTOS)

1、FreeRTOS简介FreeRTOS是一个迷你的实时操作系统内核,作为一个轻量级的操作系统,功能包括:任务管理、时间管理、信号量、消息队列、内存管理、记录功能、软件定时器、协程等,可基本满足较小系统的需要。由于RTOS需占用一定的系统资源,尤其是RAM资源,只有μC/OS-II、embOS、salvo、FreeRTOS等少数实时操作系统能在小RAM单片机上运行,相对μC/OS-II、embOS等商业操作系统,FreeRTOS操作系统是完全免费的操作系统,具有源码公开、可移植、可裁剪、调度策略灵.

2020-08-18 19:58:16 7225

原创 STM32之基本定时器与PWM

1、TIM通用定时器介绍 通用定时器是一个通过可编程预分频器驱动的16位自动装载计数器构成。 它可以应用于多种场合,包括测量输入信号的脉冲长度(输入捕获 )或者产生输出波形(输出比较PWM),使用定时器预分频器和RCC时钟控制器预分频器,脉冲长度和波形周期可以在几个微秒到几个毫秒间调整,而且每个定时器都是完全独立的,没有互相共享任何资源,因此这些定时器可以一起同步操作。2、TIM定时器主要功能 在STM32F103系列中,通用定时器主要有TIM2、TIM3、TIM4、TIM5定时器...

2020-08-17 14:42:36 1367 1

原创 STM32之SPI总线协议

SPI总线协议是一种串行外围设备接口,是Motorola公司推出的一种三线同步串行接口技术,SPI是一种高速的、全双工、同步的通信总线,并且在芯片上的物理接口只需要占用4根线,节约了芯片的管脚。SPI是一个环形总线结构,由SCK、CS、MOSI、MISO构成,时序也很简单,主要是在SCK的控制下,两个双向移位寄存器进行数据交换。SPI主要特点有:可以同时发送和接收串行数据; 可以当作主机或从机工作; 提供频率可编程时钟; 发送结束中断标志; 写冲突保护; 总线竞争保护。物理接口含义:

2020-08-16 17:33:59 1093

原创 STM32之ADC-模数转换

1、 ADC简介STM32F103系列有3个ADC,精度为12位,ADC是一个逐次逼近型模拟数字转换器,且每个ADC有18个通道,可以测量16个外部和2个内部信号源,每个通道的A/D转换可以进行单次、连续、扫描或间断模式执行,ADC的结果可以左对齐或右对齐方式存储在16位数据寄存器中,ADC的输入时钟不得超过14MHZ,否则可能不准。也就是说,如果按照默认设置PCLK2为72MHz,此时应为6分频或者8分频,见图1.1。图1.12、 ADC主要特征(1)12位分辨率(精度)(2)转换结束、注入转

2020-08-15 11:08:41 1192

原创 标准字符设备创建流程

标准字符设备创建流程一、创建框架、创建核心结构体指针并开辟空间#include<linux/kernel.h> #include<linux/module.h> structcdev*pcdev=NULL; staticint__inite_book_register_init(void) { pcdev=cdev_alloc(); if(pcdev==NULL) { pr...

2020-08-05 17:28:20 217

原创 Linux内核编程之内核及文件系统制作第二部分:NFS文件系统搭建

二、NFS文件系统概念及其原理 NFS文件系统是可以用在不同操作系统之间通过网络传输文件,在嵌入式开发中,NFS主要是用作主机与嵌入式设备之间无缝传输文件,这样做的原因主要是因为设备的存储空间有限,所以使用此文件系统扩展嵌入式设备的存储空间,简单来说就是NFS服务器(也就相当于PC端)给NFS客户端(嵌入式设备)通过网络提供了存储空间,使得NFS客户端能够访问到服务器的文件并进行相应操作,当然这也和之后所说的Linux系统编程之文件系统的搭建有关系,之后会写到。 NFS文件系统服务主要...

2020-07-19 01:33:56 160

原创 Linux内核编程之内核及文件系统制作第一部分:安装交叉编译器

一、根文件系统制作1.1 准备工作 系统:Ubuntu 16.04系统 linux内核:4.10.0 交叉编译工具包:arm-linux-gcc 4.5.1 busybox源码包:busybox-1.26.21.2 交叉编译器 1.2.1 交叉编译器的简介 (1)本地编译 本地编译即为在当前平台编译出来的程序,只能在当前平台或同平台下运行,例如在当前PC端直接编译出来的程序,直接在当前环境下运行(如X86CPU运行...

2020-07-17 23:15:29 236

原创 STM32与FreeRTOS编程,造成的单片机锁死现象

32单片机在使用FreeRTOS编程时,有时单片机会出现锁死现象,造成无法再下载程序的情况出现,这是因为在进行FreeRTOS配置中(配置文件为FreeRTOSConfig.h),使能了低功耗 tickless 模式,即(#define configUSE_TICKLESS_IDLE 0 //置 1:使能低功耗 tickless 模式;置 0:保持系统节拍(tick)中断一直运行),导致了单片机被锁死,解决方法是使用J-link烧写程序时,先按下复位键,在烧写代码的同时松开复位键,即可解决,但是解决...

2020-07-17 20:15:50 1186 1

原创 Linux系统编程之启动流程分析

一、Linux嵌入式系统启动方式主要有: (1)NandFlash启动 (2)SD/MMC卡启动 (3)EMMC启动 (4)USB设备启动二、U-boot概念: U-boot是常用的一种嵌入式操作系统启动程序,是著名的开源BootLoader程序,可以启动Linux、Android等系统。 作为BootLoader,u-boot最基本的作用就是: (1)把操作系统镜像从介质(flash、nand...

2020-07-16 20:03:52 359

空空如也

空空如也

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

TA关注的人

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