关闭

STM32 延时函数解析

一、函数原型STM32官方提供的函数库中,可以找到类似于 HAL_Delay() 这样的函数。这个函数的就是通过使用定时器,达到一个较为精确的时间延迟,提供给用户调用。这个函数一般包含在类似于 stm32f4xx_hal.c 这样的函数中。函数原型如下:__weak void HAL_Delay(__IO uint32_t Delay) { uint32_t tickstart = 0U;...
阅读(528) 评论(0)

FatFs 使用中文长文件名

一、说明 使用长文件名,一般会是在使用 f_readdir() 这个函数时碰到,这个函数的功能就是获取上一步使用 f_opendir() 打开的文件夹中的内容,并将文件信息保存到定义的结构体。结构体内容如下, 里面包含有文件大小,上一次修改日期,文件属性,文件名等。可见,普通文件名是存在一个 fname[13] 的数组里的,这就使得长文件名无法正常显示。而长文件名是一个指针,这个指针指向的数...
阅读(534) 评论(0)

树莓派3 安装OSMC系统搭建媒体服务

OSMC是一款基于 Linux 免费开源的媒体播放系统。目前支持树莓派1、2、3、zero,vero,Apple TV这几款硬件平台。 一、必备工具 1、树莓派3 2、OSMC OS 3、内存卡(推荐8G以上) 4、显示器(可通过hdmi转vga线连接到vga显示器) 5、2A的电源适配器 二、安装步骤安装的方法有三种,如下。方法一比较简单,也是常用的为树莓派烧写系统的方式;方法二为树莓派官方推荐...
阅读(5297) 评论(0)

树莓派3 安装Flint OS

Flint OS 是基于最新的Linux长期支持版4.4内核版本和最新的稳定版Chromium OS r55开发的操作系统。更多的介绍可以上官网的视频介绍。一、必备工具 1、树莓派3 2、Flint OS 3、内存卡(推荐8G以上) 4、显示器(可通过hdmi转vga线连接到vga显示器) 二、安装步骤 1、下载安装镜像 2、烧写内存卡 烧写的方法可以看官网的介绍,写的非常详细,推荐直接使用极简方...
阅读(2830) 评论(2)

JRE运行环境出错导致无法安装STM32CubeMX解决方法

一、问题安装 STM32CubeMX 一直提示需要安装JAVA运行环境,提示界面如下: 但实际上已经正确安装了JRE,如下为JAVA版本。 问题原因:我的电脑上具有很多版本的JRE,并且有一个版本注册表信息出错,所以无法正常卸载。二、解决方法 1、先完整卸载目前已安装的JAVA版本,可利用官方提供的卸载工具。 如上图所示,电脑里安装了4个版本的JRE,只需安装最新版的就好,其他直接卸载...
阅读(1129) 评论(1)

搭建kindleEAR为kindle推送RSS订阅

一、简介kindleEAR是一个运行在Google App Engine(GAE)上的Kindle个人推送服务应用,生成排版精美的杂志模式mobi/epub格式自动每天推送至您的Kindle或其他邮箱。此应用目前的主要功能有: 支持类似Calibre的recipe格式的不限量RSS/ATOM或网页内容收集 不限量自定义RSS,直接输入RSS/ATOM链接和标题即可自动推送 多账号管理,支持多用户和多...
阅读(1593) 评论(0)

树莓派3 安装谷歌物联网系统-Android Things

一、必备工具 1、树莓派3 2、Android Things安装镜像 3、Windows 10 IoT 核心版仪表板 4、内存卡(推荐8G以上) 5、显示器(可通过hdmi转vga线连接到vga显示器) 6、Android Studio 二、安装步骤 1、下载Android Things 下载之后解压出ISO文件。 2、使用Win32DiskImager刷入镜像 写入的过程比较慢,大概需...
阅读(3840) 评论(8)

树莓派3 安装Win10 IoT 操作系统

一、必备工具 1、树莓派3 2、Windows 10 IoT Core Insider Preview 3、Windows 10 IoT 核心版仪表板 4、内存卡(推荐8G以上) 5、显示器(可通过hdmi转vga线连接到vga显示器) 二、安装步骤 1、下载并安装Windows 10 IoT 核心版仪表板 点击获取IoT核心版仪表板,下载之后进行安装。 2、下载,解压并安装Windows 1...
阅读(12592) 评论(6)

Nexus5恢复官方系统,刷Recovery,刷Xposed框架,获取Root权限

谷歌官方不在对Nexus5手机升级最新的Android7.0系统,但是在XDA论坛上已经有开发者制作了第三方刷机包。刷机之后体验了一段时间,就没怎么用了。后来出现了闪屏的现象,无法判断是否是因为升级系统导致的,也不排除是硬件的原因。只好刷回官方匹配的6.1系统,刚刷回时依然出现,用了几次后发现居然好了。下面是重新恢复官方系统后做的必不可少的工作。下图为闪屏现象。 本文虽针对nexus5手机,但...
阅读(1364) 评论(0)

Kindle Paperwhite 2 USB升级

关于更新方法具体请看Kindle Paperwhite2(第6代)5.7.2.1固件升级教程一、升级过程 下载 拷贝到kindle 升级提示 重启升级 二、更新内容 1、更新了设置界面 2、汉字注音 3、全新字体 Amazon Ember Bold...
阅读(409) 评论(0)

BCM2835 芯片数据手册(中文翻译)

1 前言1.1 概述BCM2835 具有以下可以被 ARM 安全使用的外设: 定时器 中断控制器 GPIO USB PCM/I2S DMA I2C 主机 I2C/SPI 从机 SPI0,SPI1,SPI2 PWM UART0,UART1 本数据手册旨在对这些外设的细节进行描述,以方便开发者对该芯片移植操作系统。有一些被 GPU 控制的外设将不会出现在本数据手册。不推荐从 ARM 访问这些外设。1.2...
阅读(3551) 评论(0)

关于嵌入式系统的学习路线图

来源:本文乃同济大学软件学院王院长(JacksonWan)在同济网论坛发表的帖子《谈谈软件学院高年级同学的学习方向》的第二部分。三部分依次为:一、关于企业计算方向;二、关于嵌入式系统方向;三、关于游戏软件方向。 嵌入式系统方向 嵌入式系统无疑是当前最热门最有发展前途的IT应用领域之一。嵌入式系统用在一些特定专用设备上,通常这些设备的硬件资源(如处理器、存储器等)非常有限,并且对成本很敏...
阅读(337) 评论(0)

C语言宏定义的几种简单用法

1、计算数组的大小 #define countof(a) (sizeof(a)/sizeof(*(a)))2、转换大小写字母 #define FS_TOUPPER(x) ((((x) >= 'a') && ((x) = 'A') && ((x) <= 'Z')) ? (x)...
阅读(1023) 评论(0)

STM32 BootLoader升级固件

BootLoader关于Bootloader,从书上的文字描述,很难理解这个名词是什么,有什么用。这次用到了,算是有了更进一步的认识。一、知识点 1、BootLoader就是单片机启动时候运行的一段小程序,这段程序负责单片机固件的更新,也就是单片机选择性的自己给自己下程序。可以更新,也可以不更新,更新的话,BootLoader更新完程序后,跳转到新程序运行;不更新的话,BootLoader直接跳转到...
阅读(2828) 评论(0)

大端模式转小端模式

大端模式转小端模式一、大端模式与小端模式 大端模式,是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中,这样的存储模式有点儿类似于把数据当作字符串顺序处理:地址由小向大增加,而数据从高位往低位放;这和我们的阅读习惯一致。 小端模式,是指数据的高字节保存在内存的高地址中,而数据的低字节保存在内存的低地址中,这种存储模式将地址的高低和数据位权有效地结合起来,高地址部分...
阅读(243) 评论(0)

static __inline 在IAR和keil开发环境下的差别

本文同步至个人博客:cyang.techstatic __inline这条语句在IAR和Keil下的需要写成不同的形式,否则会报错。 如下: 1、IAR错误 2、IAR正确 3、Keil错误 4、Keil正确 总结就是,在IAR环境下,需要写成static inline,而在keil环境下,需要写成static __inline...
阅读(1498) 评论(2)

STM32固件库 assert_param函数

本文同步至个人博客:cyang.tech一、知识点-1、固件函数库通过检查库函书的输入来实现运行时间错误侦测。通过使用宏assert_param来实现运行时间检测。所有要求输入参数的函数都使用这个宏。它可以检查输入参数是否在允许的范围之内。 例如通过定义#define IS_ADC_ALL_PERIPH(PERIPH) (((PERIPH) == ADC1) || \...
阅读(203) 评论(0)

Chrome浏览器常用插件(三)

本文同步至个人博客:cyang.tech接《Chrome浏览器安装,常用插件(一)》 接《Chrome浏览器常用插件(二)》10、拖拽搜索 这是一款划词搜索的增强插件,非常的实用,使用频次也非常的高。 在Chrome浏览器里,默认状态下划词是不会有反应的,如下图所示: 但是可以将划词拖动到标签页,那么将在搜索引擎中搜索,不过这种方式需要拖动的距离比较远,如下图: 而使用这款插件后,向左边拖动可从...
阅读(453) 评论(0)

MX3从flyme5降级至flyme3

本文同步至个人博客:cyang.tech很久没关注这款已经过时很久的手机了,前段时间逛贴吧突然发现官方居然升级了flyme5。一定是贴吧呼声太高,也看得出来魅族还算有诚意。然而,新的系统运行实在是太不流畅了,也很费电,无奈之下只好降级为之前一直稳定使用的flyme3。以下为小结,记录这次降级的过程。步骤 1、到官网下载固件包,需下载flyme4和flyme3的,每个版本各选一个下载,几点几的小版本无...
阅读(3273) 评论(2)

树莓派使用USB摄像头和motion实现监控

本文同步至个人博客:cyang.tech一、工具 1、树莓派3B 2、USB摄像头 二、操作步骤 1、安装motion sudo apt-get install motion 2、配置motion (1)sudo nano /etc/default/motion将里面的no修改成yes,让motion可以一直在后台运行:start_motion_daemon=yes(2)sudo nano /etc...
阅读(9137) 评论(9)
97条 共5页首页 上一页 1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:267441次
    • 积分:3119
    • 等级:
    • 排名:第11834名
    • 原创:93篇
    • 转载:3篇
    • 译文:1篇
    • 评论:69条
    文章分类
    最新评论