自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 收藏
  • 关注

原创 MSPM0G3507——引脚分布图

2024-06-14 17:50:33 562

原创 MSPM0G3507——原理图

2024-06-14 17:47:32 154

原创 MSPM0L1306时钟树

请注意,并非所有设备都具有图所示的所有时钟系统功能。振荡器(源)和时钟(目的地)之间,以及的SYSCTL寄存器位字段。图显示了MSPM0Lxx系列设备的顶级时钟树。

2024-06-12 17:45:20 141

原创 L1306——串口的配置

采样周期的选择有3、8、16等三个档,通常选择3和8即可,如果时钟偏差较大或者时钟速度太快导致波特率分频的系数计算异常,就选择16档。在sysconfig中,左侧可以选择MCU的外设,我们找到并点击UART选项卡,在UART中点击ADD,就可以添加串口外设。在运行、睡眠、停止和待机模式下有效,使用该时钟可以实现更低的功耗。这里使用的是波特率为9600、数据位8位、停止位1位、校验位无、不使用硬件流控制的配置。这里我们的串口时钟频率是4MHz,所以我们选择16档。进行打勾,以开启时钟树的配置。

2024-06-12 17:26:43 276

原创 L1306——中断有关

芯片上引出的所有GPIOA端口,都可以设置外部中断功能。本案例开启了中断,中断优先级为默认,中断的触发方式为上升沿触发(按键按下后引脚被拉高为高电平,从低电平变为高电平的过程称为上升沿),事件发布通道不开启(开启之后将会把外部中断事件发布到设置的通道上,其他外设就可以通过通道直接订阅事件)。返回值:请求的组的最高优先级挂起中断。DL_INTERRUPT_GROUP_IIDX之一。功能:获取所选中断组中挂起的最高优先级中断。参数:group要检查的中断组。

2024-06-12 15:00:28 217

原创 杂项——WINDOWS J-LINK驱动免费分享

链接:https://pan.baidu.com/s/1qwkpo88uU4eAAa61jgAtKA。--来自百度网盘超级会员V3的分享。

2024-06-12 10:52:49 85

原创 L1306——按键以及DL_GPIO_readPins(GPIO_Regs* gpio, uint32_t pins)函数用法

从代码一直查找到用户手册的寄存器,可以知道,二进制的 100 0000 0000 0000 0000 对应的就是PA18引脚。数据手册中,是从0开始往左边算,二进制的100对应的就是PA2号引脚为高电平,10000对应的就是PA4引脚为高电平。,返回的是对应引脚的状态位。当PA18引脚检测到高电平时,对应的32位寄存器中PA18的。将会被置1,返回的值为0x40000,换为2进制就是:100 0000 0000 0000 0000。根据我们sysconfig配置的引脚名称,这里写入的是。

2024-06-12 10:46:21 103

原创 L1306——IO口配置界面的说明

2024-06-12 10:25:30 462

原创 MSPM0——让灯间隔闪烁,可以看到开发板LED将会1s亮1s灭

【代码】MSPM0——让灯间隔闪烁,可以看到开发板LED将会1s亮1s灭。

2024-06-09 18:26:05 86

原创 MSPM0l1306——配置滴答定时器

我们配置好了滴答定时器之后,还要手动编写滴答定时器的中断服务函数,因为我们开启的滴答定时器的中断,当滴答定时器的计数值从我们设置的值减到0时,就会触发一次中断,触发中断就会执行中断服务函数。各个中断的中断服务函数名称已经被写死,不可修改,否则无法正常进入中断服务函数。关于中断服务函数的名称是什么,可以在工程的.s文件中找到各个中断的中断服务函数名称。是一个关键字,用来告诉编译器不要对它所修饰的变量做任何优化,因为这个变量的值可能会随时被意想不到的因素改变,比如硬件中断、多线程操作等。

2024-06-09 18:13:34 276

原创 MSPM0——GPIO的使用

该函数为控制引脚的电平翻转,如果原来是高电平则变为低电平,如果原来是低电平则变为高电平。按照本例程中LED的引脚,则可以写为。该函数为控制引脚输出高电平,按照本例程中LED的引脚,则可以写为。该函数为控制引脚输出低电平,按照本例程中LED的引脚,则可以写为。在dl_gpio.h库函数文件中,有三个函数可以控制引脚状态。

2024-06-09 17:52:47 442

原创 MSPM0——SYSCONFIG的基本操作

根据开源平台的教程进行操作。

2024-06-09 17:48:09 117

原创 杂项——编码器控制小车走固定距离(stm32)

我们只需要在代码里面写出编码器数值如果10000让小车停止,即可实现控制小车走固定的距离。先算出轮子转一周编码器的数值(假设为1000),再算出轮子一周的周长(假设为10cm)。那么要前进1米只需要转1米/10cm等于10圈,10圈编码器数值为10000。编码器.c函数(编码器初始化和中断已省略)主函数(只列出主要部分)

2024-06-08 10:51:45 763

原创 OPENMV——追踪AprilTags,并将位置信息传给单片机从而控制小车追AprilTags

【代码】OPENMV——追踪AprilTags,并将位置信息传给单片机从而控制小车追AprilTags。

2024-06-06 20:56:42 206

原创 OPENMV——识别绿色小球并通过串口把信息发送到单片机,进而控制小车追小球

【代码】OPENMV——识别绿色小球并通过串口把信息发送到单片机,进而控制小车追小球。

2024-06-06 20:55:10 329

原创 PID——调参的步骤

输入设定为系统允许的最大值60%~70%,由0逐渐加大比例增益 P,直至系统出现振荡;再反过来,从此时的比例增益 P 逐渐减小,直至系统振荡消失,记录此时的比例增益 P,设定 PID 的比例增益 P 为当前值60%~70%。比例增益 P 调试完成。确定比例增益 P 时,首先去掉 PID 的积分项和微分项,一般是令 Ti=0、 Td=0(具体见PID 的参数设定说明),使PID 为纯比例调节。第一步:确定比例增益P。第二步:确定比例增益I。第三步:确定比例增益d。第四步:进一步调整参数。

2024-06-03 22:52:22 471

原创 杂项——32舵机

通过蓝牙控制的舵机函数,如果放在某个位置会导致舵机数据收到错误,那就将该函数放在main函数之前。

2024-06-03 20:49:47 65

原创 杂项——32舵机注意事项

如果通过蓝牙控制发现舵机一直往一个方向转,可能是因为蓝牙初始化时会发送一个数据,被32识别为乱码,导致舵机出问题。舵机在while循环中使用的话,一样要每一个舵机角度后面都加一个delay,否则会造成舵机卡住不动。舵机初始化时通常会在while之前加一个角度,让舵机转到相应的角度从而初始化。

2024-06-02 00:00:48 82

原创 杂项——32舵机控制

180度舵机内部有一个基准电路,产生周期为20ms,高电平宽度为1.5ms的基准信号,这个位置其实是舵机转角的中间位置。2.5ms ---------------180度;1.5ms----------------90度;2ms -----------------135度;0.5ms----------------0度;1ms -----------------45度;设舵机的频率为50HZ,则PWM周期为20ms,0度对应的占空比为2.5%,即0.5ms的高电平输出。

2024-06-01 15:26:47 199

原创 杂项——STM32舵机控制——360°和180°的区别,模拟舵机与数字舵机的区别

180°舵机:能给定角度、固定转速。只能在0度到180度之间运动,超过范围,舵机轻则齿轮打坏,重则烧坏内部电路.数字舵机:只要给一次PWM信号就能固定角度。优点:高精度,响就快,抖动小,更大的角度固定力。360°舵机:能360度转动, 能控制转速。但不能调节转动的角度。模拟舵机:要持续提供PWM信号才能固定角度。

2024-06-01 15:16:10 139

原创 杂项——STM32ZET6要注意的一些问题——高级定时器问题和PB3,PB4引脚问题

ZET6中PB3,PB4引脚默认功能是JTDO和NJTRST,如果想将其当作正常IO口使用需要加上两行代码。ZET6可能会用到定时器,高级定时器要输出PWM要加上这样一行代码,否则无法正常输出PWM波。

2024-06-01 14:44:36 1352

原创 由标准库转HAL库(基于正点原子)——STM32HAL库常用函数——EXTI外部中断和AFIO的作用

2024-05-31 16:39:19 106

原创 杂项——双蓝牙HC-05通信(双车通信)

到此已经全部设置完成,重新给蓝牙上电,不需要按按钮,即可自动配对,同时亮,同时灭。两个HC05一个作为主机,另一个作为从机,从机可以给主机发送数据。5:从机:设置配对码,必须和主机一致。1:主机:重启模块,恢复默认状态。4:从机:重启模块,恢复默认状态。8:主机:绑定查询到的从机地址。6:从机:设置为从机模式。3:主机:设置为主机模式。注意:一定要两个蓝牙模块设置的波特率相同。7:从机:查询从机地址。11:从机:设置波特率。2:主机:设置配对码。9:主机:设置波特率。12:主机:连接地址。

2024-05-31 15:30:27 479

原创 由标准库转HAL库(基于正点原子)——STM32HAL库常用函数——NVIC

设置抢占优先级和响应优先级。

2024-05-30 20:46:31 102

原创 杂项——stm32按键支持连续按和不支持连续按

【代码】stm32按键支持连续按和不支持连续按。

2024-05-30 17:42:10 75

原创 由标准库转HAL库(基于正点原子)——STM32HAL库常用函数——GPIO

这个函数主要用来初始化我们需要用到的引脚的工作模式,包括具体引脚的工作速度、是否复用模式、上下拉等等参数。这个函数主要功能是读取我们想要知道的引脚的电平状态、函数返回值为0或1。第二个参数是选择具体的引脚如GPIOA_PIN1或GPIO_PIN2等。第二个参数是选择具体的引脚如GPIOA_PIN1或GPIO_PIN2等。第二个参数是选择具体的引脚如GPIOA_PIN1或GPIO_PIN2等。第一个参数 是选择GPIOA或GPIOB等。第一个参数是选择GPIOA或GPIOB等。第三个参数是给高电平或低电平。

2024-05-30 16:54:14 369

原创 接下来的目标与内容

1:继续发有关msp430f5529标准库的内容,也是同时为电赛做准备,也当做监督自己学习,每天进步一点点吧,离电赛还有2个月的时间,相信日积月累到时候定能灵活运用。4:各种模块的用法,封装好的便于移植的函数,比如oled,滴答定时器,wifi,ttl显示屏,mpu6050,蓝牙等。5:做一些有关pid,openmv的专题,这里面应该是包括一些具体的函数例子,以及结合自己的一些经验分享给大家。3:回炉重造,重学32的adc,dma,iic,spi,看门狗等一些较难理解的知识点。

2024-05-28 21:13:35 601 1

原创 准备电赛——CCSMSP430F5529——定时器A产生PWM

以P1.2为例输出时钟源为SMCLK = 25MHz分频系数为40装载值为12500 - 1故所得PWM频率为25MHz/40/12500=50Hz。

2024-05-27 22:22:08 329

原创 准备电赛——CCSMSP430F5529标准库——模块化编程串口

【代码】准备电赛——CCSMSP430F5529标准库——模块化编程串口。

2024-05-26 21:26:43 99

原创 准备电赛——CCSMSP430F5529标准库——定时器定时多少秒以及定时中断的写法

/设得中断频率为25MHz / 5 / 25000 = 200Hz 也就是0.005秒进一次中断。//中断频率=32768Hz / 64 / 512 = 1Hz 也就是1秒进一次中断。02h =中断源:捕获/比较1;中断标志:TAxCCR1 CCIFG;0Eh =中断源:定时器溢出;04h =中断源:捕获/比较2;06h =中断源:捕获/比较3;08h =中断源:捕获/比较4;0ah =中断源:捕获/比较5;0ch =中断源:捕获/比较6;00h =没有中断等待。

2024-05-26 21:16:42 337

原创 四轮麦轮平衡车四个轮子安放位置要求,以及编码器测速注意事项(强调,否则无法正常平移)——基于STM32F103ZET6

而速度环的值是作为参数传入直立环的,那么会进一步导致直立环算出的结果偏大,输出的PWM也会偏大,假设此时输出的PWM为正值,那么A轮速度会进一步增大,因为A轮本身就是正数;在平移时,假设两个A轮向前,两个B轮向后,这时是右平移。那么此时会出现一个问题,假设你编码器电机选择的是两个A轮,那么这两个都是正数,将两个正数传进速度环PID,速度偏差会很大,最终导致速度环的值偏大。写速度环PID时需要传进去实际速度,实际速度需要两个编码器进行测量,这里我们四个轮子上分别带了一个编码器,也就是四个编码器。

2024-05-26 16:23:54 593 1

原创 准备电赛——CCSMSP430F5529——定时器有关函数

也可利用软件置位或清除任意一个CCIFG中断标志位,当相关的CCIE中断允许位和GIE总中断允许位置位,CCIFGn中断标志位将请求产生中断。中断向量寄存器可被用来判断当前被挂起的Timer_A中断,之后通过查中断向量表得到中断服务程序的入口地址,并将其添加到程序计数器中,程序将自动转入中断服务程序。TAxCCR0中断标志位CCIFG0在Timer_A中断中具有最高的中断优先级,TAxCCR0中断产生逻辑如图所示。如果同时也置位了其他中断标志位,在当前中断服务程序执行完毕后,将自动立即响应新的中断请求。

2024-05-25 22:31:20 1695

原创 准备电赛——CCSMSP430F5529标准库——printf发送到对应串口

【代码】准备电赛——CCSMSP430F5529标准库——printf发送到对应串口。

2024-05-25 21:27:06 88

原创 准备电赛——CCSMSP430F5529标准库——串口中断和一个较难理解的点

2 =中断源:收到数据;中断标志:UCRXIFG;4 =中断源:发送缓冲区空;中断标志:UCTXIFG;该函数是在UCA0IV中取出不超过4的最大偶数。如果是2则收到数据,进行相应操作。

2024-05-25 11:52:29 205

原创 准备电赛——CCSMSP430F5529——时钟的选择依据

2024-05-25 10:44:29 390

原创 准备电赛——CCSMSP430F5529标准库——中断的写法

在中断服务程序前加__interrupt关键字(注意前面有两个短下划线),告诉编译器这个函数为中断服务程序,编译器会自动查询中断向量表、保护现场、压栈出栈等,然后,在中断服务程序的前一行写"#pragma vector=PORT1_VECTOR"指明中断源,决定该函数是为哪个中断服务的。因此,编程者只需集中精力编写中断服务程序即可,当中断请求发生且被允许时,程序会自动执行中断服务程序。 MSP430单片机的中断源数量很多,比如P1,P2口每个IO口都能产生中断,16个ADC采样通道采样结束及

2024-05-25 10:17:55 169

原创 准备电赛——CCSMSP430F5529——延迟函数MS和US

【代码】准备电赛——CCSMSP430F5529——延迟函数MS和US。

2024-05-25 09:58:07 266

原创 准备电赛——CCSMSP430F5529标准库——系统时钟初始化25MHZ

【代码】准备电赛——CCSMSP430F5529标准库——系统时钟初始化25MHZ。

2024-05-25 09:47:37 409

原创 STM32F103ZET6,四轮横向平衡麦轮车源码,加OPENMV

1lll。

2024-05-25 09:40:04 422 2

原创 准备电赛——CCSMSP430F5529标准库——一些串口,PWM知识点

P1口和P2口有定时器功能的引脚都可以输出PWM波。定时器有A 定时器和B定时器,一般常用的都是A定时器。A定时器有TA0和TA1,用定时器的捕获比较器输出pwm波时,TACCR0-TACCR4分别对应P1.1-P1.5使用时需要开启特殊中断位 PxSEL。如果要用电脑USB通信,则使用UART1,将P4.4和P4.5用跳线帽短接。如果要点亮OLED,可以接P3.0(SDA),P3.1(SCL)

2024-05-25 09:29:22 302

STM32F103ZET6,四轮横向平衡麦轮车源码,加OPENMV

平衡麦轮车加视觉识别追踪小球

2024-05-25

空空如也

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

TA关注的人

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