自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(117)
  • 资源 (17)
  • 收藏
  • 关注

原创 以太坊的状态树 Merkle Patricia Tree

Merkle Patricia TreeMerkle树https://www.cnblogs.com/fengzhiwu/p/5524324.htmlMerkle Tree,通常也被称作Hash Tree,顾名思义,就是存储hash值的一棵树。Merkle树的叶子是数据块(例如,文件或者文件的集合)的hash值。非叶节点是其对应子节点串联字符串的hash。Merkle Tree的主要作用是当我拿到Top Hash的时候,这个hash值代表了整颗树的信息摘要,当树里面任何一个数据发生了变动,都会导致T

2022-02-01 15:28:37 10908

原创 gitignore更新方法

gitignore 不起作用的解决办法解决办法git rm -r --cached .git add .git commit -m ‘update .gitignore’ //windows 使用的命令是git commit -m “update .gitignore” 需要使用双引号.gitignore文件,具体的规则一搜就有.我在使用GIT的过程中,明明写好了规则,但问题不起作用,每次还是重复提交,无法忍受.其实这个文件里的规则对已经追踪的文件是没有效果的.所以我们需要使用rm命令清除

2021-12-16 12:37:53 1168

原创 MATLAB/Simulink 使用记录

1.InitFcn仿真模块全局变量初始化,启动Run之后可以添加至工作区。右键——Model Perprities——Callbacks——InitFcn2. 子模块参数输入右键模块——Mask——Edit Mask...——Parameter&Dialog选项卡——编辑参数。双击子模块输入参数值。子模块内部的块Main选项卡的名称要与参数编辑的命名一致。3. 示波器Scope波形的上传到工作区运行后打开示波器波形,菜单栏View—— Confi...

2021-09-07 08:47:55 1226

原创 linux 编译程序的四个过程

一、预编译他的命令是gcc -E main.c -o main.o 假设当前要编译的文件是main.c1.将所有的#define删除,并展开所有的宏定义;2.处理所有的预编译指令,例如:#if,#elif,#else,#endif;3.处理#include预编译指令,将被包含的文件插入到预编译指令的位置;4.添加行号信息文件名标识,便于调试;5.删除所有的注释:6.保留所有的#pragma编译指令,因为在编写程序的时候,我们经常要用到#pragma指令来设定编译器的...

2021-08-31 09:04:29 1010

原创 HDLBits练习 132-134 FSM(4)

132fsm_onehotGiven the following state machine with 1 input and 2 outputs:Suppose this state machine uses one-hot encoding, wherestate[0]throughstate[9]correspond to the states S0 though S9, respectively. The outputs are zero unless otherwise sp...

2021-08-24 13:43:22 483

原创 HDLBits练习 128-131 FSM(3)

128lemmings1The gameLemmingsinvolves critters with fairly simple brains. So simple that we are going to model it using a finite state machine.In the Lemmings' 2D world, Lemmings can be in one of two states: walking left or walking right. It will swi...

2021-08-24 12:12:07 560

原创 HDLBits练习 123-127 FSM(2)

三段式状态机 三段式分别指状态跳转逻辑 状态触发器实现 输出逻辑123fsm3combThe following is the state transition table for a Moore state machine with one input, one output, and four states. Use the following state encoding: A=2'b00, B=2'b01, C=2'b10, D=2'b11.Implement only the .

2021-08-24 10:31:19 780

原创 HDLBits练习 119-122 FSM(1)

119fsm1This is a Moore state machine with two states, one input, and one output. Implement this state machine. Notice that the reset state is B.This exercise is the same asfsm1s, but using asynchronous reset.Hint...Yes, there are ways to do this ..

2021-08-23 14:30:11 648

原创 HDLBits练习 116-118 More Circuits

116rule90Rule 90is a one-dimensional cellular automaton with interesting properties.The rules are simple. There is a one-dimensional array of cells (on or off). At each time step, the next state of each cell is the XOR of the cell's two current neigh..

2021-08-19 14:56:35 316

原创 HDLBits练习 113-115 Shift Registers

113exams/m2014_q4kImplement the following circuit:module top_module ( input clk, input resetn, // synchronous reset input in, output out); reg r1,r2,r3,r4; always@(posedge clk)begin if(!resetn) begin .

2021-08-19 14:04:58 348

原创 HDLBits练习 107-112 Shift Registers

107shift4Build a 4-bit shift register (right shift), with asynchronous reset, synchronous load, and enable.areset: Resets shift register to zero. load: Loads shift register withdata[3:0]instead of shifting. ena: Shift right (q[3]becomes zero,q[...

2021-08-18 15:59:25 322

原创 HDLBits练习 105-106 Counters

105countbcdBuild a 4-digit BCD (binary-coded decimal) counter. Each decimal digit is encoded using 4 bits: q[3:0] is the ones digit, q[7:4] is the tens digit, etc. For digits [3:1], also output an enable signal indicating when each of the upper three di.

2021-08-18 10:56:03 567

原创 CORDIC算法详解及FPGA实现

CORDIC算法详解1 平面坐标系旋转CORDIC算法的思想是通过迭代的方法,使得累计旋转过的角度的和无限接近目标角度。它是一种数值计算逼近的方法,运算只有移位和加减。通过圆坐标系可以了解CORDIC算法的基本思想,如图1所示,初始向量(x1,y1)\left( x_{1},y_{1} \right)(x1​,y1​)旋转θ\thetaθ角度之后得到向量(x2,y2)\left( x_{2},y_{2} \right)(x2​,y2​),两者之间满足(公式1)关系。图1 CORDIC算法原理示意图

2021-05-30 18:52:04 10491 7

原创 TI编译器下载地址

TI的C2000编译器下载地址:https://www.ti.com/tool/C2000-CGT

2021-02-22 08:38:10 2184

原创 TI C2000系列DSP可配置逻辑块(CLB)设计说明

TI C2000系列DSP可配置逻辑块(CLB)设计说明CLB结构概述CLB输入CLB输出CLB的TILE块FLowchart流程图导出与导入导出导入CLB结构概述基本级别配置中存在的四个 CLB 模块中的每一个都由一个输入信号选择器、 一个 CLB 逻辑块和一个外设信号多路复用器组成。 输入信号选择器选择进入 CLB 逻辑块的八个信号, 外设信号多路复用器分配 CLB 逻辑块的八个输出。 在逻辑块本身内部, 将逻辑运算应用于八个输入(由配置寄存器的内容决定) , 以生成八个输出信号。 这些逻辑运算可以

2021-02-20 15:12:31 6662

原创 Python基础教程(八)matplotlib--支持的图类型。柱状图、饼图、K线图

编程字典Pandas教程 http://codingdict.com/article/8270清华计算机博士带你学-Python金融量化分析 https://www.bilibili.com/video/BV1i741147LS?thttps://matplotlib.org/stable/index.html支持的各种图形函数说明plt.plot(x,y,fmt,…)坐标图plt.boxplot(data,notch,position)箱型图plt.bar(le

2021-02-14 23:23:13 328

原创 Python基础教程(七)matplotlib--plot介绍

编程字典Pandas教程 http://codingdict.com/article/8270清华计算机博士带你学-Python金融量化分析 https://www.bilibili.com/video/BV1i741147LS?thttps://matplotlib.org/stable/index.html1. 介绍matplotlib.pyplot是一个有命令风格的函数集合,它看起来和MATLAB很相似。每一个pyplot函数都使一副图像做出些许改变,例如创建一幅图,在图中创建一个绘图区域,在

2021-02-14 18:52:57 3001 1

原创 Python基础教程(六)Pandas--文件处理

编程字典Pandas教程 http://codingdict.com/article/8270清华计算机博士带你学-Python金融量化分析 https://www.bilibili.com/video/BV1i741147LS?tpandas文档 https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.read_csv.html数据文件常用格式:csv(以某间隔符分割数据)文件读取read_csv 默认分隔符为逗

2021-02-14 13:54:23 290 1

原创 Python基础教程(五)Pandas--时间处理对象

编程字典Pandas教程 http://codingdict.com/article/8270清华计算机博士带你学-Python金融量化分析 https://www.bilibili.com/video/BV1i741147LS?t

2021-02-14 13:28:37 357 2

原创 Python基础教程(四)Pandas--DataFrame

DataFrame 表格型数据对象DataFrame数据框架是一种二维数据结构,即数据按行和列的表格方式排列。DataFrame的创建可以使用以下构造函数创建一个pandas DataFrame -pandas.DataFrame( data, index, columns, dtype, copy)No参数说明1data数据采用各种形式,如ndarray,序列,地图,列表,字典,常量和另一个DataFrame。2index对于行标签,如果没有索引被传递,则要

2021-02-13 21:05:45 582 1

原创 Python基础教程(三)Pandas--Series

编程字典Pandas教程 http://codingdict.com/article/8270清华计算机博士带你学-Python金融量化分析 https://www.bilibili.com/video/BV1i741147LS?t1.介绍与安装Pandas是一个开源的Python库,使用其强大的数据结构提供高性能的数据处理和分析工具,是基于Numpy构建的。Pandas这个名字源自面板数据 - 来自多维数据的计量经济学。2008年,开发人员Wes McKinney在需要高性能,灵活的数据分析工具时

2021-02-13 18:41:27 503 1

原创 (已使用CSDN-markdown编辑)Python基础教程(三)Pandas

编程字典Pandas教程http://codingdict.com/article/8270清华计算机博士带你学-Python金融量化分析https://www.bilibili.com/video/BV1i741147LS?t1.介绍与安装Pandas是一个开源的Python库,使用其强大的数据结构提供高性能的数据处理和分析工具。Pandas这个名字源自面板数据 - 来自多维数据的计量经济学。2008年,开发人员Wes McKinney在需要高性能,灵活的数据分析工具时开始开发Pand..

2021-02-12 17:27:35 190 2

原创 Python基础教程(二)numpy

参考内容:菜鸟教程https://www.runoob.com/numpy/numpy-tutorial.html清华计算机博士带你学-Python金融量化分析https://www.bilibili.com/video/BV1i741147LS?t1. 介绍与安装NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。NumPy 的前身 Numeric 最早是由 Jim Hugun..

2021-02-12 14:09:43 414 1

原创 Python基础教程(一)Python语法介绍

参考内容:菜鸟教程https://www.runoob.com/python3/python3-tutorial.html清华计算机博士带你学-Python金融量化分析https://www.bilibili.com/video/BV1i741147LS?t1. Python3.x介绍Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下..

2021-02-12 13:29:17 477 2

原创 FPGA学习笔记06——数电基础知识

参考:《数字电子技术基础简明教程》(第三版)《正点原子逻辑设计指南 V1.8》锁存器与触发器RS锁存器锁存器(俗称 Latch)是数字电路中的一种具有记忆功能的逻辑元件。锁存器对脉冲电平敏感的存储单元电路,它只在输入脉冲的高电平(或低电平)期间对输入信号敏感并改变状态。在数字电路中可以记录二进制数字信号“0”和“1”。逻辑门控RS锁存器D锁存器D触发器边沿检测电路同步复位与异步复位...

2020-12-21 20:21:59 869

原创 FPGA学习笔记05——I2C通信

1.介绍I2C总线是Philips半导体公司(现在的NXP半导体公司)开发的一种简单、双向二线制同步串行总线。它只需要两根线即可在连接于总线上的器件之间传送信息。SDA(串行数据线)和SCL(串行时钟线)都是双向I/O线,接口电路为开漏输出.需通过上拉电阻接电源VCC.当总线空闲时.两根线都是高电平。在I2C器件开始通信(传输数据)之前,串行时钟线SCL和串行数据线SDA线由于上拉的原因处于高电平状态,此时I2C总线处于空闲状态。如果主机(此处指FPGA)想开始传输数据,只需在SCL为高电平时将SD

2020-10-21 19:09:19 768

原创 FPGA学习笔记04——SPI通信

参考内容:Verilog硬件描述语言 西安电子科技大学 蔡觉平等主讲https://www.bilibili.com/video/BV1zb411s7bY?p=21王建飞《你好FPGA一本可以听的书》蔡觉平《Verilog HDL数字集成电路设计原理与应用》正点原子《开拓者FPGA开发指南》https://www.cnblogs.com/liujinggang/p/9609739.html1.介绍SPI(Serial Peripheral Interface,串行外围设备接口),是.

2020-10-13 19:11:15 4797 1

原创 FPGA学习笔记03——UART串口

参考内容:王建飞《你好FPGA一本可以听的书》正点原子《开拓者FPGA开发指南》1.介绍串行通信分为两种方式:同步串行通信和异步串行通信。 同步串行通信需要通信双方在同一时钟的控制下,同步传输数据;异步串行通信是指通信双方使用各自的时钟控制数据的发送和接收过程。基本的UART通信只需要两条信号线(RXD、TXD)就可以完成数据的相互通信,接收与发送是全双工形式。UART在发送或接收过程中的一帧数据由4部分组成, 起始位、 数据位、 奇偶校验位和停止位。起始位标志着一帧数据的开始, 停止

2020-10-13 18:17:39 720

原创 integer conversion resulted in a change of sign

Type #69-D integer conversion resulted in a change of signMDK 出现#68-D: integer conversion resulted in a change of sign.在KeilARM的LPCARM,存在(1<<31)编译警告问题main.c(174): warning: #61-D: integer operation result is out of rangemain.c(174): warning: #68-D

2020-09-18 12:15:45 7534

原创 WPF学习——枚举和数字、字符串之间的相互转化

https://www.cnblogs.com/wangyblzu/p/6543037.html既上一篇博客中写的吧RadioButton选择的星期几传送到字符串today,方法是switch枚举类型,case给字符串today赋值。但是如果可以把枚举类型直接转化成字符串代码会简洁很多。public WeekEnum week{ get { return _week; } set { _week = value; this.today = this.EnumConvertToStr

2020-09-03 23:02:53 1230

原创 WPF学习——一个枚举类型绑定到多个RadioButton

IValueConverter类 Bingding.Converterhttps://www.cnblogs.com/gaoshang212/p/4973300.html?utm_source=tuicool&utm_medium=referral1.需求说明显示界面上有多个RadioButton,需要选择其中一个来修改一个枚举类型的值。举例:有七个RadioButton,星期一到星期日,选择其中之一可以改变枚举类型week的对应值。2.实现方法利用Converter...

2020-09-03 22:27:46 1107

原创 WPF学习——MVVM模式设计的简单例子

MVVM= Model - View - ViewModelMVVM步骤:1、创建Views、Models、ViewModels三个文件夹,ViewModels文件夹下面新建ViewModel基类2、编写ViewModels基类3、编写dataGridViewBase类,继承自ViewModel基类,添加数据属性。4、编写DelegateCommand类,为按键添加DelegateCommand属性,在构造函数中将命令绑定。5、xaml文件中添加Binding,6、初始化this.Da.

2020-07-26 19:10:27 355

原创 WPF学习——C#语言中的事件

参考:C#语言入门详解https://www.bilibili.com/video/BV1wx411K7rb?p=19刘猛铁评论区笔记:https://www.yuque.com/yuejiangliu/dotnet/timothy-csharp-020-022Timer 的一些成员,其中闪电符号标识的两个就是事件:通过查看 Timer 的成员,我们不难发现一个对象最重要的三类成员: 属性(小扳手):对象或类当前处于什么状态 方法(小方块):它能做什...

2020-07-26 15:40:45 621

原创 WPF学习——C#语言中的委托

参考:C#语言入门详解https://www.bilibili.com/video/BV1wx411K7rb?p=19刘猛铁留言区评论笔记https://www.yuque.com/yuejiangliu/dotnet/timothy-csharp-019C#语言中的委托是函数指针的升级版。Action 和 Func 是 C# 内置的委托实例,它们都有很多重载以方便使用。using System;namespace DelegateExample{ class Progra.

2020-07-26 15:30:22 473

原创 FPGA学习笔记02——Verilog HDL基础知识

参考内容:Verilog硬件描述语言 西安电子科技大学 蔡觉平等主讲https://www.bilibili.com/video/BV1zb411s7bY?p=21王建飞《你好FPGA一本可以听的书》蔡觉平《Verilog HDL数字集成电路设计原理与应用》正点原子《开拓者FPGA开发指南》硬件描述语言(HDL)及其发展发展过程国际标准语言要素1、空白符:空格符(\b)、制表符(\t)、换行符和换页符2、注释符:同C语言3、标识符:被用来命名信号名、模块名、.

2020-05-20 23:54:22 1219

原创 FPGA学习笔记01——简单介绍与软件安装

参考内容:Verilog硬件描述语言 西安电子科技大学 蔡觉平等主讲https://www.bilibili.com/video/BV1zb411s7bY?p=21王建飞《你好FPGA一本可以听的书》蔡觉平《Verilog HDL数字集成电路设计原理与应用》正点原子《开拓者FPGA开发指南》FPGA发展专用集成电路ASIC(Application-Speciftic Integrated Circuit)ASIC 全定制 半定制 门阵列 标准单元 ...

2020-05-20 15:11:50 703

原创 SRAM和SDRAM的简单介绍

参考:IS62WV25616ALL数据手册W9825G6KH数据手册SRAM静态随机存取存储器(Static Random-Access Memory,SRAM)是随机存取存储器的一种。相对之下,动态随机存取存储器(DRAM)里面所储存的数据就需要周期性地更新。然而,当电力供应停止时,SRAM储存的数据还是会消失(被称为volatile memory),这与在断电后还能储存资料的R...

2020-04-23 21:05:18 6375

原创 FPGA学习笔记——正点原子FPGA按键消抖笔记

出自正点原子《开拓者FPGA开发指南V1.3》第九章按键控制蜂鸣器实验module key_debounce( input sys_clk, input sys_rst_n, input key, output reg key_value, output reg key_flag);reg [31:0] delay_cnt;reg key_reg;al...

2020-03-11 18:30:25 1083

原创 altium designer 使用技巧

1元器件自动编号tools——annotate schematic——update changes list——ok——accept changes——validate changes——execute changes

2020-02-18 17:51:10 443

原创 pycharm

https://www.jianshu.com/p/355a6920116fpycharm P_o J_iehttp://lookdiv.com/nssdh/sereas/sxclo/aloif/smxs/slak/pdoasj/ejekoq/ewqqzsd/wsdwwq/ers.htmlanacond镜像https://mirrors.tuna.tsinghua.edu.cn/a...

2020-01-05 18:08:41 138

changeEncodeing.cs

使用c#将GB2312编码改为GBK

2021-12-16

CORDIC算法详解.docx

cordic 算法知道正弦和余弦值,求反正切,即角度。 采用用不断的旋转求出对应的正弦余弦值,是一种近似求解发。 旋转的角度很讲求,每次旋转的角度必须使得 正切值近似等于 1/(2^N)。旋转的目的是让Y轴趋近与0。把每次旋转的角度累加,即得到旋转的角度和即为正切值。 比如Y轴旋转45度,则值减小1/2;

2021-05-29

异步FIFO的VHDL实现

--rtl 这是源代码 --sim 这是modelsim仿真目录 已经验证,可以实现异步FIFO 两级寄存器实现读写指针的同步,地址采用格雷码形式防止亚稳态。异步FIFO的源码,个人觉得不易理解,故上传本人最近写的源码,与大家一起分享

2021-03-05

同步FIFO的VHDL实现

这是关于同步FIFO的VHDL程序代码,nut_sync_fifo --rtl 这是源代码 --sim 这是modelsim仿真目录

2021-03-05

双端口RAM的VHDL实现

这是关于双端口RAM的VHDL程序代码, nut_tpram --rtl 这是源代码 --sim 这是modelsim仿真目录

2021-03-05

伪双端口RAM的VHDL实现

这是关于伪双端口RAM的VHDL程序代码, nut_tpram --rtl 这是源代码 --sim 这是modelsim仿真目录

2021-03-05

单端口RAM的VHDL实现

这是关于单端口RAM的VHDL程序代码, nut_spram --rtl 这是源代码 --sim 这是modelsim仿真目录

2021-03-05

FPGA的UART串口读写

通过verilog编写语言实现UART串口读写操作,经过验证可用,FPGA能够实现接收计算机发送数据,并回发给计算机。 Cyclone IV E系列的EP4CE10F17C8

2020-10-13

FPGA的SPI Verilog源码,读写flash芯片

通过verilog编写语言实现读写操作SPI的flash芯片,经过验证可用,能够实现读取芯片DEVICE id Cyclone IV E系列的EP4CE10F17C8 W25Q128BV

2020-10-13

FPGA的I2CVerilog源码,读写eeprom

通过verilog编写语言实现读写操作i2c的eeprom芯片,经过验证可用,能够实现任意地址的读写数据操作。 Cyclone IV E系列的EP4CE10F17C8 AT24C02

2020-10-09

comboxTest.zip

这是WPF中MVVM设计模式很简单的一个例子,根据刘猛铁老师的深入浅出WPF系列视频中的案例的代码,适合初学者学习。另外,一个枚举类型绑定到多个RadioButton在代码中也有体现。

2020-09-03

MVVMExample.zip

这是WPF中MVVM设计模式很简单的一个例子,根据刘猛铁老师的深入浅出WPF系列视频中的案例的代码,适合初学者学习。

2020-07-26

EventExample.zip

这是C#事件很经典很简单的一个例子,根据刘猛铁老师的C#语言入门详解系列视频中的案例的代码,适合初学者学习。这是C#事件很经典很简单的一个例子,根据刘猛铁老师的C#语言入门详解系列视频中的案例的代码,适合初学者学习。

2020-07-26

DelegateExample.zip

这是C#委托很经典很简单的一个例子,根据刘猛铁老师的C#语言入门详解系列视频中的案例的代码,适合初学者学习。这是C#委托很经典很简单的一个例子,根据刘猛铁老师的C#语言入门详解系列视频中的案例的代码,适合初学者学习。这是C#委托很经典很简单的一个例子,根据刘猛铁老师的C#语言入门详解系列视频中的案例的代码,适合初学者学习。

2020-07-26

QP移植到正点原子STM32.zip

qp官网下载qpc,移植到stm32f103单片机,在正点原子战舰V3开发板上实验成功 qp搭建步骤重要提示: #define RED_QUEUE_LEN 3 #define BLUE_QUEUE_LEN 3 #define TACKER_EVENT_POOL_LEN (RED_QUEUE_LEN + BLUE_QUEUE_LEN) static QEvt const * l_redQueueSto[RED_QUEUE_LEN]; //事件队列 static QEvt const * l_blueQueueSto[BLUE_QUEUE_LEN]; //事件队列 static LedEvt LedEvtPoolSto[TACKER_EVENT_POOL_LEN]; //事件池 static QSubscrList SubSrcSto[MAX_PUB_SIG]; //订阅列表 typedef struct LedEvtTag LedEvt; //定义事件结构 struct LedEvtTag{ QEvt super_; uint16_t uiParaH; uint16_t uiParaL; }; //定义信号枚举 enum LedSignals{ START_SIG = Q_USER_SIG, KEY0_SIG, KEY1_SIG, KEY2_SIG, KEYUP_SIG, ALL_OFF_SIG, ONLY_BULE_SIG, ONLY_RED_SIG, ALL_ON_SIG, MAX_PUB_SIG }; void PublishLedEvt(uint16_t uiSig, uint16_t uiParaH, uint16_t uiParaL) //发布事件函数 { LedEvt* peTacker; peTacker = Q_NEW(LedEvt, uiSig); peTacker->uiParaH = uiParaH; peTacker->uiParaL = uiParaL; QF_publish_((QEvt*)peTacker); } QF_init(); //时间事件列表、活动对象查找表、优先级集合 QF_psInit(SubSrcSto, Q_DIM(SubSrcSto)); //初始化事件池 QF_poolInit(LedEvtPoolSto,sizeof(LedEvtPoolSto),sizeof(LedEvtPoolSto[0])); RedLed_Start(uiPrio++, l_redQueueSto, Q_DIM(l_redQueueSto), 0, 0); //建立活动对象 BlueLed_Start(uiPrio++, l_blueQueueSto, Q_DIM(l_blueQueueSto), 0, 0); /////////////////////////////////////////////////// typedef struct RedActiveTag RedActive; //构建一个活动对象活动类型 struct RedActiveTag{ QActive super_; volatile uint16_t RedLedStateNow; uint16_t a; uint16_t b; }; extern RedActive RedLed; RedActive RedLed; void RedLed_Start(uint_fast8_t prio, QEvt const *qSto[], uint_fast16_t qLen, void *stkSto, uint_fast16_t stkSize) { RedLed_Ctor(&RedLed;); QActive_start_((QActive*)&RedLed;, prio, qSto, qLen, stkSto, stkSize, (QEvt const *)0); //创立活动对象的线程并提醒 QF 开始管理活动对象 } void RedLed_Ctor(RedActive* me) { QActive_ctor(&me;->super_, (QStateHandler)RedLed_Initial); //初始化状态机基础类(成员 super) me->RedLedStateNow = 0; }

2019-05-24

linux_pwm杂项设备

itop4412开发板。杂项设备驱动复习。可控制pwm,蜂鸣器的占空比。以及led灯的开关。 ./misc_pwm_app cmd arg ( cmd = 0 控制led,arg0关1开, cmd = 1 控制蜂鸣器,arg0-100调节占空比) 杂项设备(misc device) 杂项设备也是在嵌入式系统中用得比较多的一种设备驱动。 在 Linux 内核的include/linux目录下有Miscdevice.h文件,要把自己定义的misc device从设备定义在这里。 其实是因为这些字符设备不符合预先确定的字符设备范畴,所有这些设备采用主编号10 ,一起归于misc device,其实misc_register就是用主标号10调用register_chrdev()的。 也就是说,misc设备其实也就是特殊的字符设备,可自动生成设备节点。

2019-03-15

VS上实现QP原生事件队列

解析QP原生事件队列,QF 被设计为容 易和这些外部消息队列集成。然而,在没有这些支持存在,或者现有的实现没有效率或不合适时, QF 提供了一个健壮的和高效的原生事件队列,你可以容易的为实际上任何底层操作系统或内核对它进行修 改。

2019-01-04

空空如也

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

TA关注的人

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