关闭
当前搜索:

Source Insight 更新4.0版本

一、使用体验 source insight 终于大版本更新了。我开始使用 SI 是去年,那时候是 3.5 的版本,就觉得这是一款神器,搭配 Keil 和 IAR 等编译软件使用,可以提高单片机编程的效率。SI 有很多的特性是 keil 和 IAR 不具备的,作为一个代码编辑软件来说,很多功能确实很强大。只不过官方久久不更新,所以很多现在主流 IDE 或者代码编辑器的一些实用功能都不支持。这次更新,...
阅读(5918) 评论(2)

f_open()使用错误记录

一、现象调用函数 f_open() 后,程序崩溃,调试后发现,单片机产生硬件中断,即软件跳入如下部分:void HardFault_Handler(void) { /* Go to infinite loop when Hard Fault exception occurs */ while (1) { BSP_LED_Toggle(LED3); } }二、错误代码代码错误处...
阅读(493) 评论(0)

STM32 SysTick定时器

一、说明SysTick 定时器是实时操作系统专用的,但是也可以作为一个标准的递减计数器使用。它具有以下特点: 1、24位递减计数器(16777216) 2、自动装填能力 3、计数器达到 0 时,有可屏蔽的系统中断产生。 4、可编程时钟源 (HCLK 或者 HCLK/8) 该定时器具有四个寄存器,如下表所示:一般,该定时器的计数周期为一毫秒,则寄存器LOAD中的值根据 MCU 主频的不同而不同。例如,...
阅读(354) 评论(0)

STM32 延时函数高级用法分析

一、使用场景第一种情况,在使用普通 STM32 延迟函数,类似于 HAL_Delay(time),由于该函数是使用循环去判断及延时的,所以在执行该函数时整个程序会在此处等待定时器的中断服务函数修改参量使得循环判决条件不成立,从而继续程序的执行,同时也达到延迟时间的效果。由于使用的是系统的定时器进行延迟,所以时间相对准确。第二种情况,当需要周期性的执行一个任务时,将这个函数放在某个定时器的中断服务函数...
阅读(1761) 评论(0)

STM32 延时函数解析

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

FatFs 使用中文长文件名

一、说明 使用长文件名,一般会是在使用 f_readdir() 这个函数时碰到,这个函数的功能就是获取上一步使用 f_opendir() 打开的文件夹中的内容,并将文件信息保存到定义的结构体。结构体内容如下, 里面包含有文件大小,上一次修改日期,文件属性,文件名等。可见,普通文件名是存在一个 fname[13] 的数组里的,这就使得长文件名无法正常显示。而长文件名是一个指针,这个指针指向的数...
阅读(901) 评论(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的电源适配器 二、安装步骤安装的方法有三种,如下。方法一比较简单,也是常用的为树莓派烧写系统的方式;方法二为树莓派官方推荐...
阅读(8146) 评论(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、烧写内存卡 烧写的方法可以看官网的介绍,写的非常详细,推荐直接使用极简方...
阅读(3427) 评论(2)

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

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

搭建kindleEAR为kindle推送RSS订阅

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

树莓派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...
阅读(18135) 评论(6)

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

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

Kindle Paperwhite 2 USB升级

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

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

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

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

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

STM32 BootLoader升级固件

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

大端模式转小端模式

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

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

本文同步至个人博客:cyang.techstatic __inline这条语句在IAR和Keil下的需要写成不同的形式,否则会报错。 如下: 1、IAR错误 2、IAR正确 3、Keil错误 4、Keil正确 总结就是,在IAR环境下,需要写成static inline,而在keil环境下,需要写成static __inline...
阅读(2042) 评论(2)
101条 共6页首页 上一页 1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:360481次
    • 积分:3737
    • 等级:
    • 排名:第10085名
    • 原创:96篇
    • 转载:3篇
    • 译文:2篇
    • 评论:84条
    文章分类
    最新评论