wpppmlah 发表于 2024-12-27 14:33:20

今天真高兴,今天收到了AI8051实验箱,感谢国芯论坛,感谢江苏国芯科技有限公司!
还没有实验箱的同学们,加油吧,既学到了知识,又得到了强大的实验工具,何乐而不为呢!
展示:












实验箱的例程下载链接:https://www.stcaimcu.com/plugin.php?id=mdown:index#/



好好学习,天天向上!

wpppmlah 发表于 2024-12-27 17:06:21

打卡第十课 虚拟LED和数码管我要用今天刚收到的强大的AI8051实验箱来进行实验,高兴哦,既学到了知识,还得到了国芯论坛的硬件支持!同学们一起加油哦!!!你们也可以的!!! 摘要1.虚拟显示——LED2.虚拟显示——数码管3.虚拟键盘
1.虚拟显示——LED硬件准备,软件准备,参数设置,选择指定的接口和协议匹配图1-1
重要的需要理解通讯协议:下位机发送给STCISP软件的显示命令或数据,STCISP软件收到以后按命令和数据来显示,我是这样理解的.在实际应用中,可以直接使用打包协议的函数进行数据的发送!!(不是让我们直接用协议来发送数据的,那会让我这样的小白晕菜的)
1.      虚拟显示——LED先来学习理解通讯协议:共四个控制命令控制函数:void LED40_SendData(BYTE *dat, BYTE size);//控制DIP40的各个管脚上的LED状态void LED40_SetPort(BYTE port, BYTE dat);//控制DIP40的指定管脚上LED的状态void LED40_SetBit(BYTE port, BYTE bt); //控制DIP40的指定管脚输出高电平void LED40_ClrBit(BYTE port, BYTE bt); //控制DIP40的指定管脚输出低电平图10-2
图10-3 使用AI8051U实验箱实现了虚拟LED的显示
2 虚拟显示之数码管   这个也可以哦.int SEG7_ShowString(const char *fmt, ...);//在数码管上显示字符串void SEG7_ShowLong(long n, char radix);//在数码管上显示4字节长整形数void SEG7_ShowFloat(float f); //在数码管上显示IEEE754模式单精度浮点数void SEG7_ShowCode(BYTE *cod); //在数码管上直接显示所给的段码图10-4
图10-5
3虚拟键盘图10-6
图10-7 课后小练
通过以上的学习,让我们可以通过STCISP软件提供的虚拟LED,虚拟数码管,虚拟键盘,来完成我们的代码实验,很方便哦,不用去做实际的硬件电路,从而大大缩短了开发的时间.

wpppmlah 发表于 2024-12-28 10:37:07

打卡第十一课矩阵按键初学者都要学的一个基础知识,再一次由冲哥来讲解,我也重温一下.1.矩阵按键的原理2.矩阵按键的程序实现
1.矩阵按键的原理在按键数量较多时,为了减少I/O口的占用,将按键排列成矩阵排列的形式的按键阵列我们称为矩阵按键。图11-1
单独按键,一个端口接一个按键,,,矩阵按键,端口复用,优点是省端口,缺点是需要复杂的代码来实现!矩阵按键的实现:图11-2
按键识别原理:端口默认为高电平,实时读取到引脚为低电平是表示按下。①第一步:现将P0.0-P0.3输出低电平,P0.6-P0.7输出高电平,如果有按键按下,按下的那一行的IO就会变成低电平,就可以判断出哪一行按下了。②第二步:现将P0.0-P0.3输出高电平,P0.6-P0.7输出低电平,如果有按键按下,按下的那一列的IO就会变成低电平,就可以判断出哪一列按下了。③第三步:行列组合一下就可以判断出是哪个按键按下了。
代码的实现:跟着冲哥,不迷路! 只要认真学习,实现起来很容易的哦.

durongze 发表于 2025-1-11 19:49:40

1楼点亮屏幕的程序是你自己写的吧? 这个应该不是官网的吧?可以分享吗

wpppmlah 发表于 2025-1-12 16:46:53

durongze 发表于 2025-1-11 19:49
1楼点亮屏幕的程序是你自己写的吧? 这个应该不是官网的吧?可以分享吗

是官方教程中的截图哦.

durongze 发表于 2025-1-12 19:47:40

wpppmlah 发表于 2025-1-12 16:46
是官方教程中的截图哦.

好的。我找找。

wpppmlah 发表于 2025-2-15 10:59:55


打卡第十二课 复位系统
由于设备比较复杂,可能会出现某些不确定因素,当出现某种未知的错误的时候,我们可以通过复位操作来确保设备工作在已知的状态,使其能够正确运行。
(当然前提是这个设备的软硬件没有损坏!)

一、确保系统处于确定状态:
复位操作可以确保单片机在开始工作时处于已知的状态,使其能够正确初始化各个寄存器和外设。
二、避免不确定行为:(使用内部看门狗)
没有进行复位时,内部控制寄存器的内容可能是随机的,这可能导致定时器溢出、中断异常、外设误操作等不确定行为。
三、初始化系统:
复位操作可以进行系统的初始化,包括清除寄存器、设置默认值、配置时钟等,为系统正常运行做好准备。
四、保证程序正常开始执行:
复位确保程序从正确的地址开始执行,避免跳转到未知的地址或执行错误的指令。

1. 硬件复位 上电复位,内部集成了复位电路

上电复位使用较长延时,大约延时100多毫秒
低压复位 :由ISP软件进行设置。
复位脚复位:由于STC单片机内部有非常可靠的复位电路,一般把它做为IO引脚使用。



看门狗设置,很简单哦。初始化以后,只要定时复位即可…..
初始化:根据时钟设置看门狗复位时间:WDT_CONTR = 0X24;
喂狗::WDT_CONTR = 0X34;//


2.软件复位



IAP_CONTR = 0x60 ;//复位到USBHID下载模式(支持USB的型号)
IAP_CONTR = 0x20 ;//复位到main 函数开始处执行

wpppmlah 发表于 2025-3-19 14:06:10

外部中断




1.中断系统介绍
2.外部中断介绍
3.外部中断用法



中断优先级的介绍:高优先级可以打断低优先级的中断,高优先级的中断程序执行完毕后,返回被打断的低优先级中断




重点讲一下外部中断;
外部中断就是在单片机的一个引脚上,由于外部因素导致了一个电平的变化(比如由高变低),而通过捕获这个变化,
单片机内部自主运行的程序就会被暂时打断,转而去执行相应的中断处理程序,
执行完后又回到原来中断的地方继续执行原来的程序。



外部中断支持的中断形式,参照手册,有低电平,上升沿,下降沿中断



中断寄存器设置:
例:
IT1: 中断触发形式; IT1=0;上升沿或下降沿触发;IT1=1;只是下降沿触发
IE1:外部中断源1请求位;CPU响应后,由硬件清零;
EX1:允许中断;
EA;总中断







wpppmlah 发表于 2025-3-19 14:28:51

14 课 IO中断(AI8051U)
1.IO中断介绍
2.IO中断用法
3.中断优先级的设置


相比于外部中断,IO中断有以下优点:
1.支持所有的IO口(外部中断只有特定的外部中断的引脚)
2.可以任意配置上升沿/下降沿/高电平/低电平(外部中断只有上升/下降沿中断)
缺点:
IO中断同时只能支持一种中断模式,外部中断0和1可以同时支持上升/下降沿中断(可以用两个IO端口实现双边沿检测!)。


IO中断用法





2.打开端口的中断功能



3.配置IO口的中断





4.中断号处理



中断优先级的设置




实例:













页: 1 [2]
查看完整版本: 【实验箱已收到】感叹AI芯片越来越强悍之学习AI8051U芯片