第八集:蜂鸣器。
第八集:蜂鸣器,通过按键控制蜂鸣器,模拟电池炉工作指示。 LED等顺序移位:P6 = ~(1 << (mode - 1));
本帖最后由 JimOrange 于 2024-1-29 22:29 编辑
第九集:数码管显示,单个数码管很简单,单独通过P6x引脚控制对应的数码管就可以了,然后多个数字的数码管可以通过Kn端口控制是否点亮。xls表格有一个十进制转16进制口令:DEC2HEX(). 用数组保存数码管0~9数字的组合。
本帖最后由 JimOrange 于 2024-1-29 22:36 编辑
第十集:动态显示4位数码管,通过快速切换K0~K3之间的高低点位,让4个数码管数字交替显示,因为速率很快,人类几乎察觉不了。(注意,整个显示周期不能超过20ms,因为超过会让刷新频率等于50赫兹,肉眼看到就会一闪一闪)
本帖最后由 JimOrange 于 2024-2-10 07:50 编辑
第十一集:定时器,定时器中断。 我们使用T0作为实验,其中TMOD设置中,需要将T0_C/T设为0,用作定时器。定时器如何计数,其实是统计脉冲数。其中需要设置内部时钟统计模式,12分频或者不分频。在特殊功能寄存器中,可以设置T0x12, T1x12, T2x12,作为T0,T1,T2是否分频,默认值为零,就是默认分频。T0定时器模式选择:T0M1,T0M0.定时器T0控制寄存器TCON: TF0(T0溢出中断标志),TR0(T0运行控制位)。 EA总中断开关,ET0(T0中断开关)。TH0, TL0为定时的时间。
Volatile变量
{:4_250:}
本帖最后由 JimOrange 于 2024-2-11 07:33 编辑
第十二集:计数器。 使用T1计数器,TMOD是对TO、T1两个作为设置,其中高四位控制T1,第四位控制T0。其中四位内容:T1_GATE、T1_C/T(0为定时器、1为计数器)、T1_M1、T1_M0。 因为需要计算外部的脉冲也就是电机转动的高低电平,所以将TH1和TL1分别设置为0xff, 两个加起来再加一次就会溢出,利用溢出次数统计。
这种发贴方式怎么这么象在灌水
本帖最后由 JimOrange 于 2024-2-11 09:18 编辑
第十三集:简单多任务处理。 定义自己的文本template。模块化管理