durongze 发表于 2024-12-9 18:26:18

8051U 学习帖子。感谢ai逼着我学习,哈哈。| 已送实验箱

<p>一楼有点奇怪,不能写内容呢?</p>
<p>记录一下教程入口。<br />
楼下分别记录每次的学习记录</p>
<p>https://www.stcaimcu.com/forum.php?mod=viewthread&amp;tid=11902</p>

durongze 发表于 2024-12-9 18:31:01


第一集 序言


主要介绍了试验箱的主要功能,
1.可以高效显示图片。
2.可以处理音频,包括录音和播放。
3.可以连接ws2812的屏。
4.也可以做频谱分析,显示声音的频谱。
综合以上的功能可以做一个视频播放器。

durongze 发表于 2024-12-9 18:35:04




第一集





序言部分补充一个图,之前楼上发图失败了,这里补发一下。学习总结见楼上。

durongze 发表于 2024-12-23 21:51:29

<p>第二集 硬件及工具介绍</p>
<p>重点介绍硬件功能:</p>
<p>单板左侧接口部分:</p>
<p>1, 立体声线路输出和立体声耳机输出。</p>
<ol start="2">
<li>示波器bnc输入。</li>
<li>可以插tf卡。</li>
<li>有usb转串口,usb-typec, usb-typea<br />
单板上侧功能:</li>
<li>数码管,tft显示,流水灯。oled显示<br />
单板右侧功能:</li>
<li>红外发送和接收,矩阵键盘和adc键盘。<br />
单板下侧功能:</li>
<li>外部并行总线,SPI接口,电源开关。</li>
</ol>
<p><img src="https://www.stcaimcu.com/data/attachment/forum/202412/23/215028ghoilkiuuemigrkk.png" alt="Untitled.png" title="Untitled.png" /><img src="data/attachment/forum/202412/23/215030xzy3rsy6vqohoh2a.png" alt="Untitled2.png" title="Untitled2.png" /></p>

durongze 发表于 2024-12-24 21:46:37

第三 点亮led
主要是分析了一下如何点灯。
从原理图可以看到灯和p40 和p00有关,把p40和p00同时拉低灯会亮。
在keil里建立工程,重点是两个位置,一个是头文件,一个配置好p40和p00。
生产hex文件后,烧写进去即可。




durongze 发表于 2024-12-27 22:24:57

第4节 usb不停电下载
主要是通过cdc1-uart和cdc2-hid实现。
实现这个功能主要是需要链接一个usb的库文件。
可以重点关注 p_sw2(功能切换控制),可以使能xfr(扩展功能寄存器)。因为usb使用了这些寄存器
IE2(usb中断使能寄存器),EA第七位是总中断开关。

usb的库有中断库和查询库,视频里主要使用了查询库。








durongze 发表于 2024-12-28 08:54:47

第五 c语言基础

1 定义了一个PRINTF_HID 宏
2 #define printfprintf_hid
int printf(const char* fmt, ...);
这样可以把代码中的printf全部替换成 printf_hid;
3. 掌握运算符
4.掌握if等流程控制。






durongze 发表于 2024-12-28 11:55:12

第6 IO的输入输出

主要讲了一下IO的模式:灌电流,拉电流。这里还是有一些迷惑,这里讲了两个,为啥说是4种模式 (禁止,灌电流,拉电流,双向 ?)。

按键的检测:其实这里我一直都不是特别理解。硬件是如何检测,这个是单片机内部实现的逻辑判断?(按键按下后,单片机内部检测到后会对对应的寄存器置位,然后软件就可以用了?)

施密特我理解,主要就是防止抖动的效果,做一个阈值的限制。












durongze 发表于 2024-12-28 13:08:49

第7 ,定时器的使用

1. 定时器的初始化代码是用升级软件生成的,生成后粘贴到我们的工程。主要使能硬件定时器。
2. 中断函数内部加入我们的触发条件,定时器时间到了会调用我们的中断函数。
3. 主逻辑里面就可以使用我们的触发条件了。





durongze 发表于 2024-12-29 08:29:13

第8集 定时器的复用

第一部分:这里和第7节是一样的。
1. 定时器的初始化代码是用升级软件生成的,生成后粘贴到我们的工程。主要使能硬件定时器。
2. 中断函数内部加入我们的触发条件,定时器时间到了会调用我们的中断函数。
3. 主逻辑里面就可以使用我们的触发条件了。
第二部分:
1.主要是修改第一部分的第2个步骤,在中断函数里做多个计数。
2.主逻辑里面可以用对应的计数来处理对应的状态。






页: [1] 2 3
查看完整版本: 8051U 学习帖子。感谢ai逼着我学习,哈哈。| 已送实验箱