听雨的鱼 发表于 2024-12-11 19:15:44

AI8051U学习打卡

<p>​<br />
<em><strong><img src="data/attachment/forum/202412/11/191536d0omwbx5jzmx8b8y.png" alt="2024-12-11_190941.png" title="2024-12-11_190941.png" /><br />
AI8051学习心得</strong></em><br />
第一集</p>
<p>初识AI8051U的核心优势<br />
AI8051U单片机从传统的STC单片机进化而来,不仅保留了经典的8位指令集兼容性,还新增了32位指令集支持。这种双指令集模式使得它兼容老旧开发板的同时,具备了更强的性能提升空间。此外,它还内置了32K的SRAM和64K的Flash,配合丰富的外设(如PWM、DMA、硬件乘除单元等),是目前性能最强的8051系列单片机之一。</p>
<p>本次教程中通过多个实例详细演示了AI8051U的核心功能,以下是我的主要收获:</p>
<p>高帧率屏幕显示<br />
AI8051U支持8080八位并口的显示屏驱动,能实现快速界面刷新和图形菜单显示。这让我看到了它在嵌入式图形化应用中的巨大潜力。</p>
<p>数字录放音<br />
单片机支持数字音频的录制与播放功能,并且音量调节流畅。通过外接喇叭,我体验了单片机实现的清晰声音回放。这一功能展示了AI8051U在音频处理领域的广阔应用前景。</p>
<p>PWM与DMA结合的点阵显示<br />
利用PWM和DMA实现的WS2812点阵屏控制,充分体现了AI8051U在复杂灯效控制上的高效性和可靠性。这对于灯光工程或者DIY项目来说非常实用。</p>
<p>频谱分析仪与FFT计算<br />
教程中展示的频谱分析功能非常直观,实时FFT计算刷新迅速,证明了AI8051U在信号处理上的优越性能。让我认识到它在音频设备和信号分析中的应用潜力。</p>
<p>手写计算器与人工智能接口<br />
手写数字识别功能展示了AI8051U具备一定的AI扩展能力,这种硬件能力与传统51单片机相比有了质的飞跃。</p>
<p>视频播放功能<br />
使用Flash芯片作为视频存储,AI8051U实现了小型视频的流畅播放。这不仅展示了它在多媒体领域的应用能力,还体现了其存储优化和数据处理的高效性。</p>
<p>芯片功能确实挺强大的,赞一个</p>

听雨的鱼 发表于 2024-12-13 10:29:50

<p>第2集<br />
<img src="data/attachment/forum/202412/13/102827f35idin8ww3kbbw3.png" alt="2024-12-11_192450.png" title="2024-12-11_192450.png" /></p>
<p>1 实验箱硬件部分介绍<br />
2 需要安装的软件<br />
keil<br />
ISP烧录软件下载,和keil中加型号<br />
keil的中断插件下载<br />
实验箱的代码包,使用手册,AI8051芯片手册下载<br />
3 下载第一个程序观察流水灯效果</p>
<p>试验箱功能还是挺多的,有数码管,USB,TF卡,红外,ADC,声音方面的,做嵌入式还是可以的</p>

听雨的鱼 发表于 2024-12-13 11:08:57

<p>第三节课,</p>
<p><img src="data/attachment/forum/202412/13/110528ax4bmmbx4mrzah4h.png" alt="2024-12-12_135108.png" title="2024-12-12_135108.png" /><br />
1.讲的是点亮一颗LED,基本要素为通路,有高低电平差,1为高电平,0为低电平。</p>
<p>2.I/O全名为GPIO即通用输入输出端口的简称,可以通过软件来读取其输入电平或者控制它输出高低电平。</p>
<ol start="3">
<li>讲的是利用软件建立工程,在keil软件下编辑完代码以后,将.hex文件成功创建完毕之后会出现编译完成,自动创建,而这个.hex文件包含了我们书写代码的一个产物,最终就是将这个.hex文件下载到芯片中。</li>
<li>.如果LED不亮的话考虑引脚是否正确。根据需要点亮的LED改变P口配置寄存<br />
貌似学单片机都是从点灯开始,最简单,也最直接的体验软件的魅力,点灯成功,也增加了信心</li>
</ol>

听雨的鱼 发表于 2024-12-13 13:25:12

<p>第4节课USB不停电下载</p>
<p>第四课讲解了51结构,让我们对51有个初步的认识。</p>
<p>后续又讲解了STC是如何在传统结构的基础上进行了自己的扩展。</p>
<p>接着又对CPU结构(运算器、程序状态寄存器、控制器);存储器空间及储存器(程序存储器、数据存储器)进行了更为详细的讲解</p>
<p>学习单片机要对其架构和内部的寄存器要有了解,有个初步的整体认识,才能从感性上有认知。老师讲解的通俗易懂,也讲的挺好的。<br />
<img src="data/attachment/forum/202412/13/132507t539poxtx95tt181.png" alt="2024-12-12_175730.png" title="2024-12-12_175730.png" /></p>

听雨的鱼 发表于 2024-12-13 13:30:22

<p>第5课 C语言基础</p>
<p>我有C基础,所以看起来不吃力。</p>
<p>里面讲解了C语言的基本知识,比如运算符等,要学单片机必须懂C语言,不然没办法和单片机交流啊,</p>
<p>平时编程没C语言基础,跟本玩不了,所以除了了解单片机,C语言还是要学好的。<br />
<img src="data/attachment/forum/202412/13/133018mni3oi4hjjsns4w8.png" alt="2024-12-12_175943.png" title="2024-12-12_175943.png" /></p>

听雨的鱼 发表于 2024-12-13 13:36:23

<p>第6课IO输入输出</p>
<p>什么是IO?</p>
<p>GPIO就是通用输入/输出端口。就是一些引脚,然后可以通过他们输出高低电平,或者通过他们读入引脚的状态-高电平或者低电平。</p>
<p>这算是单片机最最基本的功能了吧,输出高低电平,输入检测,学会了这个就可做最基本的电平控制和输入检测了,也算是对单片机功能有了最基本的应用。以后就可以学习更多更复杂的IO功能了</p>
<p>金典的就是按键检测,这里面需要去抖动,这也是实际工程应用中的经验,实际使用和理想的还是有区别的。<br />
<img src="data/attachment/forum/202412/13/133519naoohgtlko5jzjjo.png" alt="2024-12-12_180213.png" title="2024-12-12_180213.png" /></p>

听雨的鱼 发表于 2024-12-13 13:43:40

<p>第7课-IO定时器中断</p>
<p>IO和定时器中断结合起来了。</p>
<p>刚开始的妈妈煮饭的情景太贴切了。</p>
<p>要用定时器中断就得配置相关的参数,比如定时时间,这和我们手机的秒表有点像啊,就是为了定一个时间。</p>
<p>要掌握定时器的频率、定时时间的计算,得看懂定时器的硬件通道图,才能更好的应用。</p>
<p>关于函数的定义、声明、调用,写软件避免不了用函数,程序是由各种各样的函数组成的,函数有带参数和不带参数,如何正确巧妙的应用函数,对程序的好坏有很重要的影响。<br />
<img src="data/attachment/forum/202412/13/134324be0lz04lrzf00z9r.jpg" alt="224156nko0rnz18pkzdksk.jpg" title="224156nko0rnz18pkzdksk.jpg" /></p>
<p><img src="data/attachment/forum/202412/13/134333w5442vt6v6b2ivq6.png" alt="2024-12-13_101515.png" title="2024-12-13_101515.png" /></p>

听雨的鱼 发表于 2024-12-13 13:57:06

<h2>第8课    定时器周期性任务调度</h2>
<p>任务调度,看起来有点高大上了,前面的函数是一个一个实现的功能,函数是需要调度才能运行,所以任务调度必须学会。</p>
<p><strong>有以下几个部分:</strong></p>
<ol>
<li><strong>周期性任务介绍</strong></li>
<li><strong>文件的创建(.c和.h)</strong></li>
<li><strong>结构体的介绍</strong></li>
<li><strong>结构体数组的周期性任务调度</strong><br />
<strong>一、看第一点(周期性任务介绍):</strong><br />
<em>周期性任务介绍</em>:所谓的周期性任务就是<em>每隔一定的时间就去执行一个任务,比如每隔100ms点亮一次LED</em></li>
</ol>
<p><strong>对应这里的任务一:很简单明了,只需要</strong></p>
<ul>
<li><em>通过设置变量来计数,每进一次1ms的定时器设置中断,这个变量就自加一次,再判断满足临界条件就可以执行任务了</em></li>
<li></li>
<li><em><em>数组的定义和使用</em><br />
要存放很多类型一样的数据,一种方法是定义很多个变量,一种方法是定义数组,用数组肯定是会更好的,更方便</em></li>
<li><strong>有个坑要注意:数组是从0开始索引的,新手容易犯错</strong></li>
<li></li>
<li></li>
<li>
<ul>
<li><strong>二、接着看第二点:文件的创建(.c和.h)</strong></li>
</ul>
</li>
<li><strong>模块化编程,方便移植!一般项目实现的功能复杂的话,要模块化,不然自己写的晕,以后要别人维护更晕,</strong></li>
<li>这块还是比较考验功力的,值得好好研究</li>
<li>****结构体,当编程经验多了,就会发现结构体的妙处,要使程序可读性强,结构体不可少,他的用法也非常多,新手还是从最基本的学起吧</li>
<li>单片机学好还是不容易的,好在现在有很多开发板可以学,如果靠自己打板在学的话太难额,还得感谢主办方提供这么好的学习机会,还赠送开发版,点赞<br />
<img src="data/attachment/forum/202412/13/135702bp1p4z0qbfjgqz4q.png" alt="2024-12-13_101559.png" title="2024-12-13_101559.png" /></li>
<li></li>
</ul>

8H8K64U 发表于 2024-12-13 16:27:58

<p>今日安排试验箱,望贴主再接再励,学有所成</p>

听雨的鱼 发表于 2024-12-17 10:35:36

<p><img src="data/attachment/forum/202412/17/101550mzr2aoqr211ws1us.jpg" alt="开发板箱1.jpg" title="开发板箱1.jpg" /></p>
<p><img src="data/attachment/forum/202412/17/101556u8bpixbrf28oyy8x.jpg" alt="开发板箱2.jpg" title="开发板箱2.jpg" /></p>
<p>开发箱收到了,看外观挺漂亮的,透明的盒子,希望有更多更好的开发板可以开发出来</p>
页: [1]
查看完整版本: AI8051U学习打卡