首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
用stm32做一个波形发生器
2024-09-05
STM32 基DMA的DAC波形发生器
DAC是STM32系列的一个基本外设,可以将数字信号转化成模拟信号,这次我将使用DAC来输出一个特定波形. 首先确定工作方法,由于我目前在做的简易示波器在输出波形的同时还需要显示输入信号,所以不能占用太多CPU时间,于是就选用了基于DMA的ADC. 使用DMA只需告诉DMA外设它要怎么搬移数据就可以处理其他事. 首先定义一下 #define DAC_DHR12R1 (u32)&(DAC->DHR12R1) //DAC DATA buff 作为DMA的外设数据地址 首先是初始化输出管
动手实践丨手把手教你用STM32做一个智能鱼缸
摘要:本文基于STM32单片机设计了一款基于物联网的智能鱼缸. 本文分享自华为云社区<基于STM32+华为云IOT设计的物联网鱼缸[玩转华为云]>,作者: DS小龙哥 . 1. 前言 为了缓解学习.生活.工作带来的压力,提升生活品质,许多人喜欢在家中.办公室等场所养鱼.为节省鱼友时间.劳力.增加养鱼乐趣:为此,本文基于STM32单片机设计了一款基于物联网的智能鱼缸.该鱼缸可以实现水温检测.水质检测.自动或手动换水.氛围灯灯光变换和自动或手动喂食等功能为一体的控制系统,鱼缸通过ESP8266连接
(DDS)正弦波形发生器——幅值、频率、相位可调(二)
(DDS)正弦波形发生器--幅值.频率.相位可调(二) 主要关于调相方面 一.项目任务: 设计一个幅值.频率.相位均可调的正弦波发生器. 频率每次增加10kHz 相位每次增加 PI/2 幅值每次增加两倍 ROM的深度为1024.宽度为8 二.文章内容: 完成调相模块并验证功能 完成调幅模块 按结构图来连接各个模块并仿真验证 1.调相 从图像上来理解调整相位就是原函数在X轴上进行水平移动. 在本项目中函数的波形图按照顺序存在ROM中,我们只要按照比例调整读取ROM的地址,即可调相. 前文中我们使用
SLAM+语音机器人DIY系列:(三)感知与大脑——6.做一个能走路和对话的机器人
摘要 在我的想象中机器人首先应该能自由的走来走去,然后应该能流利的与主人对话.朝着这个理想,我准备设计一个能自由行走,并且可以与人语音对话的机器人.实现的关键是让机器人能通过传感器感知周围环境,并通过机器人大脑处理并输出反馈和执行动作.本章节涉及到的传感器有激光雷达.IMU.轮式里程计.麦克风.音响.摄像头,和用于处理信息的嵌入式主板.关于传感器的ROS驱动程序开发和在机器人上的使用在后面的章节会展开,本章节重点对机器人传感器和嵌入式主板进行讲解,主要内容: 1.ydlidar-x4激光雷达 2
OMAPL多核异构通信驱动AD9833波形发生器-Notify组件
OMAPL多核异构通信驱动AD9833-Notify组件demo OMAPL多核通信有三个主要机制,Notify,MessageQ,RegionShare;这里主要利用了Notify机制进行通信控制. 要做一个什么实验? 简单的说,ARM跑一个界面上面有一些按钮,DSP负责驱动AD9833产生正弦.方波和三角波,写入频率信息.这个实验结构是一个经典的单向的传输结构,由用户触发ARM跑的界面上的按钮,发出消息通知DSP,DSP控制AD9833产生波形,写入频率字等信息. 那么ARM的Linux端首
基于FPGA的DDS任意波形发生器设计
一.简介 DDS技术最初是作为频率合成技术提出的,由于其易于控制,相位连续,输出频率稳定度高,分辨率高, 频率转换速度快等优点,现在被广泛应用于任意波形发生器(AWG).基于DDS技术的任意波形发生器用高速存储器作为查找表,通过高速D/A转换器来合成出存储在存储器内的波形.所以它不仅能产生正弦.余弦.方波.三角波和锯齿波等常见波形,而且还可以利用各种编辑手段,产生传统函数发生器所不能产生的真正意义上的任意波形. 二.原理 根据傅立叶变换定理可知,任何周期信号都可以分解为一系列
致敬学长!J20航模遥控器开源项目计划【开局篇】 | 先做一个开机界面 | MATLAB图像二值化 | Img2Lcd图片取模 | OLED显示图片
我们的开源宗旨:自由 协调 开放 合作 共享 拥抱开源,丰富国内开源生态,开展多人运动,欢迎加入我们哈~ 和一群志同道合的人,做自己所热爱的事! 项目开源地址:https://github.com/Cai-Zi/STM32_RC_Transmitter Bilibili账号:蔡子CaiZi 个人主页:https://space.bilibili.com/349576976 1.为什么要用STM32做航模遥控器?Arduino不香嘛? 之前用Arduino Pro Mini制作了一个航模遥控器+接
做一个U盘的学习路线
最近想研究一个U盘,然后顺便熟悉一下USB协议.因为USB协议比较复杂, 常用的复杂外设除了WiFi,Ethernet,SDIO和USB这些就是USB了,学习USB的时候肯定要拿一个东西下手,所以简单了解之后准备了下列资料: 前期准备 1.<圈圈教你玩USB>.这本书比较经典,但是拿的芯片比较老了,在淘宝上搜索发现这本书配套的PDIUSBD12有现成的独立模块使用.因为手头上正好有一个STM32开发板,可以用来对接它.STM32之前用来对接红外线后来被闲置(参考这篇http://www.cnb
(DDS)正弦波形发生器——幅值、频率、相位可调(一)
(DDS)正弦波形发生器--幅值.频率.相位可调 一.项目任务: 设计一个幅值.频率.相位均可调的正弦波发生器. 频率每次增加1kHz. 相位每次增加 2*PI/256 幅值每次增加两倍 二.文章内容: DDS的核心原理. 分别使用两种方式完成频率可调(a.b),并且进行对比(c),最后对b进行优化(d). 完成赋值.频率.相位可调的正弦波形发生器.(文章二) 1.DDS核心原理: 读取ROM中存储的波形数据获得一个基础波形(基频),之后不断进行循环读取. 幅值--ROM中取得数据使用乘法进行放
【技巧】使用weeman来做一个钓鱼网页
本文来自网友836834283 对玄魂工作室的投稿. 工具项目地址:https://github.com/Hypsurus/weeman/ 克隆地址:https://github.com/Hypsurus/weeman.git 首先cd到目录下面,在终端输入./weeman.py 进去之后我们输入帮助命令help 上面的这些就是我们要设置的参数,我们现在一步一步来 help //帮助 show //显示的配置 set //设置show下边的各个参数值 quit //退出 run //执行 运行
用struts2标签如何从数据库获取数据并在查询页面显示。最近做一个小项目,需要用到struts2标签从数据库查询数据,并且用迭代器iterator标签在查询页面显示,可是一开始,怎么也获取不到数据,想了许久,最后发现,是自己少定义了一个变量,也就是var变量。
最近做一个小项目,需要用到struts2标签从数据库查询数据,并且用迭代器iterator标签在查询页面显示,可是一开始,怎么也获取不到数据,想了许久,最后发现,是自己少定义了一个变量,也就是var变量.<s:iterator>标签有一个value属性,用来存放在Action类的方法中存数据的list集合,还有一个id,好像是说指定集合的索引的意思,就是给list集合遍历出来的每个对象加上一个数字标签,反正我是这么理解的,没用过.还有一个很重要,就是var变量,我在s:iterator按ctr
基于trie树做一个ac自动机
基于trie树做一个ac自动机 #!/usr/bin/python # -*- coding: utf-8 -*- class Node: def __init__(self): self.value = None self.children = {} # children is of type {char, Node} self.fre = 0 self.father = None self.fail = None def CMP(a, b): return b.fre - a.fre cla
做一个 App 前需要考虑的几件事
做一个 App 前需要考虑的几件事 来源:limboy的博客 随着工具链的完善,语言的升级以及各种优质教程的涌现,做一个 App 的成本也越来越低了.尽管如此,有些事情最好前期就做起来,避免当 App 有了一定规模后,再感慨当初为什么没有多留点心. 完善的日志系统 以 iOS 为例,有时图方便,就直接用 NSLog 了,甚至线上都一直开着.一方面会影响性能,尤其是输出比较频繁的时候,另一方面也容易泄露敏感信息,所以一般做法是在 Release 模式下禁用 NSLog,比如在 pch 文件中
有了lisk,为什么我们还要做一个Asch?
0 前言 首先要声明一点,我们和我们的一些朋友都是lisk的投资人和支持者,我们也相信lisk会成功. 事实上,lisk已经成功了一半,目前在区块链领域融资金额排行第二,仅次于以太坊. 那为什么我们还要做一个类似的Asch侧链平台呢? 我们除了看到所谓的"钱景"外,更是看到了lisk背后的crypti技术的巨大潜力以及当前区块链领域的发展趋势.下面我们会从几方面来进行阐述: 1 技术趋势 自从2009年比特币发布以来,在加密电子货币方面的创新层出不穷. 一开始追随者们只是简单地调整基础
做一个阅读管理APP
背景 由于最近在看的书有点多,所以一直想找一个能够管理阅读进度的书(鄙人记性不是很好,两天不看就忘了)可惜Android平台上一直找不到合适的APP: 有没有读书进度管理的网站或软件啊? 有没有记录读书进度的APP? 所以决定自己做一个. 开发 分析一下需要的知识: ListView呈现书籍信息 SQLite存储数据 自定义对话框 其实逻辑还是很清晰的,预计一上午,但是其实花了一晚上加一上午,还是语言不熟练,因为工程小,所以编写边架构也没出事.以下是工程截图 效果 源代码 Reading 不足之
微软云创益大赛获奖团队风采:做一个中国特色的.Net源代码社区
为了强化云技术,落地云应用,彰显云价值,微软(中国)携手中国计算机报举办了“微软Cloud OS第二届云创益大赛”.本届大赛历时111天,共吸引了6647位个人组选手回答了70,078道题,59支参赛团队参赛,共计30多万次官网访问量,29,000多条官方微博互动.大赛为参赛者提供了一个了解.体验和应用微软“全云”的平台,同时也涌现出一批优秀的团队和作品.为了树立“全云”时代的标杆.表彰优秀参赛团队,本文将持续报道10支进入决赛圈的参赛团队及其优秀作品. 初学程序开发的人看到密密麻麻的代码或多或
用jQuery做一个三级菜单,鼠标移动到二级菜单的选项上,然后再迅速离开后,当鼠标再移动到该一级菜单或其他二级菜单选项,三级菜单也会显示。
用jQuery做一个三级菜单,鼠标移动到二级菜单的选项上,然后再迅速离开后,当鼠标再移动到该一级菜单或其他二级菜单选项,三级菜单也会显示. 原因:在为一个元素绑定hover事件之后,用户把光标移入元素时会触发动画效果,而当这个动画效果还没结束时,用户就将光标移除这个元素了,那么光标移除胡动画效果将会被放进队列之中,等待光标移入的动画结束后再执行.因此如果光标移入移除得过快就会导致动画效果与光标的动作不一致. 方法一:用stop() $(function () { $(".ListFirs
【 D3.js 入门系列 --- 5.1 】 做一个带坐标轴和标签的图表
前面几节讲解了图标.坐标轴.比例等等,这一节整合这些内容做一个实用的图表.结果图如下: 代码如下所示: <html> <head> <meta charset="utf-8"> <title>Chart</title> </head> <style> .axis path, .axis line{ fill: none; stroke: black; shape-rendering: crispEdge
用CSS3的transform来做一个立方体
有一次上数据结构课老师布置了一个用队列的思想通过js和Html来做一个“跳舞配对”的网页,当时那个跳舞的部分用了css3里面transform的相关属性做了个个让图片无限翻转的效果,可能正是由于这个效果,让我想到了--可以不可以通过transform来弄个3D的立方体呢?后来慢慢的去做,遇到好多问题,下面把这次小尝试记录下,等到日后有灵感再去弄... 代码如下: <!DOCTYPE html> <html lang="en"> <head> <
【Bugly干货分享】一起用 HTML5 Canvas 做一个简单又骚气的粒子引擎
Bugly 技术干货系列内容主要涉及移动开发方向,是由Bugly邀请腾讯内部各位技术大咖,通过日常工作经验的总结以及感悟撰写而成,内容均属原创,转载请标明出处. 前言 好吧,说是“粒子引擎”还是大言不惭而标题党了,离真正的粒子引擎还有点远.废话少说,先看[demo],扫描后点击屏幕有惊喜哦… 本文将教会你做一个简单的canvas粒子制造器(下称引擎). 世界观 这个简单的引擎里需要有三种元素:世界(World).发射器(Launcher).粒子(Grain).总得来说就是:发射器存在于世界之中,
热门专题
datetime获取周
layer 判断验证是否通过
finereport访问频繁报错
运算结果是NA怎么解决
两个talbe拼在一起边界重复
.netcore 微信登陆
怎么查看 docker的运行环境
draw io 画 数据表 关系图
condarc文件打开方式
python 加密和解密算法
fastdfs原图能显示缩略图显示不了
websocket 注入dao
ajax封装后怎么调用
服务器搭建内网vpn
uiSelect怎么删除
objectarx.net 写入dwg
mysql安装时说不能打开文件
html什么是文本修饰
idea pick 撤销
mysql 季度统计