自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 资源 (9)
  • 收藏
  • 关注

原创 大津法优化之在飞卡智能车中的应用

此优化算法是本人前两年参加智能车比赛用总钻风摄像头亲自验证过的(分辨率为188*70),亲测只需2ms(逐飞给的例程是很常规的,网上都能找到,需要40ms不止把,根本无法直接使用,不知道优化了没,手动滑稽)。与鹰眼摄像头的硬件二值化不同,总钻风需要软件二值化。而大津法便是最为常见的一种自适应算法,效果也不错。网上资料蛮多,简单来说就是遍历0~255的灰度值,用该灰度值将一副图像分割为前景和背景(...

2019-12-29 23:38:48 6545 298

原创 编程习惯摘要

避免“未来编程”,不要总想着面面俱到,你不会知道你的面面俱到为后人减少麻烦还是增加麻烦。一次把事情做好是最低成本及最高效率定期训练编程题。ctrl+s即使有自动保存。编写前规划,功能模块化但不要太过细化,把握好度。变量的作用域范围不宜过大处理过程要有阶段性的结果,不能一蹴而就。打印日志要非常全面尽量使用标准库模块函数,因为您使用的是经过良好设计和测试的代码。...

2020-12-30 13:17:33 128

原创 循环创建多个子进程的注意点

关于fork系统调用注意fork后父进程会返回子进程PID,子进程返回0。所以程序中子进程就会break出循环不在fork,父进程在I=1,2,3的时候都会在fork的时候创建子进程,得到子进程的PID,然后在父进程中把返回的子进程pid给tmpid传出去。而i=5,显然只有一开始的父进程能满足,即bash进程。而i=0,1,2,3,4的时候,都是兄弟进程break出来的时候,兄弟没有在fo...

2020-05-05 01:16:59 532

原创 Linux驱动开发之传统方式实现字符设备驱动开发

目录目录项与Inodeopen函数做了什么常见数据结构(各个结构体通过函数联系。)file结构体cdev结构体(char device描述字符设备)file_operations结构体(上面两个都有它)字符设备驱动框架目录项与Inodeopen函数做了什么常见数据结构(各个结构体通过函数联系。)file结构体位于内核源码/include/fs.h文件f_op:存放与文件操作相...

2020-05-05 00:59:57 423

原创 Linux驱动开发入门基础

系统运行所需组件uboot、kernel(即内核)、设备树dtb、根文件系统。Uboot(下载模式和启动模式)Uboot是一个bootloader(注意发音low),一个比较复杂的裸机程序,为系统的启动做准备,用来启动linux或其它系统,linux一般是运行在DDR的,所以要将存放在SD/EMMC/NANDFLASH的zImage,uImage等系统镜像拷贝到DDR中,再去启动。我们也...

2020-05-02 17:22:08 3951

原创 Linux系统编程

线程(ps -Lf 进程ID)创建线程和进程使用的底层函数一样,都是clone。从内核里看进程和线程都是一样的,有各自独立PCB,但是PCB指向内存的三级页表是相同的。线程的栈不共享,以区分彼此。具体如下生产者消费者模型以互斥锁实现一句话描述:1.消费者去访问共享数据(比如链表,队列的元素),加锁pthread_mutex_lock(&mutex);2.判断发现没有元...

2020-04-29 17:06:09 650

原创 C++摘要

指针和引用int& ref=a;//ref就是引用,就是别名。编译器将其转化为int* const ref=&aint* p=a;//变量a的值等于指针p的值(指针p的值就是指针指向的地址)...

2020-04-05 01:58:18 413

原创 STlink V2使用笔记

ST-LINK/V2 是STM8 和STM32 微控制器系列的在线调试器和编程器。(这里记录STM32。STM8不太常用,开发环境可以为STVD,IAREWSTM8)使用STM32 ST-LINK Utility (安装驱动时会自动安装)-----该软件可以烧写目标板hex。步骤:ST-LINK V2 和STM32 目标板使用SWD 接口连接,并和计算机相连。taget、connect、fi...

2020-02-24 16:14:41 3689

原创 小电容通高频大电容通低频的理解

本文参考为什么电容通高频阻低频。。记录下个人理解并总结。1.电容的作用是通高频阻低频。高频的时候电容总是还没充满电,负半周期便到来,所以电流始终存在。低频的时候信号交流电负半周还没到来,电容已充满电便发生断路。2.理论上电容越大,能通越高的高频。但实际上电容超过1uF便大多为电解电容,有很大的电感成分(分布电感),使高频无法通过(所以要在大电容旁加小电容率高频)。因为电容太大,此时就算低频也总...

2020-02-13 00:01:03 10360

原创 Makefile编写笔记

用以下例子说明定义变量时的赋值符号“=”变量的值将会是整个makefile中最后被指定的值。“:=”不会使用后面定义的变量,只能使用前面已经定义好的name = zzkcurname := $(name)name = zuozhongkai--------------------------------------curname将产生不同结果。“?=”如果前面已经赋过值了,那...

2020-02-07 22:57:43 127

原创 嵌入式GNU汇编常用指令

特殊寄存器(cpsr和spsr)mrs:Move from Spential register to general Register(左边r右边特殊s)msr:Move from general Register to Spential register(存储通用寄存器的值到特殊寄存器)普通寄存器ldr:load registerstr:store register...

2020-02-05 21:17:08 281

原创 I.MX6ULL的Boot Rom启动方式

当 BOOT_MODE1 为 1, BOOT_MODE0 为 0 的时候此模式使能。芯片会执行内部的 boot ROM 代码,进行硬件初始化(内核、系统、某些外设时钟,为了加快执行速度会打开 MMU 和 Cache)然后从所选择的boot 设备(就是存放代码的设备、比如 SD/EMMC、 NAND)中将含头部信息的.imx(由.bin文件而来)拷贝出来复制到指定的 RAM 中,一般是 ...

2020-02-05 15:59:10 995

原创 指针随笔

举个例子。int a=3; 等式右边是常量,左边是变量。int *p;p=&a; 左边的是指针变量,右边的是指针(指针是地址)int c;错误:c=p(类型不一致) 正确c=*p指针的意义为什么不直接int p=&a; 而非要加一个符号“*”?1:使人明白p是指针变量而非变量(即p放的是可以指向其他内存单元的地址而不是任意的值)2.若失去”*“,在使用...

2020-02-02 22:03:11 188

原创 常用串行通信总线协议UART、IIC、SPI随笔

**1.UART**串口全称叫做串行接口,数据一位一位传输,两条线即可实现双向通信。嵌入式里面说的串口(COM接口),一般是指UART口,单片机的TXD、RXD是TTL电平(32是CMOS 3.3V),所以你得万变不离其宗的将其它信号转成TTL电平,只有这样给单片机下载程序才有可能成功!UART 外设就是串口的一种,UART 全称是 Universal Asynchronous Rece...

2020-01-31 14:21:11 1927

原创 舵机控制摘要

1.工作原理舵机是一种俗称,其实是一种伺服马达。控制信号由接收机的通道进入信号调制芯片,获得直流偏置电压。它内部有一个基准电路,产生周期为20ms,宽度为1.5ms的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出。最后,电压差的正负输出到电机驱动芯片决定电机的正反转。2.控制原理舵机的控制一般需要一个20ms左右的时基脉冲,该脉冲的高电平部分一般为0.5ms~2.5ms范围...

2020-01-30 23:48:26 2480

原创 Linux常用命令笔记

Linux常用命令说明cd(change dictionary)/:根目录 …:上一级目录 ~ :当前用户主目录ls(list)-l查看详细信息如日期等。每行最前面的一个字符代表文件类型pwd(print name of current/working dictionary)无参数uname(unix name )常用参数: -r(内核版本) -s...

2020-01-27 23:55:54 98

原创 C语言要点总结

typedef在编程中使用typedef目的一般有两个,一个是给变量一个易记且意义明确的新名字,另一个是简化一些比较复杂的类型声明。如typedef int size;void measure(size*psz);size array[4];size len=file.getlength();std::vectorvs;#include <stdio.h>typedef...

2019-12-31 09:55:02 432

原创 PCB画板布线(以32实例)一文入门完整流程

本篇文章仅举个简单的例子,各细节根据需要自行调整一丶边框的确定,保证元器件能在容纳于其中1.在原理图和封装都准备好后,导入网络报表到PCB文件中。开始画板首先板框确定 5mil边框2.将边框缩短1mm,进行倒角(即让四个角成弧状)3.以左下角的为参考点,在x,y都为3mm处放置定位孔,并对孔的大小进行调整也(3mm),注意将设置为非金属化2.常用布局规则设置1.间距的设置:在...

2019-12-30 23:38:28 8143

示波器使用教程.pdf

写的比较好的教程,不想看视频的可以直接看该文档过一遍,适合新手入门,将各种示波器进行了分类,内容叙述简洁明了,需要的自行下载把!!!

2020-04-08

简易0S设计.pdf

这个资料太棒了,ucos入门必看,详细介绍了多任务调度,我看的时候顺便写了一些笔记,理解起来不要太简单

2020-02-22

立体仓库(PLC200程序,力控仿真界面,课设文档)

课程设计做的力控仿真界面,PLC200的程序和力控7.1仿真程序以及课设文档都放进去了,需要的自取把

2020-01-24

基于51的温湿度监测(程序原理图PCBproteus)

湿度用的DHT11,温度用的DS18B20。一次课程设计做的,代码原理图PCB都上传了,大家需要的自取

2020-01-08

基于C51的交通灯模拟(用定时中断,含程序PCB原理图).rar

平时的一次小作业,虽说比较简单,但毕竟亲手做的,和网上的程序不太一样,PCB也画了,就随便上传了,免费分享需要自取

2020-01-08

飞思卡尔虚线双车会车完整(原理图pcb程序).rar

山外库鹰眼摄像头加电感综合的完整参赛小车程序,重要的资料和心血藏起来实在有点自私,也防止弄丢把,都是满满的青春回忆啊

2020-01-04

含大津法优化的小车完整程序

内含大津法优化(优化内容见个人博客),PID控制电机舵机算法,动态P,虚线识别等多种算法,小车轻松上2m啦(逐飞库,IAR8.2,版本过低可能打不开)

2020-01-03

清华大学校内智能车竞赛指导文件.rar

对智能车感兴趣,不知从何做起的新手必看。IAR安装使用,选车,电机,编码器,蓝牙,PID都有涉及,很不错的资料,免费分享

2020-01-03

以STC15W404控制的老人远程监测装置

本程序综合了温度,热释电,WIFI ESP8266,MQ2烟雾,温度等多个模块,实现与手机的数据传输,详细内容简介,原理图PCB等见博客,曾用其参加过一些创新创业比赛,大家一起学习

2019-12-31

空空如也

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

TA关注的人

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