如何让8个数码管显示出不一样的数值
有两种显示数字管的方法:一个是静态表演,另一个是动态屏幕。以8 个数字管屏幕“ 1 2 3 4 5 6 7 8 ”为例,描述如下:静态屏幕:同时加热8 个数字管,显示的为“ 1 2 3 4 5 6 7 8 ”。
该方法相对“愚蠢”且易于理解,但它占据了更多的资源。
由于数字管具有7 个段,因此电路包含1 个普通端和7 端。
当然,此方法不适合出现多位数数字。
动态屏幕:8 个数字管以序列出现。
在8 位中出现在周期中。
由于人眼中的射击频率很宽,当8 个数字管的循环频率很高时,人眼无法观察到单个数字管的停止,而看到的现象是第一个数字管总是显示出来。
动态屏幕的控制级别比静态显示少得多。
通常,数字管屏幕批准屏幕的动态方法。
我想知道上述是否清楚地解释了? 〜
用C51编程实现8个数码管稳定点亮,实现显示12345678
编程数字管时,您可以用C5 1 语言编写程序,以实现八个数字管和显示器的稳定照明。在这里,我们使用1 2 3 4 5 6 7 8 作为演示的示例。
首先,将两个端口(LED_PORT和LED_CONT_PORT)定义为分别控制数字管的段和位选择。
段选择端口由LED_CONT_PORT控制,而位选择端口由LED_PORT控制。
接下来,记录一个简单的延迟延迟以控制数字管的显示速度。
在主函数主体中,无限循环用于保持程序的连续。
在循环中,首先设置所有位选择端口,然后设置所有细分选择端口以显示数字管。
然后,通过更改片段选择端口的其他值,将打开其他数字管并在数字1 中显示数字1 每次照明后,通过调用延迟功能执行延迟,以使每个数字的显示时间更稳定。
具体来说,该程序首先显示数字1 ,以首先识别第一个数字管,然后将LED_CONT_PORT设置为LED_TABLE [1 ]使用0xFF和LED_PORT。
然后将BIT选择端口重置为0xFe,等待一段时间,将位选择端口重置为0xFF,然后将段选择端口设置为显示数字2 ,即led_table [2 ],然后等待一段时间。
接下来,重复上述步骤,并标记显示数字的数量,例如3 、4 、5 、6 、7 和8 整个过程继续调整片段选择端口的价值,以实现数字管的稳定显示。
以上程序使您可以实现八个数字管的稳定照明并显示1 2 3 4 5 6 7 8 这种编程方法简单易懂,初学者适合学习C5 1 语言和数字管显示技术。
在实际应用中,可以根据需要调整延迟功能延迟的参数,以满足其他显示要求。
51单片机控制8个数码管并显示1-8
数字管段选择信号连接到P0微控制器端口,位选择信号连接到P2 端口。该程序从地址0000H开始,首先调用显示功能,然后拨打NON -Stop Loop等待新的显示。
在显示功能中,启动R0和R1 的列表,将R1 设置为位选择信号的初始值,然后确定表(TAB)以存储数字管段代码。
该程序进入循环,并通过增加R0的值选择不同的数字管段代码。
发送R0以注册A,然后通过A+DPTR指向表中同一位置的段代码,然后将其发送到P0端口到空白,然后将目录A发送到P0端口以显示段代码。
然后调用延迟亚鲁蛋白,并将R1 的值发送到列表A作为轻微的选择信号,并通过RLA指令进行位移。
位选择信号。
再次与亚鲁丁蛋白延迟联系。
检查R0是否已通过CJNE说明完成了8 次。
延迟亚钢铁学主要是通过压碎周期计数器实现的,以确保稳定的数字管显示。
表中的值符合0到9 个数字管的显示。
该程序通过循环和延迟来了解数字管的动态显示,可用于显示1 到8 的数字。
通过调整表中的数据和延迟,可以显示更多的数字和符号,非常适合各种显示器控制应用程序。
8只数码管【同时】显示多个不同字符……是同时!求代码与proteus仿真
1 如果时间是同时的,哈哈,您需要8 个串行更改7 4 HC5 9 5 来扩展和使用处理过程来更改串行端口0或IO。写display(); 其中一个为您提供了一部分,其余的给您一个位置。
只需确保扫描在2 0ms以内。
使用计时器执行3 ms时间,并在每个中断处扫描一个数字管之一的显示代码值。
写display(); 图2 3 在软件中,可以将8 个元素的数组用于显示缓冲区。
每隔几次在上,只需更改数组的即可。
可选的1 有关硬件的更多。
display()有点麻烦。
以下是一般结构。
unsignchardisbuf [8 ] = {1 ,2 ,3 ,4 ,5 ,6 ,7 ,8 }; unsignari; main(){while(1 ){if(timeisok){i = disbuf [0]; for(i = 0; i