谁会单片机的呀,帮我编个数码管显示1-8的程序,谢谢
#include用单片机实现数码管从左到右1到8,再从8到1依次回来。 要求第几位显示时,其前面的数字也必须显示。
您的程序太长了,您没有发送吗? 也没有发送主要程序。是模拟还是物理开发板或8 位数字管? 实际上,该程序非常简单,而不是您编写程序。
#include
单片机:::8只数码管同时显示数字1—8 怎么做????。 求大神万分感谢、、
#include52单片机如何让数码管同时显示12345678并一起闪烁?
数字管本身可以是一个动态显示,等于每个数字管的亮度。但是,您可以得到它,因为您可以动态动态地显示动态地显示到动态较远的显示。
在短时间内(如果您的数字管是常见的阳极,则简单的实现可以完成此时钻头选择的值。
这次需要实际的调试。
c51 实验板 编写8个按键控制程序,按下8个键,在数码管上分别显示1-8
编写C5 1 程序以控制数字管以显示8 个键的相应数字时,可以使用多种方法。这里提供了两个简短的代码申请。
第一种方法包括使用主扫描功能根据密钥的值检测数字管的密钥和更新。
第二种方法使用位移过程来通过简化逻辑来确定密钥的值。
第一个方法图标如下:#definecharunsignedchardchar #defineuintunsignedint#definekeywown1 1 //按键单击#defineKeyup0 //单击速度#defineed_datep0 //数据端口数据端口数据端口 bitkey_first = 1 ; 首次按键bitkey_state = keyup; // uchaarkey_value; //密钥codeuchald [] = {0xc0,0xf9 ,0xa4 .0xb0.0x9 9 .0x9 2 .0x8 2 .0x8 2 .0xf8 .0x8 0 x8 0,0x9 0;;;;;; ,key_date; key_date = p1 &0xff; 如果(key_date!= 0xff){if(key_state!= keydown){if(key_first == 1 ){key_buf = key_date; key_first = 0; key_state = keydown;}}}}} {key_first = 1 ; key_state = keyup;}} voidmain(){while(1 ){key_scan(); swit ch(key_value){case0x01 :{led_date = led [1 ];} break; case0x02 :{led_date = led [2 ];} break; CASE0X04 :{LED_DATE = LED [3 ]; [4 ];}断裂; case0x1 0:{led_date = led [5 ];} break; case0x2 0:{led_date = ld [6 ]下一篇:#包含#definecharunsignedchar#defineuintunsignedint#definekeykeywown1 //单击键#defineKeyup0 //单击键 port bitkey_first = 1 ; //键首次按bitkey_state = keyup; // ucharkey_value; 0xb0,0x9 9 ,0x9 2 .0x8 2 .0xf8 .0x8 0.0x9 0,}; 一个(void); vodkey_scan(){uchari,key_buf,key_date; key_date = p1 &0xff; 如果(key_date!= 0xff){if(key_state!= keydown){if(key_first == 1 ){key_buf = key_date; key_first = 0; = led [i+1 ]; key_state = keydown;}}}}}} {key_first = 1 ; key_state = keyup;}} voidmain(){while(1 ){key_scan(); LED_DATE = KEY_VALUE;}}这两种方法有效地实现了使用8 个键控制数字管以从1 到8 的数字显示的功能。
第一个方法使用该词组来确定主值一一,而当时第二种方法使用位移过程简化逻辑,这使程序更有才华。
可以根据实际需求选择和使用这两种方法。