草庐IT

STM32与FPGA之间的SPI通讯

全部标签

STM32——SD卡实验(SDIO方式)

一、SD卡简介1、什么是SD卡?SD卡(SecureDigitalMemoryCard)即:安全数码卡。它是在MMC的基础上发展而来,是一种基于半导体快闪记忆器的新一代记忆设备,它被广泛的用于便携装置上使用,例如数码相机、个人数码助理(PDA)和多媒体播放器等。SD卡由日本松下、东芝以及美国SanDiak公司于1999年8月共同开发研制。SD卡容量分类,分为三类:SD卡、SDHC卡、SDXC卡。如下表所示: SD卡外形和接口图如下图所示:SD卡由9个引脚与外部通信,支持SPI和SDIO两种模式,不同模式下,SD卡引脚功能描述如下表所示: SD模式:第一个脚DAT3(也就是第四根数据线),第二个

【项目设计】基于STM32人脸识别系统 - 单片机 物联网 嵌入式

文章目录一.前言二.简介三.主要器件四.系统整体方案五.部分核心代码一.前言项目设计主要是对于所学知识的整体回顾,需要结合各个学科,才能做出达到符合标准的设计。文章的目的在分享优质的项目以及项目经验,提供设计思路,欢迎交流与指正不足之处。二.简介由于人脸识别技术具有无需接触、安全性高、可靠性高等优点,在身份认证领域具有广阔的应用前景。目前,市场中的门禁系统大多采取离线加传统人脸识别算法的方式,无法实时记录访客信息,并存在识别准确率低、容错率较低、只针对特定场景等缺点。该设计主要目的在于解决上述的问题,采用深度学习人脸识别算法与在线,计算的门禁系统解决方案。三.主要器件STM32F407ZGT

STM32CubMX——ESP8266WiFi模块

前言凡心所向,素履所往;生如逆旅,一苇以航。一、ESP8266介绍ESP8266是一款超低功耗的UART-WiFi透传模块,拥有业内极富竞争力的封装尺寸和超低能耗技术,专为移动设备和物联网应用设计,可将用户的物理设备连接到Wi-Fi无线网络上,进行互联网或局域网通信,实现联网功能。硬件接口丰富,可支持UART,IIC,PWM,GPIO,ADC等,适用于各种物联网应用场合。如下我们使用的USART串口接口的ESP8266模块:二、接线与引脚说明开发板:STM32F103RBT6(正点原子的NANO开发板)WiFi模块:ESP8266MOD型号(如上图所示)接线图:STM32开发板ESP8266模

STM32CubeMX配置--STM32F103C8T6最小系统板

1.新建工程首先是新建工程选择左上角的File然后点击NewProject,或者直接使用快捷键Ctrl+N新建工程2.开发板型号的选择然后选择开发板型号,在CommercialPartNumber处输入STM32F103C8T6然后在下方会有选择直接双击型号就会进入配置界面3.配置修改PINout&Configuration(1)RCC修改首先点击左上角的SystemCore然后点击RCC将HighSpeedClock从Disable改成Crystal/CaramicResonator:晶体、陶瓷谐振器(2)SYS修改将Debug从NoDebug修改成SerialWire:串行线调试(3)GP

STM32如何配置HAL库

STM32如何配置HAL库前言  相比较早几年使用标准库开发来讲,最近几年HAL库的使用是越来越多,那么我们开发应当使用哪一种呢,本文着重介绍常用的几种开发方式及相互之间的区别,白猫也好、黑猫也好,抓到耗子就是好猫。STM32三种开发方式  通常新手在入门STM32的时候,首先都要先选择一种要用的开发方式,不同的开发方式会导致你编程的架构是完全不一样的。一般大多数都会选用标准库和HAL库,而极少部分人会通过直接配置寄存器进行开发。网上关于标准库、HAL库的描述相信是数不胜数。可是一个对于很多刚入门的朋友还是没法很直观的去真正了解这些不同开发发方式彼此之间的区别,所以笔者想以一种非常直白的方式,

java - Jsonrpc4j 和 go 的 rpc/jsonrpc 之间的 JSONRPC 格式不同

当我尝试使用net/jsonrpc包构建服务器和带有jsonrpc4j的Java客户端时遇到问题问题是jsonrpc4j是当发生错误时,golang的方法将错误和编码返回给json。我在客户端得到了这个json对象{"id":-6028374044949000,"result":null,"error":"someerrorreturnmessage"}此对象在java的json4j中转换失败。http://www.jsonrpc.org/specification#error_object我查看了jsonrpc页面,说errorfieldMUSTajsonobjectwithfiel

google-app-engine - 如何使用 Go 运行时在 App Engine 上的实例之间传递套接字?

Python运行时通过picklingtheconnection允许它.是否有类似的方式在经典AppEngine上使用Go运行时与google.golang.org/appengine/socket共享套接字? 最佳答案 描述符未在GoAPI中公开:https://github.com/golang/appengine/blob/master/socket/socket_classic.go#L152typeConnstruct{ctxcontext.Contextdescstringoffsetint64protpb.Create

json - 去测试 map 之间的区别

我正在尝试对json对象运行一些测试。目前我有一个函数来比较json字符串并在它们不匹配时输出错误消息:funcassertJsonEqual(expected,actualstring)bool{actualStruct:=make(map[string]interface{})expectedStruct:=make(map[string]interface{})json.Unmarshal([]byte(expected),&expectedStruct)json.Unmarshal([]byte(actual),&actualStruct)if!reflect.DeepEqua

go - 在启用隐私的链代码之间传递查询

我有两个链码——我们称它们为A和B——我试图让A在启用隐私的设置中调用B上的方法。下面显示了我尝试进行的那种调用的示例。func(e*ChaincodeA)someFuncOnChaincodeA(stub*shim.ChaincodeStub,args[]string)([]byte,error){//DostuffnewArgs:=[]string{"somevalue1","somevalue2"}msg,err:=stub.InvokeChaincode(chaincodeBName,"someFuncOnChaincodeB",args)iferr!=nil{fmt.Prin

go - 如何以设定的速度在 2 个 gps 点之间移动?

我正在尝试创建一个函数,让我给出2个参数、一个新位置和一个行进速度(以米/秒为单位)看起来像这样:func(l*Location)Move(newLoc*Location,speedfloat64){R:=6371.0//Kilometerslat1:=l.Latitude*math.Pi/180lat2:=l.Longitude*math.Pi/180diffLat:=(newLoc.Latitude-l.Latitude)*math.Pi/180diffLon:=(newLoc.Longitude-l.Longitude)*math.Pi/180a:=math.Sin(diffLa