野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 26736|回复: 35

记录STM32学习进度用官方学习资料

[复制链接]
发表于 2021-2-9 22:34:31 | 显示全部楼层 |阅读模式
大家一起监督,我也不确定我能坚持多久毕竟做硬件又难又累,做软件你随便找个电脑下点开发环境,基本准备完毕。但是学习硬件你得买呀。
毕竟是硬件更新又快。
以前还想在硬件领域大展拳脚,

可我现在都有点动摇了,不知道能不能坚持下去。先这样。


回复

使用道具 举报

 楼主| 发表于 2021-2-20 21:02:09 | 显示全部楼层
FSMC 扩展外部sram
大家看芯片的图片
A0-A18总计有19根数据线
应该是2的19次方吧,为啥是18次方呢
野火论坛202102202100458942..png
野火论坛202102202100528034..png
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-2-21 19:22:49 | 显示全部楼层
LCD液晶显示
在用3.2寸电阻屏控制显示字符的时候发现有些时候会有错码,拍机器两下就正常了。程序没有动。
没有找到原因,但我估计是不是环境因素影响?我周围乱七八糟什么电子器件都有。电路连接非常紧密,检查好多遍了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-2-21 19:24:01 | 显示全部楼层
SEA龙 发表于 2021-2-21 19:22
LCD液晶显示
在用3.2寸电阻屏控制显示字符的时候发现有些时候会有错码,拍机器两下就正常了。程序没有动。
...

怎么图片没有发上来?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-2-22 14:45:29 | 显示全部楼层
SEA龙 发表于 2021-2-20 21:02
FSMC 扩展外部sram
大家看芯片的图片
A0-A18总计有19根数据线

野火论坛202102221445053525..png
零死角玩转stm32也是这样写的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-2-26 19:22:46 | 显示全部楼层
OV7725中的FIFO没有介绍
野火论坛202102261921572088..png
可能前面说了但是再补充一下
fifo先入先出缓冲器
野火论坛202102261922042929..png
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-2-27 12:34:34 | 显示全部楼层
ov7725摄像头的接口问题
野火论坛202102271232393773..png
这里面接的是5v
而板子上面写的是

回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-2-27 12:35:22 | 显示全部楼层
SEA龙 发表于 2021-2-27 12:34
ov7725摄像头的接口问题

这里面接的是5v

file:///C:\Users\28938\Documents\Tencent Files\2893870823\Image\C2C\F6ABC17252B30D87639F3478B88FAD2D.jpg
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-2-27 12:36:15 | 显示全部楼层

图片不知道为啥发不了了,我口述吧。
板子上面是3.3v
到底哪个正确?
回复 支持 反对

使用道具 举报

发表于 2021-2-27 19:45:07 | 显示全部楼层
不是从2的0次开始么?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-2 11:39:16 | 显示全部楼层
GPIO按键检测学习小提示 野火论坛202103021134404089..png
这里面的TOGGLE函数,咱们按F12进去看一下
野火论坛202103021135368618..png
就长这个样子。

这个LEd_g-gpio-pin实际上就是为了取第零位,不用他,咱们直接写16进制即可,
不得不佩服作者很巧妙的运用了这个第零位,因为他的定义值恰好与第零位相对应,不用额外设置一个第零位相异或,减少了代码量,但是给小白造成了一点点小疑惑,哈哈
大家看到我的帖子注意就好,我第一次看也感觉有点奇怪





回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-2 15:06:39 | 显示全部楼层
告诉大家一个小技巧这个官方资料里是没有展现的。
写参数的时候加上|运算(或运算)就可以减少代码量,同时初始化很多函数。
我这个帖子也很少人看,哈哈哈哈哈哈
谁要是看例子回复我。
我的QQ:2893870823
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-2 15:10:42 | 显示全部楼层
cyg1dm 发表于 2021-2-27 19:45
不是从2的0次开始么?

有两个二进制位,能表示几种状态?
00 01 10 11显然是四种状态,从1开始记住了吗?
不是从0开始的,如果从零开始,
结果就是两个位置标示一个状态,这显然是不对的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-2 15:32:44 | 显示全部楼层
misc.c
misc.h
文件到底是个啥?
miscellaneous
就这意思我也是服了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-3 10:52:30 | 显示全部楼层
官方给的例程有点小问题
EXTI——外部中断事件控制器
编译的时候提示两个错误
1:没有指定exti头文件路径,我们经过前面的学习改成过来应该不难吧,觉得难得话往回看。
2: 野火论坛202103031051278717..png 没有足够的信息资源来提供罗列信号。这个问题谁能解决?哈哈
我稍后公布答案。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-3 11:02:50 | 显示全部楼层
SEA龙 发表于 2021-3-3 10:52
官方给的例程有点小问题
EXTI——外部中断事件控制器
编译的时候提示两个错误

添加exti.c就好了
我本不想说的,担心杠精说我不会
回复 支持 反对

使用道具 举报

发表于 2021-3-3 11:38:11 | 显示全部楼层
SEA龙 发表于 2021-3-3 10:52
官方给的例程有点小问题
EXTI——外部中断事件控制器
编译的时候提示两个错误

占个位。我们外部中断常用模式是EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;我想问一下如果选择EXTI_Mode_Event事件模式会怎么样,简而言之就是如何设置事件模式?
回复 支持 反对

使用道具 举报

发表于 2021-3-3 13:42:54 | 显示全部楼层
147852369 发表于 2021-3-3 11:38
占个位。我们外部中断常用模式是EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;我想问一下如果选 ...

事件模式建议不开启,开启的话硬件上可以中断,软件上调试不会。一般常用的就够了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-3 15:49:31 | 显示全部楼层
147852369 发表于 2021-3-3 13:42
事件模式建议不开启,开启的话硬件上可以中断,软件上调试不会。一般常用的就够了。 ...

你自问自答呢吗?不让我参与了你?这我帖子
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-3 15:51:11 | 显示全部楼层
147852369 发表于 2021-3-3 13:42
事件模式建议不开启,开启的话硬件上可以中断,软件上调试不会。一般常用的就够了。 ...

哈哈哈哈我知道了,你是新手,没搞清功能,哈哈哈哈,自己给自己来波热度哈哈哈,兄弟你看到中断了吗?
有不懂的可以问我,别问太难得
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-3 15:55:31 | 显示全部楼层
发现st标准固件库中的一个小问题,不知道你们的是那样吗?
不废话了直接上图
野火论坛202103031552069486..png
这是中断的一个函数解释
stm32f10x-exti。h
是h不是c,没写错,你们放心看。
这是exti外部中断的两个参数,都是extimode—typedef。
第二个是触发方式选择,参数应该是
EXTITrigger_TypeDef。才对
st应该没错,可能我是哪里碰了一下吧,这种小问题要是新手遇到不得坑死哈哈哈哈哈哈哈
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-3 17:17:19 | 显示全部楼层
野火论坛202103031715534413..png
我们在做很多中断程序时,都已经进入中断程序了你还判断个锤子!!!!!!!!!!!
回复 支持 反对

使用道具 举报

发表于 2021-3-4 18:55:52 | 显示全部楼层
SEA龙 发表于 2021-3-3 15:51
哈哈哈哈我知道了,你是新手,没搞清功能,哈哈哈哈,自己给自己来波热度哈哈哈,兄弟你看到中断了吗?
...

我没指望你能回答出来,只是希望路过看到的人知道的话告诉一下。后来自己找到了回来填个坑。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-5 16:50:08 | 显示全部楼层
147852369 发表于 2021-3-4 18:55
我没指望你能回答出来,只是希望路过看到的人知道的话告诉一下。后来自己找到了回来填个坑。 ...

这样啊,
那我也没想回答你
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-5 20:43:00 | 显示全部楼层
野火论坛202103052035364717..png
为什么不能一气呵成将整个数据全部发送,而要设置很多位用来检测呢?呃,St. m的速度也够,是因为St. m的速度太快了,这个芯片太快,如果不进行检测的话,那些个从机设备来不及。响应就已经跑完程序了。





野火论坛202103052038135731..png 野火论坛202103052038296903..png
U21    就是eeprom
别编成了半天不知道哪个是。(这是霸道v2的板子)。视频中的是v1,我要不说你肯定找不到。




野火论坛202103052040143285..png
讲串口的时候我们应该注意过,总计有两个大门。一个是usart的使能也就是总大门,还有一个发送使能,接收使能,那么为什么发送和接收使能没有配置能?默认开启吗?
其实不然,当我们调用发送和接收函数时,那个函数就已经往寄存器中写入了使能,我不截图了就,今天太累了,


回复 支持 反对

使用道具 举报

发表于 2021-3-5 21:03:06 | 显示全部楼层
SEA龙 发表于 2021-3-5 20:43
为什么不能一气呵成将整个数据全部发送,而要设置很多位用来检测呢?呃,St. m的速度也够,是因为St. m的 ...

还在坚持啊
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2021-3-5 21:51:58 | 显示全部楼层
我的天,火哥来了,我靠,大家快来看看啊,火哥来看我了,我牛了呀。

咱们的视频讲解那么好,我能不坚持吗?哈哈

火哥我还没睡,在想个问题
能帮我解答下吗?

hal库已经是未来stm32的趋势了,咱们学标准库是不是有点out了?
我都把标准库学差不多了,现在可能又要再重新学习hal库。好苦恼。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-6 15:07:08 | 显示全部楼层
野火论坛202103061504571493..png
eeprom是rom

为什么能读能写?

现在的肉末和ram早已失去了它当时的意义,当时的意义确实是可以。呃,只能读也只能写,但是现在。但是现在呢?只是作为一种技术来说,并不能严格意义上的去划分他们,这个就是很好的例子。




2,有些程序全速运行的时候会出现错误,但是当我们仿真设置断点去分段运行时,他又没有错误。这是一个很奇怪的问题。因为我一直在想全速运行和分段运行都是一样的。我一度怀疑自己的代码有问题。但是想了很久。分段运行的时候,它会自动的。给每个程序都留有回旋的余地。换句话说,就是你的每个函数在写对的情况下,他都会确保你能运行。而我们在整体去运行程序的时候就不会有这个。问题。因为全速运行的时候他是按照真实的去跑的儿调试的时候他MDK里面会有一个内置的。一个特殊机构会保证你再把程序写对的情况下,他尽可能的去让你的程序能跑下来。(我自己的理解)。








3,一方批ROM为什么不能一次性写入多个字节?这个是可以的,一次最多可以写八个,有些个a师具体情况型号而定,我在想为什么他设置了不能一直延续写下去,是因为他里面的芯片。呃,类似于Excel表格中的横河航。那么当他一行写完的时候,他并不能立刻转移到下一个孩儿。而是要有所停顿,也就是我们写数据的时候不能连续的写。这是我自己的一个想法。因为每个芯片它的行和列数并不一样,所以决定了它能写入的最多。数据的。自己儿不一样。(也是我自己理解)。

视频中可能也讲了我没注意。
自己理解的应该有不妥之处,就当个抛砖引玉的砖吧。。。。参考一下。








回复 支持 反对

使用道具 举报

发表于 2021-3-6 23:09:53 来自手机 | 显示全部楼层
SEA龙 发表于 2021-3-2 15:06
告诉大家一个小技巧这个官方资料里是没有展现的。
写参数的时候加上|运算(或运算)就可以减少代码量,同时 ...

位运算是比较快的,所以有些地方乘除会用左移右移
回复 支持 反对

使用道具 举报

发表于 2021-3-6 23:16:26 来自手机 | 显示全部楼层
SEA龙 发表于 2021-3-5 21:51
我的天,火哥来了,我靠,大家快来看看啊,火哥来看我了,我牛了呀。

咱们的视频讲解那么好,我能不坚持 ...

不知为何我现在习惯性用操作寄存器了!确实程序减洁,就是时间充足。就当了解底层吧
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-7 10:49:34 | 显示全部楼层
2015幻梦 发表于 2021-3-6 23:16
不知为何我现在习惯性用操作寄存器了!确实程序减洁,就是时间充足。就当了解底层吧
...

兄弟你居然用寄存器操控?
了不起啊
没点实力的还真用不了寄存器
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-7 11:36:12 | 显示全部楼层
主讲视频都看完了,看了不止一遍啊看到眼睛痛,觉得自己能力吸收的差不多了,主讲视频里边的内容几乎就算是都吸收了吧。之后我打算拿一个传感器试试。我就挑了一个不算特别难的。因为我担心男没用LCD液晶屏而用的是OLED小屏。单总线的。一种传感器。当我打开他的工程代码之后。前面。初始化及pro。串口us art。系统定时器systematic。觉得还能应付。但是当我再继续往下读的时候,发现里面的代码我根本看不懂了。OLED屏本身有一个技术手册。我就去看了下他的技术手册。视频虽然都看了,都吸收了。但是技术手册我还是看不懂。而且每个传感器的技术手册都非常的长。你看完技术手册。用的时间不比看主讲十边。用的少。关键每个技术手册都很长。哦,led的也很长,但是相比其他的一些传感器算是少的了。还有比OLED更少的技术手册,就比如说跌至t幺幺传感器。但是那个你看一两眼。他也没什么主要内容。几乎不用看也可以操作。OLED就不一样了。OLED的技术手册算是中等。不是非常长,但是也绝不能算短了。关键里面的一些十分重要的信息你还看不懂?看懂了也还不是特别会运用。我今天发的这个帖子是周日。所以我明天打算问一下技术客服。希望他们能给我一点好的建议。明天继续更新帖子。今天心情有点儿忒。觉得自己学了这么多还是啥都不会。
我把技术手册上传,有能力的也看看,你能把这个OLED手册弄得明明白白,我就从心底里佩服你,你是真的入门了。不是主讲视频的入门,而是真的踏进了嵌入式的门。
我太完蛋了。好有挫败感。

回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-8 12:00:41 | 显示全部楼层
屏幕操控我没有学会。技术手册有四个。而且每个都是非常长的,还都是英文。我没能学会old。里面的程序虽然有注释,但是我也看不懂。技术客服。好像也有点。不太懂这个。As tm32. 我自己觉得学的还不错。但是要是用它去操控一些外设。立马就显现出我还是个菜鸟。简单的传感器可以但是像OLED屏幕这种传感器。没有人交。真的。够呛能自己学会。如果大家想操控OLED最好准备好充足的知识,要不然你也不知道。从何下手
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-8 22:14:38 | 显示全部楼层
在一位大神的帮助下,我的OLED取得了飞速进展。还需要优化让这个美观一些。


回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-9 09:54:47 | 显示全部楼层
野火论坛202103090953178355..png 开张图热热身。


今天下午打算把我的OLED最新进展给大家展示一下。我必须要提一下,我那个好伙伴。他给了我很多支持。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-10 10:57:57 | 显示全部楼层
因为只能上传文件,这是我的oled显示温湿度的成果,还有我的好兄弟航仔我俩算是合营吧,接下来是成果演示。我把视频做成了压缩包在附件里。 QQ短视频20210310104445.zip (2.69 MB, 下载次数: 3)


野火论坛202103101052309628..png 上传不了视频,文件压缩包都不行。我拍两个照片吧,只是语音你们听不到了。
唉,oled驱动好难。现在还没学彻底。


野火论坛202103101057528918..png
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-11-23 14:53 , Processed in 0.088299 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表