- 博客(24)
- 资源 (20)
- 收藏
- 关注
原创 20191101(33) 针对 RT-Thread 下 ADS1256 移植说明(SPI)
已上传的源码:这是基于 RT-Thread 4.0.2 版本移植的 ADS1256 源码程序注意: 自校准不太适合应用于压差较大环境,测试发现芯片会自动平衡差值无法很好的同时测试 5v和3.3v 两个电压,部分配置请查看数据手册注意: RT-Thread 中 SPI 和 硬件中断 没法同时工作,因此采用轮询方式进行以下是源码//filePath: drv_ads1256.c#inclu...
2019-10-31 20:16:03 2209
原创 20191027(32)RT-Thread SPI 设备挂载——ADS1256 后续提供具体实现源码(stm32f407)
目的1 实现 ADS 1256 采集芯片在 RT-Thread 上的应用2 了解 SPI 挂载的方式MSB LSBCOLPCOHA正文了解 SPISPI:1 串行外设接口总线(SPI)最早由Motorola首先提出的全双工三线同步串行外围接口(SCK, MISO 主入从出, MOSI 主出从入)2 采用 主从模式 支持一对多3 通过 CS 片选脚来确定工作对象(大多是 CS...
2019-10-31 11:49:30 3539 1
原创 20191029 (31) QML Loader 用法
简单展示 Loader 使用并修改对应控件内容的方式(持续更新)Component { id: buttonDirection ToolButton { display: AbstractButton.IconOnly icon.source: "" background: Rectangle { col...
2019-10-29 18:56:58 394
原创 20191025(30) RT-Thread 虚拟文件系统的读写操作
目的1 掌握 虚拟文件系统创建文件及实现流程(Finsh 支持 Unix 指令可自行学习/如何使用 Finsh 建议自学)重点1 env 配置虚拟文件系统2 头文件添加 #include <dfs_posix.h>正文1 创删改读写–文件//读写创static void readWrite_sample(void) { int fd = 0; int size =...
2019-10-25 10:48:56 2150
原创 20191024 (29) RT-Thread 配置 SD 卡的虚拟操作
目的1 需要掌握制作 BSP 为前提(会在下一篇文章结合官方说明进行解释)2 了解配置 SD 卡作为虚拟系统正文官方说明1 开启虚拟文件系统RT-Thread Components ---> Device virtual file system ---> 其余内容参考官方说明2 开启SDRT-Thread Components ---> ...
2019-10-24 13:25:07 1575
原创 20191017(28)ARM Linux 字符设备驱动(2)设备号申请释放
设备号linux 每个设备都有主次设备号主设备:表示某一个具体的驱动次设备号:表示使用这个驱动的各个设别//path: include/linux/types.h//dev_t 表示定义了设备号 typedef __u32 __kernel_dev_t;typede __kernel_dev_t dev_t;//path: include/uapi/asm-generic/i...
2019-10-17 21:07:32 145
原创 20191016 (27) Env 配置文件
目的1 了解基本的配置方法配置流程要配置一个系统的方法:1 去官网下载最新版源码包2 安装 Env3 在 BSP 下找到已经有的配置文件(如果没有也可自行配置)4 在 env 界面输入 menuconfig 进行选择5 在 env 输入 scons 进行自动配置Env 工具配置menuconfig -s 可以进入 Env 工具配置界面auto update pkgs c...
2019-10-16 13:22:22 392
原创 QML TableView 设置--行 头部的设置
https://github.com/eyllanesc/stackoverflow/tree/master/questions/55610163这是参考的完整源代码个人修改的源代码看附件https://download.csdn.net/download/qq_24890953/11866548import QtQuick 2.12import QtQuick.Controls ...
2019-10-15 16:53:25 2810
原创 20191015 (26) RT-Thread 简述内核移植
目的1 了解内核移植的简单内容,具体移植内容需要详细看官方文件正文1 CPU 架构移植利用 libcpu 抽象层来适配不同的 CPU 架构,用来向上层对内核提供统一的接口。函数和变量描述rt_base_t rt_hw_interrupt_disable(void)关闭全局中断void rt_hw_interrupt_enable(rt_base_t leve...
2019-10-15 12:57:05 217
原创 20191014 (25) RT-Thread 中断管理
目的1 了解 RT-Theard 内部处理中断正文1 寄存器构成stack pointer–>SP 堆栈指针寄存器Link Register --> LR 连接寄存器 用于 调用子程序Program Counter --> PC 程序计数器MSP --> 主堆栈指针PSP --> 进程堆栈指针PSRs --> 程序状态字寄存器组PRIMA...
2019-10-14 09:37:33 595
原创 20191013 (24)ARM Linux 字符设备驱动(1)驱动开发摸板(框架)
驱动基础介绍1 驱动加载成功以后会在 /dev 目录下生成一个相应文件夹,通过对文件夹下的内容进行调用2 include/linux/fs.h 中的 file_operations 结构体定义了 linux 内核驱动操作函数集合owner 拥有该结构体的模块的指针,一般设置为 THIS_MODULEllseek 函数用于修改文件当前的读写位置read 函数用于读设备文件wri...
2019-10-13 20:04:33 106
原创 20191012 (23)RT-Thread 内存管理
目的1 了解 RT-Thread 内存管理的方式2 了解动态内存堆管理 和 静态内存池管理正文:内存管理的特点1 分配内存的时间必须确定2 避免内存分配的碎片化问题3 内存资源差异较大RT-Thread 三种管理方式1 小内存 小内存管理法 <2MB2 大内存 slab 管理法3 多内存 memheap 管理法简单介绍:slab 是 linux 一种...
2019-10-12 11:24:55 260
原创 20191012 (22) RT-Thread 线程间通信
目的1 了解除了全局变量之外更加安全的通信方式正文1 邮箱特点:开销低,效率高,非堵塞,可用于中断一个邮件大小是 4 个字节针对 32 bit处理系统,用于存储一个字节的大小对于收 / 发线程而言,可以选择挂起等待或则直接返回,直到由邮箱唤醒rt_mailbox 对象从 rt_ipc_object 中派生,由 IPC 容器所管理邮箱控制块是操作系统用于管理邮箱的数据结构 rt_...
2019-10-11 10:37:55 283
原创 20191010 (21) RT-Thead 线程同步
目的1 理解基本的多线程交互概念正文1 什么时候需要涉及到线程同步的概念当线程之间需要进行数据传递的时候,就需要考虑到线程同步的事情了,比如对同一变量进行读写。但每次只允许一个线程进行操作,那就需要涉及到等待,互锁等概念。线程的同步方式有很多种,其核心思想都是:在访问临界区的时候只允许一个 (或一类) 线程运行。进入 / 退出临界区的方式有很多种:1)调用 rt_hw_inte...
2019-10-10 13:20:04 242
原创 20191009(20) PANIC: unprotected error in call to Lua API && LINUX && QT C编译调 LUA (LUA 2 结束)
前言1 QT 编译器2 LINUX3 Lua 5.3.5安装官网下载最新版本使用 yum 指令的 linux 版本 可以参考这篇添加环境(针对 QT)Pro 环境中添加库LIBS += /home/xx/liblua.a -ldl #我这里直接加到这里,makefile 请参考直接编译链接INCLUDEPATH += /home/xx/lua-5.3.5/src说...
2019-10-09 15:53:57 1130
原创 20191008 (19) 发生中断:优先学习 Lua 脚本与 C++ 相关内容为工作 4g 模块使用打基础 (1) Lua 基础语法
安装官网下载最新版本使用 yum 指令的 linux 版本 可以参考这篇Debin / ubuntu 以下是简述版本1 确认安装 libreadline-dev & libncurses5-dev2 进入 lua 解压包文件夹 执行make linux test3 执行 安装sudo make install4 测试lua -vlua 文件格式 类似 shell 等...
2019-10-08 13:08:39 178
原创 20191007(18)管理课 SWOT
优势 S劣势 W机会 oSO 利用优势把握机会WO 利用机会改善劣势威胁 TST 回避威胁WT 改善劣势回避威胁这一切的目标就是根据当下局势确定一个指导原则,也就是战略面对大选择的 3C客户,竞争对手,自己公司来确定战略走向确定了方向,就可以指定计划,积少成多会是一个不错的选择,这也暗含了复利的思想。通过不断微笑的累增从而实现,大战略的完成...
2019-10-07 20:32:25 103
原创 20191006 (17)RT-Thread 硬件定时器接口说明(1)
目的1 初步接触 RTOS 关于外设的使用方式2 了解硬件定时器涉及到的内容正文硬件定时器是通过 RTOS 提供的 IO 设备管理接口,这就是符合裸程序时候设定定时器的方式。函数描述rt_device_find()查找定时器设备rt_device_open()以读写方式打开定时器设备rt_device_set_rx_indicate()设置超时回调...
2019-10-06 21:33:20 690
原创 20191005 (16)金融学课笔记(得到北大经融学课)——复利加速思维
A * (1 + q)^n = B这就是计算复利的公式,这里有三个数字分别是 A、q、n 共同决定了 B 的数字大小就像汽车之间的竞争核心就是时间,而决定时间长度的关键是加速度,所以增长系数 q 是最为根本的存在。前提就是你的 A 能否从 0 迈入 0.1 从而开始加速从 0.1 开始增长系数次数数值0.1251.080.05481.040.01...
2019-10-05 22:21:52 219
原创 20191004 (15) RT-Thread 高精度短时间 延时
目的1 解读延时函数正文//延时 低于 1 OS Tick 计时任务#include <board.h> void rt_hw_us_delay(rt_uint32_t us) { rt_uint32_t delta; /* 获得延时经过的 tick 数 */ us = us *(SysTick>LOAD/(1000000/RT_TICK_...
2019-10-04 22:03:00 2038
原创 20191003 (14)RT-Thread 时钟管理范例程序
官方历程#include <rtthread.h>/* 定时器的控制块 */ static rt_timer_t timer1; static rt_timer_t timer2; static int cnt = 0; /* 定时器 1 超时函数 */ static void timeout1(void *parameter) { rt_kprintf("pe...
2019-10-03 22:02:25 190
原创 20191002(13)RT-Thread 时钟管理 源码解读(2)删除及控制部分
目的:1 了解时钟源码删除及控制部分源码正文1 删除和脱离源码detach 脱离;分离类:是 C++ / python / java 这类语言封装函数功能的一种表示,举一个例子你要吃水果,那这个动作交给程序执行就是,拿起水果,张嘴, 咀嚼,吞咽;总共四个步骤,而类就是集合这四个动作的结合体,但是不同的水果吃的方法不同,只要继承这个类,比如苹果类,西瓜类,具体动作不一样,但是目的和流程...
2019-10-02 21:37:32 256
原创 20191001(12)RT-Thread 时钟管理 源码解读(1)创建部分
目的了解创建和初始化源码正文根据阅读线程源码的经验,我直接开始阅读最核心的函数 _rt_timer_init()/** * timer structure */struct rt_timer{ struct rt_object parent; /**< inherit from rt_object */ ...
2019-10-01 20:23:39 162
ADS1256 基于 RT-Thread 4.0.2 版本驱动程序
2019-10-31
STC15W 系列红外发射 支持51全平台
2019-08-25
LASER_RECE.zip
2019-08-25
GT9xx 驱动程序 可以使用
2019-06-17
Qt_wifi_module
2019-03-22
基于407写的VL53l0X程序
2016-10-25
pwm控制程序
2015-11-03
串口程序 MFC
2015-10-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人