自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 资源 (2)
  • 收藏
  • 关注

原创 字符串大小写转换

#include<stdio.h>#include<string.h>//#define hi 'A'-'a' //也可以在后面定义int main(){ int i = 0; int length; int hi; char str[30]="han shuai"; length = strlen(str...

2019-09-17 10:00:23 1124 1

原创 sizeof 和strlen计算字符串长度

首先使用使用sizeof计算字符串长度:#include<stdio.h>#include<string.h>int main(){int len;char a[] = "hrq";len = sizeof(a);printf("%d",len);}计算结果:我们可以看到计算结果为4,若将char[ ]= "hrq"修改为char[...

2019-09-12 10:09:24 5547 2

转载 一维数组练习

数组求和求平均值#include<stdio.h>#include<stdlib.h>#include<time.h> //时间的头文件int main1(){ time_t ts;//设置时间变量 srand((unsigned int)time(&ts));//设置时间的随机数种子 int a[10]...

2019-07-26 11:48:28 263

转载 数组

数组: 内存中连续存储多个元素的结构声明一个数组时,编译器为数组分配内存存储空间,数组占据的内存空间是连续的,我们可以计算数组占据的内存大小和每个元素对应的内存受地址。使用数组处理大量同类型数据对一个大小为N,类型为short的数组,其占据的内存大小为:N*sizeof(short)=N*2如果说第一个元素在内存中的地址为P,那么第M个元素在内存的地址可表示为:P+(M-1)...

2019-07-25 17:25:18 133

转载 简单函数上

程序一定是从main函数开始,从main函数结束#include <stdio.h>//函数的别称是方法,函数也就是完成某一特定功能的模块//打印的作用void print()//自定义函数,自己写的函数 ,没有参数{ printf("锄禾日当午");//printf系统函数 //printf函数名,“锄禾日当午”参数,函数的输入 //()...

2019-07-22 18:20:17 178

转载 设计一个函数,判断整数有多少位?

代码如下:思路如下:定义一个函数,形参 是data,每次都使data/=10,定义一个length,使其自增,直到data==0为止,计算出data的位数,用length作为返回值。#define _CRT_SECURE_NO_WARNINGS //关闭安全监察#include<stdio.h>#include<stdlib.h>//12345 1...

2019-07-17 10:23:20 2391

转载 函数小结面向过程的程序结构

结构化程序设计方法:在程序中,为了能够重复使用和维护的简易性,提出千层饼式代码模型:千层饼软件模型如下:驱动程序配置 应用程序配置应用程序驱动程序库硬件编程实现如下功能:百度广告报复器打开浏览器-百度关闭浏览器实现搜索实现点击程序代码如下:#include<stdio.h>#include<stdlib.h&g...

2019-07-17 09:50:21 122

转载 ADC实验

本实验内容:使用STM32的ADC1通道1来采样外部电压值,并在TFTLCD模块上显示出来。STM32拥有1-3个ADC(STM32F101/102系列只有一个ADC),这些ADC可以单独使用,它可以单独使用双重模式(提高采样率)。STM32的ADC是12位逐次逼近型的模拟数据数字转换器。它有18个通道,可测量16个外部和2个内部信号源。各通道的A/D转换可以单次、连续、扫描或间断模式执行。A...

2019-03-09 19:53:44 2684

转载 硬件数据流

串口通讯流控制我们在串行通讯处理中,常常看到RTS/CTS和XON/XOFF这两个选项,这就是两个流控制的选项,目前流控制主要应用于调制解调器的数据通讯中,但对普通RS232编程,了解一点这方面的知识是有好处的。那么,流控制在串行通讯中有何作用,在编制串行通讯程序怎样应用呢?这里我们就来谈谈这个问题。 1.流控制在串行通讯中的作用这里讲到的“流”,当然指的是数据流。数据在两个串口之间传输时,常常会...

2019-03-04 11:27:23 950 1

转载 数模转换

数模转换器,又称D/A转换器,简称DAC,它是把数字量转变成模拟的器件。D/A转换器基本上由4个部分组成,即权电阻网络、运算放大器、基准电源和模拟开关。模数转换器中一般都要用到数模转换器,模数转换器即A/D转换器,简称ADC,它是把连续的模拟信号转变为离散的数字信号的器件。1、输入的二进制数码存入寄存器,存入寄存器的二进制数,每一位控制着一个模拟开关,模拟开关只有两种可能的输出:或是接地,...

2018-12-27 10:45:08 5967 1

转载 瞬变电磁检测原理和特点

1)瞬变电磁法检测的原理瞬变电磁法检测装置由两部分组成:发射线圈和接收线圈。发射、电磁感应和接收是其工作过程的三部分。首先:在发射线圈中通以阶跃电流1,突然关断,发射电流瞬间由1下降到零,根据电磁感应理论,因为发射线圈中电流的突然变化,会在其周围产生磁场,把因为电流的关断产生的磁场称为一次磁场,在一次磁场传播过程中,当遇到导电介质时,会在其内部激发产生感应电流,此电流又可以称作二次电流或涡流,...

2018-12-26 11:21:14 3959

原创 AD9854PCB的绘制以及调试中存在的问题以及解决方法

总结:如果使用高频信号,在画PCB时一定要注意布线问题,否则最终要输出的高频信号会出现波动很严重的现象。如果是几百K的信号,布线的影响不是很大。通过耐心的调试,最终得到了想要的正弦信号。当接上电源模块的SS24二极管后,二极管分压很大,给3.3V的供电电压,二极管两端分压2.8V,稳压器的输出端输出电压0.5V,输出电压太小,影响DDS的基本工作。解决方法:去掉二极管,直接用导线连接,后面的供...

2018-12-22 14:20:55 1004

转载 汉字显示实验

本章,我们将向大家介绍,如何用 STM32 控制 LCD 显示汉字。在本章中,我们将使用外部 FLASH 来存储字库,并可以通过 SD 卡更新字库。 STM32读取存在 FLASH 里面的字库,然后将汉字显示在 LCD 上面。 本章分为如下几个部分:1.汉字显示原理简介2.硬件设计3.软件设计4.下载验证1.汉字显示原理简介 常用的汉字内码系统GB2312,GB130...

2018-12-21 20:48:04 10162

转载 功率放大器

功率放大电路和电压放大电路没有本质的区别,只是研究问题的侧重点不同。电压放大电路一般用于小信号放大,主要讨论放大电路的电压增益、频率特性、输入和输出电阻等指标;功率放大电路主要用于相向负载提供足够大的信号功率,通常要研究电路的输出功率、电源供给的功率、能量转换效率、功率器件的散热等问题。一般的电压放大所接的负载阻抗比较大,这样输出的电流就比较小,相乘以后,功率也就不大了。功率放大器会在电压放大...

2018-12-21 16:10:27 1844

转载 电容电感分别在电路中的作用

电容: 1.耦合:电容是一个储能元件,通交流阻直流的特性,根据这个特性,可以用在电路中作为交流耦合。2.储能:电容的储能原理和电池是一样的,也可以当成电池使用,只是电容存储的电量比电池少很多,超级电容(也习惯叫法拉电容),是容量很大的电容,在电路中都是代替小容量电池使用的。3.滤波:也是根据电容的储能原理,整流电路中,二极管整流出来的是脉动直流,脉动直流给电容充电,电容把多出来的电(纹波...

2018-12-14 20:03:12 8713

转载 STM32 GPIO 配置之ODR, BSRR, BRR 详解

用stm32 的配置GPIO 来控制LED 显示状态,可用ODR,BSRR,BRR 直接来控制引脚输出状态.ODR寄存器可读可写:既能控制管脚为高电平,也能控制管脚为低电平。管脚对于位写1 gpio 管脚为高电平,写 0 为低电平BSRR 只写寄存器:[color=Red]既能控制管脚为高电平,也能控制管脚为低电平。对寄存器高 16bit 写1 对应管脚为低电平,对寄存器低16bit写1对应管脚为...

2018-12-04 19:03:43 1429

转载 matlab中各种线型-颜色-标记点

各种颜色属性选项'r' 红色 'm' 粉红'g' 绿色 'c' 青色'y' 黄色 'k' 黑色各种线型属性选项'-' 实线 '--' 虚线':' 点线 '-.' 点划线各种标记点属性选项'.' 用点号绘制各数据点 '^' 用上三角绘制各数据点'+' 用'+'号绘制各数据点 'v' 用下三角绘制各数据点'*' 用'*'号绘制各数据点 '>' 用右三角绘制各数据点' ....

2018-11-10 20:52:30 56028

转载 SPI实验

使用STM32自带的SPI来实现对外部FLASH的读写,并将结果显示在TFTLCD模块上。1.SPI简介SPI就是串行外围设备接口,SPI接口主要应用在EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。SPI是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易...

2018-10-30 22:33:06 3072

转载 TFTLCD实验

1.TFTLCD简介:我们通过STM32的普通IO口模拟8080总线来控制TFTLCD的显示。TFT-LCD即薄膜晶体管液晶显示器。TFTLCD模块采用16位的并方式与外部连接,之所以不 采用8位的方式,是因为彩屏的数据量比较大,尤其在显示图片的时候,如果用8位的数据线,就会比16位方式慢一倍以上。我们当然希望速度越快越好,所以我们选择 16 位的接口。该模块的80并口有如下一些信号...

2018-10-25 17:34:45 9707

转载 定时器中断实验

STM32的通用定时器是一个通过可编程预分频器(PSC)驱动的16位自动装载计数器(CNT)构成。STM32的通用定时器可以被用于:测量输入信号的脉冲长度(输入捕获)或者产生输出波形(输出比较和PWM)。使用定时器预分频器和RCC时钟控制预分频器,脉冲长度和波形周期可以在几个微妙到几个微妙间调整。STM32的每个通用定时器都是完全独立的,没有相互共享的任何资源。STM3的通用TIMx(TIM2...

2018-10-18 19:56:50 6176

转载 PWM实验

1.PWM简介脉冲宽度调制(PWM),是利用微处理器的数字输出来对模拟电路 进行控制的 一种非常有效的技术,即就是对脉冲宽度的控制。STM32的定时器除了TIM6和7,其他的定时器都可以用来产生PWM输出。其中高级定时器TIM1和TIM8可以同时 产生多达7路的PWM输出。而通用定时器也能同时产生多达4路的PWM输出,这样,STM32最多可以同时产生30路PWM输出。这个实验我们仅使用TI...

2018-10-11 22:18:01 3827

转载 串口实验

使用STM32的串口来发送和接受数据,STM32通过串口和上位机的对话,STM在收到上位机发过来的字符串后,原原本本的返回给上位机。1.STM32串口简介:串口作为MCU的重要外部接口,同时也是软件开发重要的调试手段。STM32F103RCT6最多可提供5路串口,有分数波特率发生器、支持同步单线通信和半双工的单线通讯、支持LIN、支持调制解调操作、智能卡协议和IrDA SIR ENDE...

2018-10-08 21:56:23 3787

转载 指针

如果在程序中定义了一个变量,在对程序进行编译时,系统就会给这个变量分配内存单元。编译系统根据程序中定义的变量类型,分配一定长度的空间。由于通过地址能找到 所需的变量单元,可以说,地址指向该变量单元。对于不同类型的数据,在内存中分配的存储单元大小(字节数)和存储方式是不同的(如整数以补码形式存放,实数以指数形式存放)。如果只是指定了地址,希望从该单位中调取数据,这是做不到的虽然能找到所指...

2018-09-30 11:50:55 105

转载 按键输入实验

STM32的IO口做输入使用的时候,是通过调用函数GPIO_ReadInputDataBit()来读取IO口的状态的。通过STM32开发板上载有的3个按钮(KEY0/KEY1/WK_UP),来控制板上的2个LED,其中KEY0控制DS0,按一次亮,再按一次,就灭。KEY1 控制DS1, 效果同KEY0。WK_UP按键则同时控制DS0和DS1,按一次,它们的状态就翻转一次。在 MiniSTM...

2018-09-29 18:22:07 3208

转载 寄存器

STM32的每个IO端口都有7个寄存器来控制。分别是:配置模式的2个32位的端口配置寄存器CRL和CRH;2个32位的数据寄存器IDR和ODR;一个32位置位/复位寄存器BSRR;一个16位的复位寄存器BRR;一个32位的锁存寄存器LCKR。CRL和CRH控制着每个IO口的模式及输出速率。CRH的作用和CRL完全一样,只是CRL控制的是低八位输出口,而CRH控制的是高八位输出口。在固件...

2018-09-29 15:31:00 511

转载 跑马灯实验

程序编写思路:1.如果需要配置STM32的外设,先使能该外设时钟。2.开始IO口的初始化,分别进行端口配置。(1)输出模式(2)IO口的速度(3)初始化所需要的端口(4)配置端口所需的功高低电平初始化PB5和PE5为输出口,并使能这两个口的时钟LED I/O初始化void LED_Init(void){GPIO_InitTypeDef GPIO_Init...

2018-09-29 12:06:00 2209

转载 GPIO库函数配置方法

函数分布文件: - stm32f10x_gpio.c -stm32f10x_gpio.hGPIO输入输出配置重要函数:void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct);uint8_t GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx, uint16_...

2018-09-28 17:32:24 1418

转载 寄存器配置方式改写工程模板代码

int main(void){ delay_init(); RCC->APB2ENR|=1<<3; //使能PORTB时钟 所有GPIO都挂载在APB2下面RCC->APB2ENR|=1<<6; //使能PORTE时钟 GPIOB->CRL...

2018-09-28 17:27:57 498

AD9854原理图

自己画的AD9854的原理图,而且作出了板子并且调试成功。

2018-12-07

智能小车程序

这个程序是使用STM32的板子对小车进行控制,功能是:循迹+避障+遥控

2018-09-13

空空如也

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

TA关注的人

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